ACM Home Page
Please provide us with feedback. Feedback
Pluggable verification modules: an extensible protection mechanism for the JVM
Full text PdfPdf (224 KB)
Source Conference on Object Oriented Programming Systems Languages and Applications archive
Proceedings of the 19th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications table of contents
Vancouver, BC, Canada
SESSION: Verification and validation table of contents
Pages: 404 - 418  
Year of Publication: 2004
ISBN:1-58113-831-9
Also published in ...
Author
Philip W. L. Fong  University of Regina, Regina, Canada
Sponsors
SIGPLAN: ACM Special Interest Group on Programming Languages
ACM: Association for Computing Machinery
SIGSOFT: ACM Special Interest Group on Software Engineering
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 11,   Downloads (12 Months): 53,   Citation Count: 1
Additional Information:

abstract   references   cited by   index terms   review   collaborative colleagues  

Tools and Actions: Review this Article  
Save this Article to a Binder    Display Formats: BibTex  EndNote ACM Ref   
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/1028976.1029010
What is a DOI?

ABSTRACT

Through the design and implementation of a JVM that supports Pluggable Verification Modules (PVMs), the idea of an extensible protection mechanism is entertained. Link-time bytecode verification becomes a pluggable service that can be readily replaced, reconfigured and augmented. Application-specific verification services can be safely introduced into the dynamic linking process of the JVM. This feature is enabled by the adoption of a previously proposed modular verification architecture, Proof Linking [23, 24], which decouples bytecode verification from the dynamic linking process, rendering the verifier a replaceable module. The PVM mechanism has been implemented in an open source JVM, the Aegis VM [21]. To evaluate the software engineering and security engineering benefits of this extensible protection mechanism, an augmented type system JAC (Java Access Control) [37] has been successfully implemented as a PVM.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

1
2
3
 
4
5
 
6
Joshua Bloch. JSR 175: A metadata facility for the Java programming language. http://www.jcp.org/en/jsr/detail?id=175
 
7
 
8
9
10
11
12
 
13
Alessandro Coglio and Allen Goldberg. Type safety in the JVM: Some problems in JDK 1.2.2 and proposed solutions. In Proceedings of the 2nd ECOOP Workshop on Formal Techniques for Java Programs Sophia Antipolis and Cannes, France, June 2000.
14
15
 
16
17
 
18
ECMA. Common language infrastructure (CLI). Standard 335, ECMA, December 2002.
19
20
 
21
Philip W. L. Fong. The Aegis VM Project. http://aegisvm.sourceforge.net
 
22
23
 
24
Philip W. L. Fong and Robert D. Cameron. Proof linking: Distributed verification of Java classfiles in the presence of multiple classloaders. In Proceedings of the USENIX Java Virtual Machine Research and Technology Symposium (JVM'01), pages 53--66, Monterey, California, USA, April 2001.
 
25
Philip W. L. Fong and Cheng Zhang. Capabilities as alias control: Secure cooperation in dynamically extensible systems. Technical Report CS-2004-3, Department of Computer Science, University of Regina, Regina, Saskatchewan, Canada S4S 0A2, 2004. ISBN:0-7731-0479-8.
26
27
28
29
30
 
31
Timothy L. Harris. Extensible virtual machines. Technical Report 525, University of Cambridge Computer Laboratory, Cambridge, UK, December 2001.
 
32
33
 
34
Gregor Kiczales, John Lamping, Anurag Mendhekar, Chris Maeda, Christina Videira Lopes, Jean-Marc Loingtier, and John Irwin. Aspect-oriented programming. In Proceedings of the 11th European Conference on Object-Oriented Programming (ECOOP'97), volume 1241 of Lecture Notes in Computer Science Finland, June 1997. Springer-Verlag.
 
35
 
36
 
37
38
 
39
 
40
41
 
42
Andrew C. Myers and Barbara Liskov. Complete, safe information flow with decentralized labels. In Proceedings of the 1998 IEEE Symposium on Security and Privacy (S&P'98), Oakland, California, USA, May 1998.
43
44
45
46
47
48
 
49
 
50
Michael D. Schroeder. Cooperation of Mutually Suspicious Subsystems in a Computer Utility Ph.D. thesis, Massachusetts Institute of Technology, September 1972.
 
51
Umesh Shankar, Kunal Talwar, Jeffrey S. Foster, and David Wagner. Detecting format-string vulnerabilities with type qualifiers. In Proceedings of the 10th USENIX Security Symposium Washington, D.C., USA, August 2001.
52
53
 
54
 
55



REVIEW

"Cristiano diFlora : Reviewer"

Although not extremely interesting with respect to static linking, module verification becomes very critical when modules are linked dynamically, for example, when using the Class.forName method. The author proposes a simple and efficient mechanis  more...