Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/3460120.3484780acmconferencesArticle/Chapter ViewAbstractPublication PagesccsConference Proceedingsconference-collections
research-article

12 Angry Developers - A Qualitative Study on Developers' Struggles with CSP

Published: 13 November 2021 Publication History

Abstract

The Web has improved our ways of communicating, collaborating, teaching, and entertaining us and our fellow human beings. However, this cornerstone of our modern society is also one of the main targets of attacks, most prominently Cross-Site Scripting (XSS). A correctly crafted Content Security Policy (CSP) is capable of effectively mitigating the effect of those Cross-Site Scripting attacks. However, research has shown that the vast majority of all policies in the wild are trivially bypassable.
To uncover the root causes behind the omnipresent misconfiguration of CSP, we conducted a qualitative study involving 12 real-world Web developers. By combining a semi-structured interview, a drawing task, and a programming task, we were able to identify the participant's misconceptions regarding the attacker model covered by CSP as well as roadblocks for secure deployment or strategies used to create a CSP.

References

[1]
Vishal Arghode. Qualitative and quantitative research: Paradigmatic differences. Global Education Journal, 2012 (4), 2012.
[2]
A. Barth. RFC 6454: The Web Origin Concept. Online at https://www.ietf.org/rfc/rfc6454.txt, 2011.
[3]
A Blandford, D Furniss, and S Makri. Introduction: Behind the scenes. 2016.
[4]
]chromium-mixed-contentChromium Blog. Protecting users from insecure downloads in google chrome. https://blog.chromium.org/2020/02/protecting-users-from-insecure.html, a .
[5]
]firefox-https-onlyMozilla Security Blog. Firefox 83 introduces https-only mode. https://blog.mozilla.org/security/2020/11/17/firefox-83-introduces-https-only-mode/, b .
[6]
Virginia Braun and Victoria Clarke. Using thematic analysis in psychology. Qualitative research in psychology, 3 (2): 77--101, 2006.
[7]
Stefano Calzavara, Alvise Rabitti, and Michele Bugliesi. Content security problems?: Evaluating the effectiveness of content security policy in the wild. In CCS, 2016.
[8]
Stefano Calzavara, Sebastian Roth, Alvise Rabitti, Michael Backes, and Ben Stock. A tale of two headers: a formal analysis of inconsistent click-jacking protection on the web. In 29th $$USENIX$$ Security Symposium ($$USENIX$$ Security 20), pages 683--697, 2020.
[9]
Stefano Calzavara, Tobias Urban, Dennis Tatang, Marius Steffens, and Ben Stock. Reining in the web's inconsistencies with site policy. In NDSS, 2021.
[10]
John L Campbell, Charles Quincy, Jordan Osserman, and Ove K Pedersen. Coding in-depth semistructured interviews: Problems of unitization and intercoder reliability and agreement. Sociological Methods & Research, 42 (3): 294--320, 2013.
[11]
]csp-com-hashescontent-security policy.com. Csp: Hashing. https://content-security-policy.com/hash/, a .
[12]
]csp-com-noncescontent-security policy.com. Csp: Nonces. https://content-security-policy.com/nonce/, b .
[13]
MITRE Common Weakness Enumeration (CWE). Cve search for security vulnerabilities (cross site scripting (xss)). https://www.cvedetails.com/vulnerability-list.php?vendor_id=0&product_id=0&version_id=0&page=15&hasexp=0&opdos=0&opec=0&opov=0&opcsrf=0&opgpriv=0&opsqli=0&opxss=1&opdirt=0&opmemc=0&ophttprs=0&opbyp=0&opfileinc=0&opginf=0&cvssscoremin=0&cvssscoremax=0&year=0&month=0&cweid=0&order=1&trc=19379&sha=e3bb5586965f5a13bfaa78233a10ebc3f9606d12.
[14]
diagrams.net. Diagrams. https://www.diagrams.net/.
[15]
t al.(2013)Doupé, Cui, Jakubowski, Peinado, Kruegel, and Vigna]doupe2013dedacotaAdam Doupé, Weidong Cui, Mariusz H Jakubowski, Marcus Peinado, Christopher Kruegel, and Giovanni Vigna. dedacota: toward preventing server-side xss via automatic code and data separation. In Proceedings of the 2013 ACM SIGSAC conference on Computer & communications security, pages 1205--1216, 2013.
[16]
TeamViewer Germany GmbH. Teamviewer. https://www.teamviewer.com/.
[17]
Google. Withgoogle: Content security policy. https://csp.withgoogle.com/docs/strict-csp.html.
[18]
er]gorski2018warnPeter Leo Gorski, Luigi Lo Iacono, Stephan Wiefling, and Sebastian Möller. Warn if secure or how to deal with security by default in software development?. In HAISA, pages 170--190, 2018.
[19]
Daniel Hausknecht, Jonas Magazinius, and Andrei Sabelfeld. May i?-content security policy endorsement for browser extensions. In International Conference on Detection of Intrusions and Malware, and Vulnerability Assessment, pages 261--281. Springer, 2015.
[20]
Ben Hayak. Same Origin Method Execution (SOME). Online at http://www.benhayak.com/2015/06/same-origin-method-execution-some.html, 2015.
[21]
Mario Heiderich, Marcus Niemietz, Felix Schuster, Thorsten Holz, and Jörg Schwenk. Scriptless attacks: stealing the pie without touching the sill. In Proceedings of the 2012 ACM conference on Computer and communications security. ACM, 2012.
[22]
Mario Heiderich, Jörg Schwenk, Tilman Frosch, Jonas Magazinius, and Edward Z Yang. mxss attacks: Attacking well-secured web-applications by using innerhtml mutations. In ACM SIGSAC conference on Computer & communications security. ACM, 2013.
[23]
pkun]ion2011homeIulia Ion, Niharika Sachdeva, Ponnurangam Kumaraguru, and Srdjan vC apkun. Home is safer than the cloud! privacy concerns for consumer cloud storage. In Proceedings of the Seventh Symposium on Usable Privacy and Security, pages 1--20, 2011.
[24]
Internet Security Research Group (ISRG). Let's encrypt. https://letsencrypt.org/.
[25]
Markus Jakobsson, Zulfikar Ramzan, and Sid Stamm. Javascript breaks free. http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.85.3195&rep=rep1&type=pdf .
[26]
Burke Johnson and Larry Christensen. Educational research: Quantitative, qualitative, and mixed approaches. Sage, 2008.
[27]
Ruogu Kang, Laura Dabbish, Nathaniel Fruchter, and Sara Kiesler. ?my data just goes everywhere:" user mental models of the internet and implications for privacy and security. In Eleventh Symposium On Usable Privacy and Security ($$SOUPS$$ 2015), pages 39--52, 2015.
[28]
Amit Klein. Dom based cross site scripting or xss of the third kind. http://www.webappsec.org/projects/articles/071105.shtml, 2005.
[29]
Klaus Krippendorff. Content analysis: An introduction to its methodology. Sage, London, 2004.
[30]
Katharina Krombholz, Karoline Busse, Katharina Pfeffer, Matthew Smith, and Emanuel von Zezschwitz. "If HTTPS Were Secure, I Wouldn't Need 2FA"-End User and Administrator Mental Models of HTTPS. IEEE Security & Privacy, 2019.
[31]
Thomas D LaToza, Gina Venolia, and Robert DeLine. Maintaining mental models: a study of developer work habits. In Proceedings of the 28th international conference on Software engineering, pages 492--501, 2006.
[32]
Jonathan Lazar, Jinjuan Heidi Feng, and Harry Hochheiser. Research methods in human-computer interaction. Morgan Kaufmann, 2017.
[33]
Sebastian Lekies, Ben Stock, and Martin Johns. 25 million flows later: Large-scale detection of dom-based xss. In CCS, 2013.
[34]
Vela Nava, and Johns]lekies2017codeSebastian Lekies, Krzysztof Kotowicz, Samuel Groß, Eduardo A Vela Nava, and Martin Johns. Code-reuse attacks for the web: Breaking cross-site scripting mitigations via script gadgets. In ACM SIGSAC Conference on Computer and Communications Security (CCS). ACM, 2017.
[35]
Calendly LLC. Calendly. https://calendly.com/.
[36]
Alena Naiakshina, Anastasia Danilova, Christian Tiefenau, and Matthew Smith. Deception task design in developer password studies: Exploring a student sample. In Fourteenth Symposium on Usable Privacy and Security ($$SOUPS$$ 2018), pages 297--313, 2018.
[37]
Alena Naiakshina, Anastasia Danilova, Eva Gerlitz, and Matthew Smith. On conducting security developer studies with cs students: Examining a password-storage study with cs students, freelancers, and company developers. In Proceedings of the 2020 CHI Conference on Human Factors in Computing Systems, pages 1--13, 2020.
[38]
Mozilla Development Network. Csp: frame-ancestors. https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Security-Policy/frame-ancestors.
[39]
Open Web Application Security Project (OWASP). Owasp top 10 web application security risks 2017. https://owasp.org/www-project-top-ten/2017/A7_2017-Cross-Site_Scripting_(XSS).
[40]
Xiang Pan, Yinzhi Cao, Shuangping Liu, Yu Zhou, Yan Chen, and Tingzhe Zhou. Cspautogen: Black-box enforcement of content security policy upon real-world websites. In Proceedings of the 2016 ACM SIGSAC Conference on Computer and Communications Security, pages 653--665, 2016.
[41]
Phil Ringnalda. Getting around IE's MIME type mangling. http://weblog.philringnalda.com/2004/04/06/getting-around-ies-mime-type-mangling.
[42]
David Ross. Happy 10th birthday cross-site scripting. Online at https://blogs.msdn.microsoft.com/dross/2009/12/15/happy-10th-birthday-cross-site-scripting/, 2009.
[43]
Roth, Backes, and Stock]roth2020assessingSebastian Roth, Michael Backes, and Ben Stock. Assessing the impact of script gadgets on csp at scale. 2020 a .
[44]
Roth, Barron, Calzavara, Nikiforakis, and Stock]roth2020cspSebastian Roth, Timothy Barron, Stefano Calzavara, Nick Nikiforakis, and Ben Stock. Complex security policy? a longitudinal analysis of deployed content security policies. In NDSS, 2020 b .
[45]
Prateek Saxena, Steve Hanna, Pongsin Poosankam, and Dawn Song. Flax: Systematic discovery of client-side validation vulnerabilities in rich web applications. In NDSS, 2010.
[46]
Dolière Francis Some, Nataliia Bielova, and Tamara Rezk. On the content security policy violations due to the same-origin policy. In Proceedings of the 26th International Conference on World Wide Web, pages 877--886, 2017.
[47]
Sid Stamm, Brandon Sterne, and Gervase Markham. Reining in the web with content security policy. In International Conference on World Wide Web (WWW), 2010.
[48]
Marius Steffens, Christian Rossow, Martin Johns, and Ben Stock. Don't trust the locals: Investigating the prevalence of persistent client-side cross-site scripting in the wild. 2019.
[49]
Marius Steffens, Marius Musch, Martin Johns, and Ben Stock. Who's hosting the block party? studying third-party blockage of csp and sri. In Network and Distributed Systems Security (NDSS) Symposium 2021, 2021.
[50]
Ben Stock, Stephan Pfistner, Bernd Kaiser, Sebastian Lekies, and Martin Johns. From facepalm to brain bender: Exploring client-side cross-site scripting. In Proceedings of the 22nd ACM SIGSAC conference on computer and communications security, pages 1419--1430, 2015.
[51]
Anselm Strauss and Juliet M Corbin. Grounded theory in practice. Sage, London, 1997.
[52]
Michael Sutton. The dangers of persistent web browser storage, 2009.
[53]
European Union. EU Commission Recommendation (2003/361/EC). Online at https://eur-lex.europa.eu/legal-content/EN/TXT/PDF/?uri=CELEX:32003H0361, 2003.
[54]
W3C. CSP 1.0. Online at https://www.w3.org/TR/CSP1/, 2015.
[55]
]csp2W3C. CSP Level 2. Online at https://www.w3.org/TR/CSP2/, 2016 a .
[56]
]csp3W3C. CSP Level 3. Online at https://www.w3.org/TR/CSP3/, 2016 b .
[57]
GitHub W3C webappsec csp. Issue 7: Csp: connect-src 'self' and websockets. https://github.com/w3c/webappsec-csp/issues/7.
[58]
Lukas Weichselbaum, Michele Spagnuolo, Sebastian Lekies, and Artur Janc. CSP is dead, long live CSP! On the insecurity of whitelists and the future of content security policy. In CCS, 2016.
[59]
Michael Weissbacher, Tobias Lauinger, and William Robertson. Why is CSP failing? Trends and challenges in CSP adoption. In RAID, 2014.

Cited By

View all
  • (2024)Towards Security-Focused Developer PersonasProceedings of the 13th Nordic Conference on Human-Computer Interaction10.1145/3679318.3685406(1-18)Online publication date: 13-Oct-2024
  • (2023)A Tale of Two Communities: Privacy of Third Party App Users in Crowdsourcing - The Case of Receipt TranscriptionProceedings of the ACM on Human-Computer Interaction10.1145/36100447:CSCW2(1-43)Online publication date: 4-Oct-2023
  • (2023)Pareto-optimal Defenses for the Web Infrastructure: Theory and PracticeACM Transactions on Privacy and Security10.1145/356759526:2(1-36)Online publication date: 13-Mar-2023
  • Show More Cited By

Index Terms

  1. 12 Angry Developers - A Qualitative Study on Developers' Struggles with CSP

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image ACM Conferences
    CCS '21: Proceedings of the 2021 ACM SIGSAC Conference on Computer and Communications Security
    November 2021
    3558 pages
    ISBN:9781450384544
    DOI:10.1145/3460120
    Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

    Sponsors

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 13 November 2021

    Permissions

    Request permissions for this article.

    Check for updates

    Author Tags

    1. content security policy
    2. roadblocks
    3. usable security
    4. web security

    Qualifiers

    • Research-article

    Conference

    CCS '21
    Sponsor:
    CCS '21: 2021 ACM SIGSAC Conference on Computer and Communications Security
    November 15 - 19, 2021
    Virtual Event, Republic of Korea

    Acceptance Rates

    Overall Acceptance Rate 1,261 of 6,999 submissions, 18%

    Upcoming Conference

    CCS '25

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)103
    • Downloads (Last 6 weeks)16
    Reflects downloads up to 01 Jan 2025

    Other Metrics

    Citations

    Cited By

    View all
    • (2024)Towards Security-Focused Developer PersonasProceedings of the 13th Nordic Conference on Human-Computer Interaction10.1145/3679318.3685406(1-18)Online publication date: 13-Oct-2024
    • (2023)A Tale of Two Communities: Privacy of Third Party App Users in Crowdsourcing - The Case of Receipt TranscriptionProceedings of the ACM on Human-Computer Interaction10.1145/36100447:CSCW2(1-43)Online publication date: 4-Oct-2023
    • (2023)Pareto-optimal Defenses for the Web Infrastructure: Theory and PracticeACM Transactions on Privacy and Security10.1145/356759526:2(1-36)Online publication date: 13-Mar-2023
    • (2023)Different Researchers, Different Results? Analyzing the Influence of Researcher Experience and Data Type During Qualitative Analysis of an Interview and Survey Study on Security AdviceProceedings of the 2023 CHI Conference on Human Factors in Computing Systems10.1145/3544548.3580766(1-21)Online publication date: 19-Apr-2023
    • (2023)It’s like flossing your teeth: On the Importance and Challenges of Reproducible Builds for Software Supply Chain Security2023 IEEE Symposium on Security and Privacy (SP)10.1109/SP46215.2023.10179320(1527-1544)Online publication date: May-2023
    • (2023)Coverage and Secure Use Analysis of Content Security Policies via Clustering2023 IEEE 8th European Symposium on Security and Privacy (EuroS&P)10.1109/EuroSP57164.2023.00032(411-428)Online publication date: Jul-2023
    • (2023)The Nonce-nce of Web Security: An Investigation of CSP Nonces ReuseComputer Security. ESORICS 2023 International Workshops10.1007/978-3-031-54129-2_27(459-475)Online publication date: 25-Sep-2023
    • (2022)HTML violations and where to find themProceedings of the 22nd ACM Internet Measurement Conference10.1145/3517745.3561437(358-373)Online publication date: 25-Oct-2022
    • (2022)Measuring Developers’ Web Security Awareness from Attack and Defense Perspectives2022 IEEE Security and Privacy Workshops (SPW)10.1109/SPW54247.2022.9833858(31-43)Online publication date: May-2022
    • (2022)A quarter century of usable security and privacy research: transparency, tailorability, and the road aheadBehaviour & Information Technology10.1080/0144929X.2022.208090841:10(2035-2048)Online publication date: 2-Jun-2022

    View Options

    Login options

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Media

    Figures

    Other

    Tables

    Share

    Share

    Share this Publication link

    Share on social media