Skip to Main content Skip to Navigation
Conference papers

Enforcing Secure Object Initialization in Java

Laurent Hubert 1, * Thomas Jensen 1 Vincent Monfort 1 David Pichardie 1
* Corresponding author
1 CELTIQUE - Software certification with semantic analysis
IRISA-D4 - LANGAGE ET GÉNIE LOGICIEL, Inria Rennes – Bretagne Atlantique
Abstract : Sun and the CERT recommend for secure Java development to not allow partially initialized objects to be accessed. The CERT considers the severity of the risks taken by not following this recommendation as high. The solution currently used to enforce object initialization is to implement a coding pattern proposed by Sun, which is not formally checked. We propose a modular type system to formally specify the initialization policy of libraries or programs and a type checker to statically check at load time that all loaded classes respect the policy. This allows to prove the absence of bugs which have allowed some famous privilege escalations in Java. Our experimental results show that our safe default policy allows to prove 91% of classes of java.lang, java.security and javax.security safe without any annotation and by adding 57 simple annotations we proved all classes but four safe. The type system and its soundness theorem have been formalized and machine checked using Coq.
Document type :
Conference papers
Complete list of metadata

Cited literature [10 references]  Display  Hide  Download

https://hal.inria.fr/inria-00503953
Contributor : David Pichardie <>
Submitted on : Monday, July 19, 2010 - 2:11:05 PM
Last modification on : Wednesday, June 16, 2021 - 3:40:57 AM
Long-term archiving on: : Friday, October 22, 2010 - 4:09:27 PM

Files

esorics.pdf
Files produced by the author(s)

Identifiers

  • HAL Id : inria-00503953, version 1
  • ARXIV : 1007.3133

Citation

Laurent Hubert, Thomas Jensen, Vincent Monfort, David Pichardie. Enforcing Secure Object Initialization in Java. 15th European Symposium on Research in Computer Security (ESORICS), 2010, Athènes, Greece. pp.101-115. ⟨inria-00503953⟩

Share

Metrics

Record views

909

Files downloads

345