论文标题

DeepSQLI:测试SQL注入的深层语义学习

DeepSQLi: Deep Semantic Learning for Testing SQL Injection

论文作者

Liu, Muyang, Li, Ke, Chen, Tao

论文摘要

毫无疑问,安全是Web应用程序最严重的关注,SQL注入(SQLI)攻击是最具破坏性的攻击之一。自动测试SQLI漏洞至关重要,但不幸的是远非实施。这是因为存在SQL的巨大或潜在无限的变体和语义可能性,从而导致SQLI对各种Web应用程序的攻击。在本文中,我们提出了一种以自然语言加工为基于Deepsqli的Deep Deep Natural语言处理工具,以生成用于检测SQLI漏洞的测试用例。通过采用基于深度学习的神经语言模型和单词预测的顺序,DeepSQLI具有学习SQLI攻击中嵌入的语义知识的能力,从而使其可以将用户输入(或测试案例)转化为新的测试案例,该测试案例具有语义上相关的相关性和可能更为复杂。进行了实验,以将DeepSQLI与SQLMAP(一种最先进的SQLI测试自动化工具)进行比较,该工具在六个具有不同规模,特征和域的现实世界中的Web应用程序上。经验结果证明了深sq​​li优于SQLMAP的有效性和显着优势,从而可以通过使用较少数量的测试用例来识别更多的SQLI漏洞,同时运行得更快。

Security is unarguably the most serious concern for Web applications, to which SQL injection (SQLi) attack is one of the most devastating attacks. Automatically testing SQLi vulnerabilities is of ultimate importance, yet is unfortunately far from trivial to implement. This is because the existence of a huge, or potentially infinite, number of variants and semantic possibilities of SQL leading to SQLi attacks on various Web applications. In this paper, we propose a deep natural language processing based tool, dubbed DeepSQLi, to generate test cases for detecting SQLi vulnerabilities. Through adopting deep learning based neural language model and sequence of words prediction, DeepSQLi is equipped with the ability to learn the semantic knowledge embedded in SQLi attacks, allowing it to translate user inputs (or a test case) into a new test case, which is semantically related and potentially more sophisticated. Experiments are conducted to compare DeepSQLi with SQLmap, a state-of-the-art SQLi testing automation tool, on six real-world Web applications that are of different scales, characteristics and domains. Empirical results demonstrate the effectiveness and the remarkable superiority of DeepSQLi over SQLmap, such that more SQLi vulnerabilities can be identified by using a less number of test cases, whilst running much faster.

扫码加入交流群

加入微信交流群

微信交流群二维码

扫码加入学术交流群,获取更多资源