Affiliation:
1. Rice Univ., Houston TX
2. Princeton Univ., Princeton, NJ
Abstract
In order to run untrusted code in the same process as trusted code, there must be a mechanism to allow dangerous calls to determine if their caller is authorized to exercise the privilege of using the dangerous routine. Java systems have adopted a technique called stack inspection to address this concern. But its original definition, in terms of searching stack frames, had an unclear relationship to the actual achievement of security, overconstrained the implementation of a Java system, limited many desirable optimizations such as method inlining and tail recursion, and generally interfered with interprocedural optimization. We present a new semantics for stack inspection based on a belief logic and its implementation using the calculus of
security-passing style
which addresses the concerns of traditional stack inspection. With security-passing style, we can efficiently represent the security context for any method activation, and we can build a new implementation strictly by rewriting the Java bytecodes before they are loaded by the system. No changes to the JVM or bytecode semantics are necessary. With a combination of static analysis and runtime optimizations, our prototype implementation showes reasonable performance (although traditional stack inspection is still faster), and is easier to consider for languages beyond Java. We call our system SAFKASI (the Security Architecture Formerly Known as Stack Inspection).
Publisher
Association for Computing Machinery (ACM)
Cited by
75 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. With or Without You: Programming with Effect Exclusion;Proceedings of the ACM on Programming Languages;2023-08-30
2. A Systematic Hardening of Java's Information Hiding;Proceedings of the 2021 International Symposium on Advanced Security on Software and Systems;2021-05-24
3. Brokering Policies and Execution Monitors for IoT Middleware;Proceedings of the 24th ACM Symposium on Access Control Models and Technologies;2019-05-28
4. HCAP;Proceedings of the 23nd ACM on Symposium on Access Control Models and Technologies;2018-06-07
5. Hardening Java’s Access Control by Abolishing Implicit Privilege Elevation;2017 IEEE Symposium on Security and Privacy (SP);2017-05