TAP
TAP identifies vulnerabilities in PHP web applications using a PHP-specific tokenization mechanism combined with word2vec embeddings and LSTM deep learning for static source-code analysis.
Key Features:
- Token Mechanism: A custom PHP tokenizer that unifies tokens, supports PHP-specific language features, and implements parameter iteration to enable data-flow analysis within source code.
- Deep Learning Integration: Token sequences are encoded with word2vec and classified by an LSTM network trained on the Software Assurance Reference Dataset (SARD) and SQLI-LABS.
- Performance Metrics: Experimental evaluation on the CWE-89 dataset reported AUC 0.9941 and accuracy 0.9787; in multiclass classification it reported Kappa 0.8319 and hamming distance 0.0840 and outperformed RIPS.
Scientific Applications:
- Vulnerability detection in PHP: Automated identification of vulnerabilities in PHP source code using token-based static analysis and deep learning.
- Software assurance research: Training and benchmarking vulnerability-detection models using datasets such as SARD and SQLI-LABS.
- Comparative evaluation of static analyzers: Quantitative comparison of detection performance against existing tools such as RIPS using AUC, accuracy, Kappa, and hamming distance.
Methodology:
Design of a PHP-specific tokenizer with parameter iteration for data-flow analysis; token sequences embedded by word2vec and processed by LSTM networks; models trained on SARD and SQLI-LABS and evaluated on the CWE-89 dataset including multiclass comparisons to RIPS.
Topics
Details
- Programming Languages:
- PHP
- Added:
- 1/14/2020
- Last Updated:
- 1/16/2021
Operations
Publications
Fang Y, Han S, Huang C, Wu R. TAP: A static analysis model for PHP vulnerabilities based on token and deep learning technology. PLOS ONE. 2019;14(11):e0225196. doi:10.1371/journal.pone.0225196. PMID:31738786. PMCID:PMC6860437.
PMID: 31738786
PMCID: PMC6860437
Funding: - Key Research and Development Plan Project of Sichuan Province: No.2019YFG0407
- Sichuan University Postdoc Research Foundation: 19XJ0002