An invited paper for LangSec SPW 2016.
The paper
is available, as are some
hastily-constructed slides
for the
presentation. The presentation itself was recorded and is available at
https://www.youtube.com/watch?v=FzMTrrzrN8Q; if the need arises, I have a
mirrored copy I can make available.
Abstract:
Security and privacy of computation, and the related concept of (deliberate) sharing, have, historically, largely been afterthoughts. In a traditional multi-user, multi-application web hosting environment, typically applications are public by default. Applications wishing to offer a notion of private resources must take it upon themselves to independently manage authentication and authorization of users, leading to difficult and disjointed notions of access and sharing. In such a context, LangSec-based vulnerabilities threaten catastrophic loss of privacy for all users of the system, likely even of non-vulnerable applications. This is a tragic state of affairs, but is thankfully not inevitable! We present the Sandstorm system, a capability-based, private-by-default, tightly-sandboxing, proactively secure environment for running web applications, complete with a single, pervasive sharing mechanism. Sandstorm, and capability systems, are likely of interest to the LangSec community: LangSec bugs are mitigated through the robust isolation imposed by the Sandstorm supervisor, and the mechanism of capability systems offers the potential to turn difficult authorization decisions into LangSec’s bread and butter, namely syntactic constraints on requests: every well-formed request which can be stated is authorized. We present aspects of the Sandstorm system and show how those aspects have, by building systematic protection into several levels of the system, dramatically reduced the severity of LangSec bugs in hosted applications. To study the range of impact, we will characterize addressed vulnerabilities using MITRE’s Common Weakness Enumeration (CWE) scheme.
BibTeX:
@InProceedings{filardo:sandstorm,
author = {Filardo, Nathaniel Wesley},
title = {Research Report: Mitigating LangSec Problems With Capabilities},
booktitle={Security and Privacy Workshops (SPW), 2016 IEEE},
url = {http://spw16.langsec.org/abstracts.html\#capabilities},
year = {2016}
}