Hardening Java']Java's Access Control by Abolishing Implicit Privilege Elevation

被引:8
|
作者
Holzinger, Philipp [1 ]
Hermann, Ben [2 ]
Lerch, Johannes [2 ]
Bodden, Eric [3 ,4 ]
Mezini, Mira [2 ]
机构
[1] Fraunhofer SIT, Darmstadt, Germany
[2] Tech Univ Darmstadt, Darmstadt, Germany
[3] Fraunhofer IEM, Paderborn, Germany
[4] Paderborn Univ, Paderborn, Germany
关键词
STACK INSPECTION;
D O I
10.1109/SP.2017.16
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
While the Java runtime is installed on billions of devices and servers worldwide, it remains a primary attack vector for online criminals. As recent studies show, the majority of all exploited Java vulnerabilities comprise incorrect or insufficient implementations of access-control checks. This paper for the first time studies the problem in depth. As we find, attacks are enabled by shortcuts that short-circuit Java's general principle of stack-based access control. These shortcuts, originally introduced for ease of use and to improve performance, cause Java to elevate the privileges of code implicitly. As we show, this creates many pitfalls for software maintenance, making it all too easy for maintainers of the runtime to introduce blatant confused-deputy vulnerabilities even by just applying normally semantics-preserving refactorings. How can this problem be solved? Can one implement Java's access control without shortcuts, and if so, does this implementation remain usable and efficient? To answer those questions, we conducted a tool-assisted adaptation of the Java Class Library (JCL), avoiding (most) shortcuts and therefore moving to a fully explicit model of privilege elevation. As we show, the proposed changes significantly harden the JCL against attacks: they effectively hinder the introduction of new confused-deputy vulnerabilities in future library versions, and successfully restrict the capabilities of attackers when exploiting certain existing vulnerabilities. We discuss usability considerations, and through a set of large-scale experiments show that with current JVM technology such a faithful implementation of stack-based access control induces no observable performance loss.
引用
收藏
页码:1027 / 1040
页数:14
相关论文
共 45 条
  • [31] Mobile device access control: an improved correlation based face authentication scheme and its Java']Java ME application
    Xi, Kai
    Hu, Jiankun
    Han, Fengling
    CONCURRENCY AND COMPUTATION-PRACTICE & EXPERIENCE, 2012, 24 (10): : 1066 - 1085
  • [32] Towards Fine-Grained Access Control in Java']JavaScript Contexts
    Patil, Kailas
    Dong, Xinshu
    Li, Xiaolei
    Liang, Zhenkai
    Jiang, Xuxian
    31ST INTERNATIONAL CONFERENCE ON DISTRIBUTED COMPUTING SYSTEMS (ICDCS 2011), 2011, : 720 - 729
  • [33] A Correlation based Face Verification Scheme Designed for Mobile Device Access Control: From Algorithm to Java']Java ME Implementation
    Xi, Kai
    Tang, Yan
    Hu, Jiankun
    Han, Fengling
    ICIEA 2010: PROCEEDINGS OF THE 5TH IEEE CONFERENCE ON INDUSTRIAL ELECTRONICS AND APPLICATIONS, VOL 1, 2010, : 340 - +
  • [34] DET-ABE: A Java']Java API for Data Confidentiality and Fine-Grained Access Control from Attribute Based Encryption
    Morales-Sandoval, Miguel
    Diaz-Perez, Arturo
    INFORMATION SECURITY THEORY AND PRACTICE, WISTP 2015, 2015, 9311 : 104 - 119
  • [35] Lessons Learned and Challenges of Deploying Control Flow Integrity in Complex Software: the Case of OpenJDK's Java']Java Virtual Machine
    Houy, Sabine
    Bartel, Alexandre
    2024 IEEE SECURE DEVELOPMENT CONFERENCE, SECDEV 2024, 2024, : 153 - 165
  • [36] Acibenzolar-S-methyl on Meloidogyne java']javanica control in lettuce
    Hernandes, Isabela
    Costa Brito, Olivia Diulen
    Cardoso, Michelly Ragazzi
    Antunes Ferreira, Julio Cesar
    Puerari, Heriksen Higashi
    Dias-Arieira, Claudia Regina
    ACTA AGRICULTURAE SCANDINAVICA SECTION B-SOIL AND PLANT SCIENCE, 2017, 67 (07): : 660 - 664
  • [37] Access Control to Prevent Malicious Java']JavaScript Code Exploiting Vulnerabilities of WebView in Android OS
    Yu, Jing
    Yamauchi, Toshihiro
    IEICE TRANSACTIONS ON INFORMATION AND SYSTEMS, 2015, E98D (04): : 807 - 811
  • [38] Role-Based Access Control (RBAC) in Java via proxy objects using annotations
    Department of Electrical and Computer Engineering, University of Waterloo, Waterloo, ON, Canada
    Proc. ACM Symp. Access Control Models Technol. SACMAT, (79-88):
  • [39] Regional Legislative's Political Communication under Supervision of COVID-19 Pandemic Control Program in West Java']Java Province, Indonesia
    Hkikmat, Mahi Mamat
    CROATIAN INTERNATIONAL RELATIONS REVIEW, 2021, 27 (88) : 150 - +
  • [40] Potential of 2-Hydroxyacetophenone Derivatives and Simple Phenol's for the control of Meloidogyne java']javanica
    Lopez, Luis Alberto Gonzalez
    Andres, Maria Fe
    Quinones, Wiston
    Echeverri, Fernando
    Gonzalez-Coloma, Azucena
    NATURAL PRODUCT COMMUNICATIONS, 2024, 19 (01)