PHPJoy: A Novel Extended Graph-Based PHP Code Analysis Framework

Nowadays, the PHP language is widely used in web development. Owing to PHP’s inherent flexibility and dynamic language features (e.g., cross-module dependencies and runtime polymorphism), PHP applications are prone to various security vulnerabilities, such as XSS and SQL injection. As an effective PHP semantic understanding and security vetting technique, static program analysis has been widely applied. However, prior work faced difficulties in dealing with diverse and dynamic PHP features, which caused serious false negatives (e.g., call target missing). <p xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">In this paper, we propose a novel extended graph-based program analysis approach, called <monospace>PHPJoy</monospace>, that can effectively and universally learn the semantic landscape of the target PHP program and conduct security validations. Specifically, <monospace>PHPJoy</monospace> first performs fine-grained program analysis (i.e., cross-module analysis and field-level analysis) for the purpose of learning the extended semantic graphs. Then, based on the graph-based semantic information, <monospace>PHPJoy</monospace> universally models various security issues by efficiently utilizing a new security-oriented graph query framework, which provides rich and easy-to-use graph query APIs and a high-performance cache-and-prefetch strategy. <p xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">We evaluate <monospace>PHPJoy</monospace> on 333 popular PHP programs. The results show that <monospace>PHPJoy</monospace> can effectively discover 269,901,982 semantic graph edges, improving by 23.76% when compared to the existing analysis tools. Our further analysis also shows that the runtime analysis overhead is reduced by 76.54%. Furthermore, <monospace>PHPJoy</monospace> successfully hunts 53 zero-day security vulnerabilities in the wild, which verifies the practicality of <monospace>PHPJoy</monospace>.

Authors

Institutions

Publication Details

Journal
IEEE Transactions on Software Engineering
Published
2025-09-26
DOI
https://doi.org/10.1109/tse.2025.3614304
Primary Topic
Service-Oriented Architecture and Web Services
Type
article
Field-Weighted Citation Impact
0.00
Controls
|||
ALL TIME
JAN
FEB
MAR
APR
MAY
JUN
JUL
AUG
SEP
OCT
article

PHPJoy: A Novel Extended Graph-Based PHP Code Analysis Framework

Yuan Zhang, Guangliang Yang, Min Yang, Youkun Shi et al.
IEEE Transactions on Software Engineering
Service-Oriented Architecture and Web Services
article

PHPJoy: A Novel Extended Graph-Based PHP Code Analysis Framework

Yuan Zhang, Guangliang Yang, Min Yang, Youkun Shi, Shengke Ye, Xiapu Luo, Fengyu Liu, Chengyu Yang, Tianhan Luo
article en

Abstract

Nowadays, the PHP language is widely used in web development. Owing to PHP’s inherent flexibility and dynamic language features (e.g., cross-module dependencies and runtime polymorphism), PHP applications are prone to various security vulnerabilities, such as XSS and SQL injection. As an effective PHP semantic understanding and security vetting technique, static program analysis has been widely applied. However, prior work faced difficulties in dealing with diverse and dynamic PHP features, which caused serious false negatives (e.g., call target missing). <p xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">In this paper, we propose a novel extended graph-based program analysis approach, called <monospace>PHPJoy</monospace>, that can effectively and universally learn the semantic landscape of the target PHP program and conduct security validations. Specifically, <monospace>PHPJoy</monospace> first performs fine-grained program analysis (i.e., cross-module analysis and field-level analysis) for the purpose of learning the extended semantic graphs. Then, based on the graph-based semantic information, <monospace>PHPJoy</monospace> universally models various security issues by efficiently utilizing a new security-oriented graph query framework, which provides rich and easy-to-use graph query APIs and a high-performance cache-and-prefetch strategy. <p xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">We evaluate <monospace>PHPJoy</monospace> on 333 popular PHP programs. The results show that <monospace>PHPJoy</monospace> can effectively discover 269,901,982 semantic graph edges, improving by 23.76% when compared to the existing analysis tools. Our further analysis also shows that the runtime analysis overhead is reduced by 76.54%. Furthermore, <monospace>PHPJoy</monospace> successfully hunts 53 zero-day security vulnerabilities in the wild, which verifies the practicality of <monospace>PHPJoy</monospace>.

IEEE Transactions on Software EngineeringVol. 51(12)
Hong Kong Polytechnic University (HK), Fudan University (CN)
Openalex Percentile: Top 62%
Service-Oriented Architecture and Web Services
AI Navigator

Ask Laika to Summarize, Analyze, and Connect papers live on the map.

Summarize Papers & Methodologies

Extract key findings, datasets, and comparative methods across publications.

Benchmark Rankings & Visual Analytics

Rank top research institutions, authors, funders, topics, and journals by Field-Weighted Citation Impact (FWCI) and paper volume with instant charts.

Connect Distant Disciplines

Bridge topological clusters on the map to find hidden collaborative intersections.