Abstract
Extensible Component Platforms support the discovery, installation, starting, uninstallation of components at runtime. Since they are often targeted at mobile resource-constrained devices, they have both strong performance and security requirements. The current security model for Java systems – Permissions – is based on call stack analysis. This is very time-consuming, which makes it difficult to use in production environments.
We therefore define the Component-Based Access Control (CBAC) Security Model, which emulates Java Permissions through static analysis at the installation phase of the components. CBAC is based on a fully declarative approach that makes it possible to tag arbitrary methods as sensitive. A formal model is defined to guarantee that a given component have sufficient access rights, and that dependencies between components are taken into account.
A first implementation of the model is provided for the OSGi Platform, using the ASM library for code analysis. Performance tests show that the cost of CBAC at install time is negligible, since it is executed together with digital signature verification which is much more costly. Moreover, unlike Java Permissions, the CBAC security model does not have any runtime overhead.
This work is partially funded by MUSE II IST FP6 Project n026442.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Porting Guide - Sun Javatrademark Wireless Client Software 2.0 - Java Platform, Micro Edition. Sun Microsystem (May 2007)
Arbaugh, W.A., Farber, D.J., Smith, J.: A secure and reliable bootstrap architecture. IEEE Symposium on Security and Privacy, 65–71 (1997)
Banerjee, A., Naumann, D.A.: A simple semantics and static analysis for java security. Technical Report 2001-1, Stevens Institute of Technology (2001)
Bartoletti, M.: Language-based security: access control and static analysis. PhD thesis, Universita degli Studi di Pisa (2005)
Bartoletti, M., Degano, P., Ferrari, G.L.: Static analysis for eager stack inspection. In: Workshop on Formal Techniques for Java-like Programs (FTfJP 2003) (2003)
Bartoletti, M., Degano, P., Ferrari, G.L.: Stack inspection and secure program transformations. International Journal of Information Security 2, 187–217 (2004)
Bieber, G., Carpenter, J.: Introduction to service-oriented programming (rev 2.1). OpenWings Whitepaper (April 2001)
Chang, B.-M.: Static check analysis for java stack inspection. ACM SIGPLAN Notices 41(3), 40–48 (2006)
Dean, D., Felten, E.W., Wallach, D.S.: Java security: From hotjava to netscape and beyond. In: SP 1996: Proceedings of the 1996 IEEE Symposium on Security and Privacy, p. 190. IEEE Computer Society Press, Washington, DC, USA (1996)
Gong, L., Mueller, M., Prafullchandra, H., Schemers, R.: Going beyond the sandbox: An overview of the new security architecture in the java development kit 1.2. In: Proceedings of the USENIX Symposium on Internet Technologies and Systems (1997)
Gong, L., Schemers, R.: Implementing protection domains in the java development kit 1.2. In: Network and Distributed System Security Symposium (1998)
JSR 118 Expert Group. Midp 2.0. Sun Specification (November 2002)
Lindholm, T., Yellin, F.: The Java(TM) Virtual Machine Specification, 2nd edn. Prentice-Hall, Englewood Cliffs (1999)
OSGI Alliance. Osgi service platform, core specification release 4. Draft, 07 (2005)
Parrend, P., Frenot, S.: Java components vulnerabilities - an experimental classification targeted at the osgi platform. Research Report RR-6231, INRIA, 06 (2007)
Parrend, P., Frenot, S.: Supporting the secure deployment of osgi bundles. In: First IEEE WoWMoM Workshop on Adaptive and DependAble Mission- and bUsiness-critical mobile Systems (ADAMUS 2007), Helsinki, Finland (June 2007)
Sun Inc. Java card platform specification 2.2.2 (March 2006)
Takesue, M.: A scheme for protecting the information leakage via portable devices. In: International Conference on Emerging Security Information, Systems and Technologies, IARIA SecurWare (2007)
Wallach, D.S.: A New Approach to Mobile Code Security. PhD thesis, Department of Computer Science, Princeton University (1999)
Wallach, D.S., Appel, A.W., Felten, E.W.: Safkasi: A security mechanism for language-based systems. ACM Transactions on Software Engineering and Methodology (TOSEM) 9(4), 341–378 (2000)
Wright, A.K., Felleisen, M.: A syntactic approach to type soundness. Information and Computation 115(1), 38–94 (1994)
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 2008 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Parrend, P., Frénot, S. (2008). Component-Based Access Control: Secure Software Composition through Static Analysis. In: Pautasso, C., Tanter, É. (eds) Software Composition. SC 2008. Lecture Notes in Computer Science, vol 4954. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-78789-1_5
Download citation
DOI: https://doi.org/10.1007/978-3-540-78789-1_5
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-78788-4
Online ISBN: 978-3-540-78789-1
eBook Packages: Computer ScienceComputer Science (R0)