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 条
  • [31] Heap Abstractions for Static Analysis
    Kanvar, Vini
    Khedker, Uday P.
    ACM COMPUTING SURVEYS, 2016, 49 (02)
  • [32] On-the-Fly Static Analysis via Dynamic Bidirected Dyck Reachability
    Krishna, Shankaranarayanan
    Lal, Aniket
    Pavlogiannis, Andreas
    Tuppe, Omkar
    PROCEEDINGS OF THE ACM ON PROGRAMMING LANGUAGES-PACMPL, 2024, 8 (POPL): : 1239 - 1268
  • [33] EOSIOAnalyzer: An Effective Static Analysis Vulnerability Detection Framework for EOSIO Smart Contracts
    Li, Wenyuan
    He, Jiahao
    Zhao, Gansen
    Yang, Jinji
    Li, Shuangyin
    Lai, Ruilin
    Li, Ping
    Tang, Hua
    Luo, Haoyu
    Zhou, Ziheng
    2022 IEEE 46TH ANNUAL COMPUTERS, SOFTWARE, AND APPLICATIONS CONFERENCE (COMPSAC 2022), 2022, : 746 - 756
  • [34] S3ntinel: An Extensible Static Analysis Framework for Android Applications
    Doshi, Shreyans
    Siddavatam, Irfan
    2018 FOURTH INTERNATIONAL CONFERENCE ON COMPUTING COMMUNICATION CONTROL AND AUTOMATION (ICCUBEA), 2018,
  • [35] STATIC PARAMETRIC STRESS-STRAIN ANALYSIS FOR ASPHALTIC CONCRETE CORE OF ROCKFILL DAMS
    Shiravi, Shahram
    JOURNAL OF APPLIED ENGINEERING SCIENCES, 2022, 12 (01) : 87 - 96
  • [36] Systemizing Interprocedural Static Analysis of Large-scale Systems Code with Graspan
    Zuo, Zhiqiang
    Wang, Kai
    Hussain, Aftab
    Sani, Ardalan Amiri
    Zhang, Yiyu
    Lu, Shenming
    Dou, Wensheng
    Wang, Linzhang
    Li, Xuandong
    Wang, Chenxi
    Xu, Guoqing Harry
    ACM TRANSACTIONS ON COMPUTER SYSTEMS, 2021, 38 (1-2):
  • [37] Static Analysis of Java']Java Enterprise Applications: Frameworks and Caches, the Elephants in the Room
    Antoniadis, Anastasios
    Filippakis, Nikos
    Krishnan, Paddy
    Ramesh, Raghavendra
    Allen, Nicholas
    Smaragdakis, Yannis
    PROCEEDINGS OF THE 41ST ACM SIGPLAN CONFERENCE ON PROGRAMMING LANGUAGE DESIGN AND IMPLEMENTATION (PLDI '20), 2020, : 794 - 807
  • [38] A framework for the static verification of API calls
    Spinellis, Diomidis
    Louridas, Panagiotis
    JOURNAL OF SYSTEMS AND SOFTWARE, 2007, 80 (07) : 1156 - 1168
  • [39] Spring Framework in Smart Proxy Transaction Model
    Pradhan, Sunam
    Zaslavsky, Arkady
    Tari, Zahir
    PROCEEDINGS OF THE 2009 FIFTH INTERNATIONAL CONFERENCE ON NEXT GENERATION WEB SERVICES PRACTICES, NWESP 2009, 2009, : 23 - +
  • [40] OVER: Overhauling Vulnerability Detection for IoT through an Adaptable and Automated Static Analysis Framework
    Sachidananda, Vinay
    Bhairav, Suhas
    Elovici, Yuval
    PROCEEDINGS OF THE 35TH ANNUAL ACM SYMPOSIUM ON APPLIED COMPUTING (SAC'20), 2020, : 729 - 738