Auto-generating access control policies for applications by static analysis with user input recognition

  • Authors:
  • Sven Lachmund

  • Affiliations:
  • DOCOMO Euro-Labs, Munich, Germany

  • Venue:
  • Proceedings of the 2010 ICSE Workshop on Software Engineering for Secure Systems
  • Year:
  • 2010

Quantified Score

Hi-index 0.00

Visualization

Abstract

Applications are typically executed in the security context of the user. Nonetheless, they do not need all the access rights. Since software vulnerabilities based attacks are not rare nowadays, executing applications with minimal rights (least privileges) is desirable. Attackers would only be able to access a fraction of resources. The state-of-the-art on application-based access control policy generation does not generate least privileges policies. They include generic access rights for user resources (e.g. the home directory), since accesses by the user cannot be predicted. This paper distinguishes resource accesses initiated by the application from those initiated by the user and generates an application policy, which only contains access rights that are not derived from user interaction. The so generated policy satisfies the principle of least privileges. User initiated accesses are handled separately at runtime. In this paper, a call graph based static analysis approach for application policy generation is chosen, which is augmented by an additional string analysis to identify user input propagating through the application's control flow, until it reaches permission checks. This way, user initiated accesses are determined and filtered. The policy is auto-generated at development time with little effort for the developer.