DPSSX: Detecting and Preventing SQLi and Stored XSS Induced by Expressions in Web Application SQL Statements via Static-Dynamic Analysis

IF 6 1区 计算机科学 Q1 COMPUTER SCIENCE, SOFTWARE ENGINEERING
IEEE Transactions on Software Engineering Pub Date : 2026-10-01 Epub Date: 2026-07-01 DOI:10.1109/TSE.2026.3709280
Bing Zhang;Hongbo Jin;Rong Ren;Jiadong Ren;Qian Wang
{"title":"DPSSX: Detecting and Preventing SQLi and Stored XSS Induced by Expressions in Web Application SQL Statements via Static-Dynamic Analysis","authors":"Bing Zhang;Hongbo Jin;Rong Ren;Jiadong Ren;Qian Wang","doi":"10.1109/TSE.2026.3709280","DOIUrl":null,"url":null,"abstract":"Injection vulnerabilities in SQL statements (e.g., SQLi and stored XSS) critically threaten web applications. Existing detection methods—source-origin-based, structure-based, and variable/rule-based—struggle when SQL statements contain arithmetic or function expressions, resulting in high false positives. To overcome this, we propose DPSSX, an automated detection and prevention prototype leveraging static and dynamic analysis to <underline>D</u>etect and <underline>P</u>revent <underline>S</u>QLi and <underline>S</u>tored <underline>X</u>SS attacks triggered by expressions in SQL statements. DPSSX first applies static analysis to locate SQL statements, identify data sources (POST, sessions, databases, etc.), and flag variables in arithmetic/function expressions that may alter attack impact. A dynamic global HTTP request extractor then collects comprehensive inputs for complex applications. Using a joint attack engine, DPSSX injects payloads covering the latest attack patterns. Through proxy-based execution, it captures SQL queries containing payloads or expressions. An expression pre-execution module computes results to mitigate false positives from expression-based neutralization/amplification. By matching query data against attack-pattern rules, DPSSX detects first/second-order SQL injection and stored XSS attacks and sanitizes malicious inputs using character escaping, truncation, unified decoding, and malicious keyword blocking. In our evaluation, using five attack generators to produce 120,495 SQL injection attacks and 3,763 XSS attacks, DPSSX successfully identified 441 first-order SQL injection vulnerabilities, 28 second-order SQL injection vulnerabilities, and 101 stored XSS vulnerabilities across 20 well-known open-source web applications. Additionally, DPSSX achieved 100% elimination of malicious effects on data with negligible overhead.","PeriodicalId":13324,"journal":{"name":"IEEE Transactions on Software Engineering","volume":"52 10","pages":"3071-3089"},"PeriodicalIF":6.0000,"publicationDate":"2026-10-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"IEEE Transactions on Software Engineering","FirstCategoryId":"94","ListUrlMain":"https://ieeexplore.ieee.org/document/11592690/","RegionNum":1,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"2026/7/1 0:00:00","PubModel":"Epub","JCR":"Q1","JCRName":"COMPUTER SCIENCE, SOFTWARE ENGINEERING","Score":null,"Total":0}
引用次数: 0

Abstract

Injection vulnerabilities in SQL statements (e.g., SQLi and stored XSS) critically threaten web applications. Existing detection methods—source-origin-based, structure-based, and variable/rule-based—struggle when SQL statements contain arithmetic or function expressions, resulting in high false positives. To overcome this, we propose DPSSX, an automated detection and prevention prototype leveraging static and dynamic analysis to Detect and Prevent SQLi and Stored XSS attacks triggered by expressions in SQL statements. DPSSX first applies static analysis to locate SQL statements, identify data sources (POST, sessions, databases, etc.), and flag variables in arithmetic/function expressions that may alter attack impact. A dynamic global HTTP request extractor then collects comprehensive inputs for complex applications. Using a joint attack engine, DPSSX injects payloads covering the latest attack patterns. Through proxy-based execution, it captures SQL queries containing payloads or expressions. An expression pre-execution module computes results to mitigate false positives from expression-based neutralization/amplification. By matching query data against attack-pattern rules, DPSSX detects first/second-order SQL injection and stored XSS attacks and sanitizes malicious inputs using character escaping, truncation, unified decoding, and malicious keyword blocking. In our evaluation, using five attack generators to produce 120,495 SQL injection attacks and 3,763 XSS attacks, DPSSX successfully identified 441 first-order SQL injection vulnerabilities, 28 second-order SQL injection vulnerabilities, and 101 stored XSS vulnerabilities across 20 well-known open-source web applications. Additionally, DPSSX achieved 100% elimination of malicious effects on data with negligible overhead.
DPSSX:通过静态-动态分析检测和预防Web应用SQL语句中表达式引起的SQLi和存储的XSS
SQL语句中的注入漏洞(例如,SQLi和存储XSS)严重威胁web应用程序。当SQL语句包含算术表达式或函数表达式时,现有的检测方法(基于来源、基于结构和基于变量/规则)会出现问题,从而导致大量误报。为了克服这个问题,我们提出了DPSSX,一种利用静态和动态分析来检测和预防SQL语句中表达式触发的SQLi和Stored XSS攻击的自动检测和预防原型。DPSSX首先应用静态分析来定位SQL语句,识别数据源(POST、会话、数据库等),并在算术/函数表达式中标记可能改变攻击影响的变量。然后,动态全局HTTP请求提取器为复杂的应用程序收集全面的输入。使用联合攻击引擎,DPSSX注入覆盖最新攻击模式的有效载荷。通过基于代理的执行,它捕获包含有效负载或表达式的SQL查询。表达式预执行模块计算结果,以减少基于表达式的中和/放大的误报。通过将查询数据与攻击模式规则相匹配,DPSSX检测一阶/二阶SQL注入和存储的XSS攻击,并使用字符转义、截断、统一解码和恶意关键字拦截来清除恶意输入。在我们的评估中,DPSSX使用5个攻击生成器产生120,495次SQL注入攻击和3,763次跨站攻击,在20个知名的开源web应用程序中成功识别了441个一阶SQL注入漏洞,28个二阶SQL注入漏洞和101个存储跨站漏洞。此外,DPSSX可以100%消除对数据的恶意影响,开销可以忽略不计。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
IEEE Transactions on Software Engineering
IEEE Transactions on Software Engineering 工程技术-工程:电子与电气
CiteScore
9.70
自引率
10.80%
发文量
724
审稿时长
6 months
期刊介绍: IEEE Transactions on Software Engineering seeks contributions comprising well-defined theoretical results and empirical studies with potential impacts on software construction, analysis, or management. The scope of this Transactions extends from fundamental mechanisms to the development of principles and their application in specific environments. Specific topic areas include: a) Development and maintenance methods and models: Techniques and principles for specifying, designing, and implementing software systems, encompassing notations and process models. b) Assessment methods: Software tests, validation, reliability models, test and diagnosis procedures, software redundancy, design for error control, and measurements and evaluation of process and product aspects. c) Software project management: Productivity factors, cost models, schedule and organizational issues, and standards. d) Tools and environments: Specific tools, integrated tool environments, associated architectures, databases, and parallel and distributed processing issues. e) System issues: Hardware-software trade-offs. f) State-of-the-art surveys: Syntheses and comprehensive reviews of the historical development within specific areas of interest.
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:604180095
Book学术官方微信
小红书