JSAgents to implement large portions of CSP with the
intent to fine grain CSP so that every element in the
DOM relies on a JSAgent instead of having the full
document rely on one CSP. Similar to our intention,
both of these approaches aim to secure legacy web
applications.
The framework “Confinement with Origin Web
Labels” (COWL (Stefan et al., 2014)) uses CSP as the
foundation and provides a labeling mechanism on top
of CSP and other security features within a browser.
Distributed Analysis: In 2011,
Greathouse et al. (Greathouse and Austin, 2011)
show that a large population, in aggregate, can ana-
lyze larger portions of a program than any single user
individually running the full analysis of a program.
In 2013, Kerschbaumer et al. (Kerschbaumer
et al., 2013) present a crowd sourced based approach
where individuals report security violations to a third
party system which allows to identify malicious web
pages and feed the results to URL blacklisting ser-
vices such as Microsoft’s smartscreen filter (Mi-
crosoft, 2012) or Google’s safebrowsing (Provos,
2012) initiative.
Third-party Security Systems: In 2011, Thomas
et al. present a system called Monarch (Thomas
et al., 2011) and Canali et al. present a system called
Prophiler (Canali et al., 2011). Both approaches aim
to detect malware on the Web relying on machine
learning techniques. Even though our system does not
try to classify malicious webpages, it fits well within
this theme of letting trusted third party systems pro-
vide security features for the web.
8 CONCLUSION AND OUTLOOK
Today, web sites and their users do not benefit fully
from XSS protection offered by CSP. Even though
most major browsers acknowledge the CSP header,
only 20 out of the Alexa top 1,000 sites deploy CSP,
and only two pages effectively use CSP to protect
their users against code injection attacks and XSS. It
is clear from our findings that industry requires better
framework support for easy and efficient deployment
of CSP with a web page.
Our proposed system allows deployment of CSP
for web sites without requiring web site authors
to manually update and maintain their CSP header
whenever they perform any kind of update on their
page.
We discussed the limitations of our approach to
account for pages that not only ship functionality but
also data within their inline scripts. Our preliminary
results show that our approach is feasible to deploy a
CSP header for up to half of web sites on the Internet
and thus help protect them from XSS attacks.
ACKNOWLEDGEMENTS
Thanks to the everyone in the Security Engineering
Team of Mozilla for their feedback and insightful
comments.
REFERENCES
Balzarotti, D., Cova, M., Felmetsger, V., Jovanovic, N.,
Kirda, E., Kruegel, C., and Vigna, G. (2008). Saner:
Composing static and dynamic analysis to validate
sanitization in web applications. In Proceedings of
IEEE Symposium on Security and Privacy, pages 387–
401. IEEE.
Bisht, P. and Venkatakrishnan, V. (2008). Xss-guard: pre-
cise dynamic prevention of cross-site scripting at-
tacks. In Detection of Intrusions and Malware, and
Vulnerability Assessment, pages 23–43. Springer.
Canali, D., Cova, M., Vigna, G., and Kruegel, C. (2011).
Prophiler: a fast filter for the large-scale detection of
malicious web pages. In Proceedings of the interna-
tional conference on World wide web, pages 197–206.
ACM.
Doupé, A., Cui, W., Jakubowski, M. H., Peinado, M.,
Kruegel, C., and Vigna, G. (2013). dedacota: toward
preventing server-side xss via automatic code and data
separation. In CCS, pages 1205–1216. ACM.
Erlingsson, Ú., Pihur, V., and Korolova, A. (2014). RAP-
POR: Randomized aggregatable privacy-preserving
ordinal response. In Proceedings of the ACM Con-
ference on Computer and Communications Security,
pages 1054–1067. ACM.
Greathouse, J. L. and Austin, T. (2011). The potential
of sampling for dynamic analysis. In Proceedings
of the ACM SIGPLAN Workshop on Programming
Languages and Analysis for Security, pages 3:1–3:6.
ACM.
Grigorik, I. (2013). High Performance Browser Network-
ing. O’Reilly.
Hope, P. and Walther, B. (2008). Web Security Testing
Cookbook. O’Reilly.
Jovanovic, N., Kruegel, C., and Kirda, E. (2006). Pixy: A
static analysis tool for detecting web application vul-
nerabilities. In Proceedings of IEEE Symposium on
Security and Privacy, pages 6–pp. IEEE.
Kerschbaumer, C., Hennigan, E., Larsen, P., Brunthaler, S.,
and Franz, M. (2013). CrowdFlow: Efficient informa-
tion flow security. ISC, Springer.
Microsoft (2012). Microsoft secu-
rity intelligence report, volume 13.
ICISSP 2016 - 2nd International Conference on Information Systems Security and Privacy
24