Jasmine: A Static Analysis Framework for Spring Core Technologies

被引:1
作者
Chen, Miao [1 ]
Tu, Tengfei [1 ]
Zhang, Hua [1 ]
Wen, Qiaoyan [1 ]
Wang, Weihang [2 ]
机构
[1] Beijing Univ Posts & Telecommun, Beijing, Peoples R China
[2] Univ Southern Calif, Los Angeles, CA USA
来源
PROCEEDINGS OF THE 37TH IEEE/ACM INTERNATIONAL CONFERENCE ON AUTOMATED SOFTWARE ENGINEERING, ASE 2022 | 2022年
关键词
static analysis; points-to analysis; Spring framework; POINTS-TO ANALYSIS; HEAP;
D O I
10.1145/3551349.3556910
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
The Spring framework is widely used in developing enterprise web applications. Spring core technologies, such as Dependency Injection and Aspect-Oriented Programming, make development faster and easier. However, the implementation of Spring core technologies uses a lot of dynamic features. Those features impose significant challenges when using static analysis to reason about the behavior of Spring-based applications. In this paper, we propose Jasmine, a static analysis framework for Spring core technologies extends from Soot to enhance the call graph's completeness while not greatly affecting its performance. We evaluate Jasmine's completeness, precision, and performance using Spring micro-benchmarks and a suite of 18 real-world Spring programs. Our experiments show that Jasmine effectively enhances the state-of-the-art tools based on Soot and Doop to better support Spring core technologies. We also add Jasmine support to FlowDroid and discovered twelve sensitive information leakage paths in our benchmarks. Jasmine is expected to provide significant benefits for many program analyses scenes of Spring applications where more complete call graphs are required.
引用
收藏
页数:13
相关论文
共 50 条
  • [1] SootUp: A Redesign of the Soot Static Analysis Framework
    Karakaya, Kadiray
    Schott, Stefan
    Klauke, Jonas
    Bodden, Eric
    Schmidt, Markus
    Luo, Linghui
    He, Dongjie
    TOOLS AND ALGORITHMS FOR THE CONSTRUCTION AND ANALYSIS OF SYSTEMS, PT I, TACAS 2024, 2024, 14570 : 229 - 247
  • [2] A Survey of Parametric Static Analysis
    Park, Jihyeok
    Lee, Hongki
    Ryu, Sukyoung
    ACM COMPUTING SURVEYS, 2021, 54 (07)
  • [3] SWAN: A Static Analysis Framework for Swift
    Tiganov, Daniil
    Cho, Jeff
    Ali, Karim
    Dolby, Julian
    PROCEEDINGS OF THE 28TH ACM JOINT MEETING ON EUROPEAN SOFTWARE ENGINEERING CONFERENCE AND SYMPOSIUM ON THE FOUNDATIONS OF SOFTWARE ENGINEERING (ESEC/FSE '20), 2020, : 1640 - 1644
  • [4] Mira: A Framework for Static Performance Analysis
    Meng, Kewen
    Norris, Boyana
    2017 IEEE INTERNATIONAL CONFERENCE ON CLUSTER COMPUTING (CLUSTER), 2017, : 103 - 113
  • [5] Hybrid Inlining: A Framework for Compositional and Context-Sensitive Static Analysis
    Liu, Jiangchao
    Liu, Jierui
    Di, Peng
    Wu, Diyu
    Zheng, Hengjie
    Liu, Alex X.
    Xue, Jingling
    PROCEEDINGS OF THE 32ND ACM SIGSOFT INTERNATIONAL SYMPOSIUM ON SOFTWARE TESTING AND ANALYSIS, ISSTA 2023, 2023, : 114 - 126
  • [6] WasmA: A Static WebAssembly Analysis Framework for Everyone
    Breitfelder, Florian
    Roth, Tobias
    Baumgaertner, Lars
    Mezini, Mira
    2023 IEEE INTERNATIONAL CONFERENCE ON SOFTWARE ANALYSIS, EVOLUTION AND REENGINEERING, SANER, 2023, : 753 - 757
  • [7] Kunai: A static analysis framework for Android apps
    Blazquez, Eduardo
    Tapiador, Juan
    SOFTWAREX, 2023, 22
  • [8] A Static Analysis Framework for Data Science Notebooks
    Subotic, Pavle
    Milikic, Lazar
    Stojic, Milan
    2022 ACM/IEEE 44TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING: SOFTWARE ENGINEERING IN PRACTICE (ICSE-SEIP 2022), 2022, : 13 - 22
  • [9] Tai-e: A Developer-Friendly Static Analysis Framework for Java']Java by Harnessing the Good Designs of Classics
    Tan, Tian
    Li, Yue
    PROCEEDINGS OF THE 32ND ACM SIGSOFT INTERNATIONAL SYMPOSIUM ON SOFTWARE TESTING AND ANALYSIS, ISSTA 2023, 2023, : 1093 - 1105
  • [10] Modelling and analysis of static and modal responses of leaf spring used in automobiles
    Balakrishna, A.
    Mishra, P. K.
    INTERNATIONAL JOURNAL OF HYDROMECHATRONICS, 2021, 4 (04) : 350 - 367