Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Review Help
Search
Pluggable verification modules: an extensible protection mechanism for the JVM
Fong P.  Object-oriented programming, systems, languages, and applications (Proceedings of the 19th Annual ACM SIGPLAN Conference on Object-oriented Programming, Systems, Languages, and Applications, Vancouver, BC, Canada, Oct 24-28, 2004)404-418.2004.Type:Proceedings
Date Reviewed: Jul 21 2005

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 mechanism for understanding whether or not unauthorized modifications happen.

Fong proposes exploiting obligations to avoid the situation where the state of a certain object is modified by inappropriate methods. The proposed solution has a negligible impact on the performance of the running application. However, it is worth noting that parallel virtual machine (PVM) modules can verify only the type of the object and associated access rights; they cannot analyze operations within the methods for which obligations are verified. For instance, a malicious sum method could return the product of operands instead of the sum, without modifying the state of the object, thus avoiding the PVM monitoring.

It would be interesting to know how the proposed modules would work in a multithreaded Java virtual machine (JVM). The Aegis VM, implemented by the author of the paper, is single-threaded. It is also unclear how the PVM modules would behave with generic types. For instance, the iterator method of the ArrayList class returns an object instance that is usually converted into a specific Java object by using the casting operator. In such a special, but frequent, situation, the verification mechanisms would fail, since verification will refer to the generic object class, and not to the specific type that is actually used.

Despite the mentioned limitations, the work represents a very good research idea of particular interest to readers working with embedded and mobile JVMs. Indeed, these JVMs must often deal with dynamic linking, since dynamic class downloading is a very frequent operation in mobile Java-based devices.

Reviewer:  Cristiano di Flora Review #: CR131546 (0606-0611)
Bookmark and Share
 
Protection Mechanisms (D.2.0 ... )
 
 
Access Controls (D.4.6 ... )
 
 
Domain-Specific Architectures (D.2.11 ... )
 
 
Macro And Assembly Languages (D.3.2 ... )
 
 
Object-Oriented Languages (D.3.2 ... )
 
 
Run-Time Environments (D.3.4 ... )
 
  more  
Would you recommend this review?
yes
no
Other reviews under "Protection Mechanisms": Date
Building secure software: how to avoid security problems the right way
Viega J. (ed), McGraw G., Addison-Wesley Longman Publishing Co., Inc., Boston, MA, 2002.  493, Type: Book (9780201721522)
Apr 22 2002
 Traducement: a model for record security
Walcott T., Bishop M. ACM Transactions on Information and System Security 7(4): 576-590, 2004. Type: Article
May 24 2005
Hybrid static-dynamic attacks against software protection mechanisms
Madou M., Anckaert B., De Sutter B., De Bosschere K.  Digital rights management (Proceedings of the 5th ACM Workshop on Digital Rights Management, Alexandria, VA, USA, Nov 7, 2005)75-82, 2005. Type: Proceedings
Feb 8 2006
more...

E-Mail This Printer-Friendly
Send Your Comments
Contact Us
Reproduction in whole or in part without permission is prohibited.   Copyright 1999-2024 ThinkLoud®
Terms of Use
| Privacy Policy