Enforcing Secure Object Initialization in Java']Java

被引:0
|
作者
Hubert, Laurent [1 ]
Jensen, Thomas [2 ]
Monfort, Vincent [2 ]
Pichardie, David [2 ]
机构
[1] CNRS, IRISA, F-75700 Paris, France
[2] INRIA, IRISA, Paris, France
来源
关键词
D O I
暂无
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
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.
引用
收藏
页码:101 / +
页数:2
相关论文
共 50 条
  • [31] I-Java']Java: An Extension of Java']Java with Incomplete Objects and Object Composition
    Bettini, Lorenzo
    Bono, Viviana
    Turin, Erica
    SOFTWARE COMPOSITION, PROCEEDINGS, 2009, 5634 : 27 - 44
  • [32] Solving the Java']Java object storage problem
    Barry, D
    Stanienda, T
    COMPUTER, 1998, 31 (11) : 33 - +
  • [33] Java']Java and distributed object models: An analysis
    Hericko, M
    Juric, MB
    Zivkovic, A
    Rozman, I
    Domajnko, T
    Krisper, M
    ACM SIGPLAN NOTICES, 1998, 33 (12) : 57 - 65
  • [34] Supporting object accesses in a Java']Java processor
    Vijaykrishnan, N
    Ranganathan, N
    IEE PROCEEDINGS-COMPUTERS AND DIGITAL TECHNIQUES, 2000, 147 (06): : 435 - 443
  • [35] Java']Java object-sharing in Habanero
    Chabert, A
    Grossman, E
    Jackson, L
    Pietrowicz, S
    Seguin, C
    COMMUNICATIONS OF THE ACM, 1998, 41 (06) : 69 - 76
  • [36] VERIFYING JAVA']JAVA OBJECT INVARIANTS AT RUNTIME
    Thu-Trang Nguyen
    Ninh-Thuan Truong
    Viet-Ha Nguyen
    INTERNATIONAL JOURNAL OF SOFTWARE ENGINEERING AND KNOWLEDGE ENGINEERING, 2011, 21 (04) : 605 - 619
  • [37] Object serialization, Java']Java, and C++
    Haverlock, K
    DR DOBBS JOURNAL, 1998, 23 (08): : 32 - +
  • [38] Object model in Java']Java: elements and application
    Saleh, K
    INFORMATION AND SOFTWARE TECHNOLOGY, 1999, 41 (04) : 235 - 241
  • [39] THE CAVEAT OF OBJECT ORIENTED PROGRAMMING IN JAVA']JAVA
    Alexandru Antal, Tiberiu
    ACTA TECHNICA NAPOCENSIS SERIES-APPLIED MATHEMATICS MECHANICS AND ENGINEERING, 2022, 65 (01): : 11 - 16
  • [40] Java']Java Interface for Relaxed Object Storage
    Danihelka, Michal
    Kopecky, Michal
    Svec, Petr
    Zemlicka, Michal
    2013 FEDERATED CONFERENCE ON COMPUTER SCIENCE AND INFORMATION SYSTEMS (FEDCSIS), 2013, : 1459 - 1466