Robusta: Taming the native beast of the JVM

Joseph Siefers, Gang Tan, Greg Morrisett

Research output: Chapter in Book/Report/Conference proceedingConference contribution

39 Scopus citations

Abstract

Java applications often need to incorporate native-code components for efficiency and for reusing legacy code. However, it is well known that the use of native code defeats Java's security model. We describe the design and implementation of Robusta, a complete framework that provides safety and security to native code in Java applications. Starting from software-based fault isolation (SFI), Robusta isolates native code into a sandbox where dynamic linking/loading of libraries is supported and unsafe system modification and confidentiality violations are prevented. It also mediates native system calls according to a security policy by connecting to Java's security manager. Our prototype implementation of Robusta is based on Native Client and OpenJDK. Experiments in this prototype demonstrate Robusta is effective and efficient, with modest runtime overhead on a set of JNI benchmark programs. Robusta can be used to sandbox native libraries used in Java's system classes to prevent attackers from exploiting bugs in the libraries. It can also enable trustworthy execution of mobile Java programs with native libraries. The design of Robusta should also be applicable when other type-safe languages (e.g., C#, Python) want to ensure safe interoperation with native libraries.

Original languageEnglish (US)
Title of host publicationCCS'10 - Proceedings of the 17th ACM Conference on Computer and Communications Security
Pages201-211
Number of pages11
DOIs
StatePublished - Dec 16 2010
Event17th ACM Conference on Computer and Communications Security, CCS'10 - Chicago, IL, United States
Duration: Oct 4 2010Oct 8 2010

Publication series

NameProceedings of the ACM Conference on Computer and Communications Security
ISSN (Print)1543-7221

Other

Other17th ACM Conference on Computer and Communications Security, CCS'10
CountryUnited States
CityChicago, IL
Period10/4/1010/8/10

    Fingerprint

All Science Journal Classification (ASJC) codes

  • Software
  • Computer Networks and Communications

Cite this

Siefers, J., Tan, G., & Morrisett, G. (2010). Robusta: Taming the native beast of the JVM. In CCS'10 - Proceedings of the 17th ACM Conference on Computer and Communications Security (pp. 201-211). (Proceedings of the ACM Conference on Computer and Communications Security). https://doi.org/10.1145/1866307.1866331