Affiliation:
1. IBM T.J. Watson Research Center, Yorktown Heights, New York
Abstract
Java 2 has a security architecture that protects systems from unauthorized access by mobile or statically configured code. The problem is in manually determining the set of security access rights required to execute a library or application. The commonly used strategy is to execute the code, note authorization failures, allocate additional access rights, and test again. This process iterates until the code successfully runs for the test cases in hand. Test cases usually do not cover all paths through the code, so failures can occur in deployed systems. Conversely, a broad set of access rights is allocated to the code to prevent authorization failures from occurring. However, this often leads to a violation of the "Principle of Least Privilege"This paper presents a technique for computing the access rights requirements by using a context sensitive, flow sensitive, interprocedural data flow analysis. By using this analysis, we compute at each program point the set of access rights required by the code. We model features such as multi-threading, implicitly defined security policies, the semantics of the Permission.implies method and generation of a security policy description. We implemented the algorithms and present the results of our analysis on a set of programs. While the analysis techniques described in this paper are in the context of Java code, the basic techniques are applicable to access rights analysis issues in non-Java-based systems.
Publisher
Association for Computing Machinery (ACM)
Subject
Computer Graphics and Computer-Aided Design,Software
Cited by
19 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. A systematic analysis of the event-stream incident;Proceedings of the 15th European Workshop on Systems Security;2022-04-05
2. Preventing Dynamic Library Compromise on Node.js via RWX-Based Privilege Reduction;Proceedings of the 2021 ACM SIGSAC Conference on Computer and Communications Security;2021-11-12
3. Static Extraction of Enforced Authorization Policies SeeAuthz;2020 IEEE 20th International Working Conference on Source Code Analysis and Manipulation (SCAM);2020-09
4. A Server-Side JavaScript Security Architecture for Secure Integration of Third-Party Libraries;Security and Communication Networks;2019-05-02
5. Generating Permission-Based Security Policies;2018 5th International Conference on Dependable Systems and Their Applications (DSA);2018-09