2018Unpublished venueRequires access

Detecting Vulnerable Java Classes Based on the Analysis of Java Library Call Graph

Hyosung Park, Chul-Woo Park, Sangbong Yoo, Kichang Kim

Open publisher page 1 citations

Abstract

Java Virtual Machine relies on the SecurityManager class to prevent illegal system resource access by external Java code (e.g., Java Applet). The SecurityManager checks the access right of all Java classes in the call stack when a system resource is requested and rejects the request if any of these classes does not have the proper access right. But researchers have found a number of vulnerable Java system classes that allow user programs to bypass the SecurityManager. The identification of these vulnerable system classes is important in order to strengthen the security of Java Virtual Machine. However, finding them manually in the huge space of Java libraries is not trivial task. In this paper, we suggest a systematic technique of identifying vulnerable Java classes in a given Java library through the analysis of the call graph. We observe that there is a number of Java methods that force the SecurityManager omit the full examination of the Java call stack for performance issue and that these target methods are exploited through the vulnerable Java classes to enable the bypassing of the SecurityManager. Based on this observation, our technique enumerates all Java classes that call these target methods, analyzes the call chains and successfully detects vulnerable classes.

About this research paper

What this paper is about

Java Virtual Machine relies on the SecurityManager class to prevent illegal system resource access by external Java code (e.g., Java Applet). The SecurityManager checks the access right of all Java classes in the call stack when a system resource is requested and rejects the request if any of these classes does not have the proper access right. But researchers have found a number of vulnerable Java system classes that allow user programs to bypass the SecurityManager. The identification of these vulnerable system classes is important in order to strengthen the security of Java Virtual Machine. However, finding them manually in the huge space of Java libraries is not trivial task. In this paper, we suggest a systematic technique of identifying vulnerable Java classes in a given Java library through the analysis of the call graph. We observe that there is a number of Java methods that force the SecurityManager omit the full examination of the Java call stack for performance issue and that these target methods are exploited through the vulnerable Java classes to enable the bypassing of the SecurityManager. Based on this observation, our technique enumerates all Java classes that call these target methods, analyzes the call chains and successfully detects vulnerable classes.

Why it matters

OpenAlex reports 1 citations for this work. Citation counts describe recorded attention and do not establish research quality.

Key contribution

A contribution statement is not available in the OpenAlex record.

Method / approach

Method details are not available in the OpenAlex metadata.

Main findings

Findings are not separately available in the OpenAlex metadata.

Limitations

Limitations are not available in the OpenAlex metadata.

Applications

Application details are not available in the OpenAlex metadata.

Available abstract

Java Virtual Machine relies on the SecurityManager class to prevent illegal system resource access by external Java code (e.g., Java Applet). The SecurityManager checks the access right of all Java classes in the call stack when a system resource is requested and rejects the request if any of these classes does not have the proper access right. But researchers have found a number of vulnerable Java system classes that allow user programs to bypass the SecurityManager. The identification of these vulnerable system classes is important in order to strengthen the security of Java Virtual Machine. However, finding them manually in the huge space of Java libraries is not trivial task. In this paper, we suggest a systematic technique of identifying vulnerable Java classes in a given Java library through the analysis of the call graph. We observe that there is a number of Java methods that force the SecurityManager omit the full examination of the Java call stack for performance issue and that these target methods are exploited through the vulnerable Java classes to enable the bypassing of the SecurityManager. Based on this observation, our technique enumerates all Java classes that call these target methods, analyzes the call chains and successfully detects vulnerable classes.

Key concepts: Java applet, Java, Computer science, Java annotation, strictfp, Real time Java, Java Card, Call stack

Related papers

Back to paper searchBrowse research topicsOriginal source
Detecting Vulnerable Java Classes Based on the Analysis of Java Library Call Graph — Research Paper | ScholarLens