Show simple item record

dc.contributor.authorYip, Alexander
dc.contributor.authorWang, Xi
dc.contributor.authorZeldovich, Nickolai
dc.contributor.authorKaashoek, M. Frans
dc.date.accessioned2011-11-14T19:19:13Z
dc.date.available2011-11-14T19:19:13Z
dc.date.issued2009-10
dc.identifier.isbn978-1-60558-752-3
dc.identifier.urihttp://hdl.handle.net/1721.1/67015
dc.description.abstractResin is a new language runtime that helps prevent security vulnerabilities, by allowing programmers to specify application-level data flow assertions. Resin provides policy objects, which programmers use to specify assertion code and metadata; data tracking, which allows programmers to associate assertions with application data, and to keep track of assertions as the data flow through the application; and filter objects, which programmers use to define data flow boundaries at which assertions are checked. Resin's runtime checks data flow assertions by propagating policy objects along with data, as that data moves through the application, and then invoking filter objects when data crosses a data flow boundary, such as when writing data to the network or a file. Using Resin, Web application programmers can prevent a range of problems, from SQL injection and cross-site scripting, to inadvertent password disclosure and missing access control checks. Adding a Resin assertion to an application requires few changes to the existing application code, and an assertion can reuse existing code and data structures. For instance, 23 lines of code detect and prevent three previously-unknown missing access control vulnerabilities in phpBB, a popular Web forum application. Other assertions comprising tens of lines of code prevent a range of vulnerabilities in Python and PHP applications. A prototype of Resin incurs a 33% CPU overhead running the HotCRP conference management application.en_US
dc.description.sponsorshipNokia Researchen_US
dc.language.isoen_US
dc.publisherAssociation for Computing Machineryen_US
dc.relation.isversionofhttp://dx.doi.org/10.1145/1629575.1629604en_US
dc.rightsCreative Commons Attribution-Noncommercial-Share Alike 3.0en_US
dc.rights.urihttp://creativecommons.org/licenses/by-nc-sa/3.0/en_US
dc.sourceMIT web domainen_US
dc.titleImproving application security with data flow assertionsen_US
dc.typeArticleen_US
dc.identifier.citationYip, Alexander et al. “Improving Application Security with Data Flow Assertions.” Proceedings of the ACM SIGOPS 22nd Symposium on Operating Systems Principles - SOSP ’09. Big Sky, Montana, USA, 2009. (c) 2009 ACMen_US
dc.contributor.departmentMassachusetts Institute of Technology. Computer Science and Artificial Intelligence Laboratoryen_US
dc.contributor.departmentMassachusetts Institute of Technology. Department of Electrical Engineering and Computer Scienceen_US
dc.contributor.approverZeldovich, Nickolai
dc.contributor.mitauthorYip, Alexander
dc.contributor.mitauthorWang, Xi
dc.contributor.mitauthorZeldovich, Nickolai
dc.contributor.mitauthorKaashoek, M. Frans
dc.relation.journalProceedings of the ACM SIGOPS 22nd symposium on Operating systems principlesen_US
dc.eprint.versionAuthor's final manuscripten_US
dc.type.urihttp://purl.org/eprint/type/ConferencePaperen_US
dspace.orderedauthorsYip, Alexander; Wang, Xi; Zeldovich, Nickolai; Kaashoek, M. Fransen
dc.identifier.orcidhttps://orcid.org/0000-0003-0238-2703
dc.identifier.orcidhttps://orcid.org/0000-0001-7098-586X
mit.licenseOPEN_ACCESS_POLICYen_US
mit.metadata.statusComplete


Files in this item

Thumbnail

This item appears in the following Collection(s)

Show simple item record