×

基于自动符号字符串分析的漏洞检测。 (英语) Zbl 1291.68272号

摘要:验证字符串操作程序是计算机安全中的一个关键问题。字符串操作在web应用程序中广泛用于操作用户输入,而其错误使用是web应用程序安全漏洞的最常见原因。我们提出了一种基于自动机的字符串操作程序符号分析方法。我们使用确定性有限自动机(DFA)来表示字符串变量的可能值。使用前向可达性分析,我们计算了字符串变量在每个程序点可以采用的所有可能值的过近似值。如果程序易受攻击,那么将这些与给定的攻击模式相交会产生潜在的攻击字符串。基于所介绍的技术,我们实现了陌生人是一种基于自动机的字符串分析工具,用于检测PHP应用程序中与字符串相关的安全漏洞。我们评估了陌生人在几个开源Web应用程序上,包括一个有350000多行代码的应用程序。陌生人能够检测已知/未知漏洞,并在插入适当的清理例程后,证明不存在与给定攻击模式相关的漏洞。

MSC公司:

60年第68季度 规范和验证(程序逻辑、模型检查等)
65年第68季度 形式语言和自动机
68英里11 互联网主题
PDF格式BibTeX公司 XML格式引用
全文: 内政部

参考文献:

[1] Alkhalaf,M。;布尔坦,T。;Gallegos,JL,使用字符串分析验证客户端输入验证功能,947-957(2012)
[2] 巴尔扎罗蒂,D。;Cova,M。;Felmetsger,V.公司。;Jovanovic,N。;克鲁格尔,C。;柯达,E。;Vigna,G.,Saner:撰写静态和动态分析以验证网络应用程序中的净化,387-401(2008)
[3] Bartzis C,Bultan T(2003)验证中算术约束的有效符号表示。国际J发现计算科学14(4):605-624·Zbl 1101.68642号 ·doi:10.1142/S012905410300191
[4] Bartzis,C。;Bultan,T.,《加宽算术自动机》,321-333(2004)·Zbl 1103.68606号
[5] 贝尔,M。;Klarlund,N。;Rauhe,T.,导向树自动机算法,6-25(1997)
[6] 比约纳,N。;蒂尔曼,N。;Voronkov,A.,串操作程序的路径可行性分析,307-321(2009)·Zbl 1234.68070号
[7] R,Even S,Greibach S,Ott G(1971)《图形和表达式的歧义》。IEEE传输计算C-20(2):149-153·Zbl 0222.94067号 ·doi:10.1109/T-C.1971.223204
[8] Bouajjani,A。;哈贝梅尔,P。;Vojnar,T.,抽象规则模型检查,372-386(2004)·Zbl 1103.68071号
[9] Bouajjani,A。;Jonsson,B。;尼尔森,M。;Touili,T.,定期模型检查,403-418(2000)·Zbl 0974.68118号
[10] 金砖四国。MONA项目。http://www.brics.dk/mona/
[11] Choi,T-H;Lee,O。;Kim,H。;Doh,K-G,《采用加宽方法的实用字符串分析器》,374-388(2006)·Zbl 1168.68359号
[12] Christensen,AS;莫勒,A。;Schwartzbach,MI,字符串表达式的精确分析,1-18(2003)·Zbl 1067.68541号
[13] 克里斯多雷斯库,M。;北基德。;Goh,W-H,x86二进制文件的字符串分析,88-95(2005)
[14] Fu,X。;卢,X。;佩尔茨维格,B。;陈,S。;钱,K。;Tao,L.,检测SQL注入漏洞的静态分析框架,87-96(2007)
[15] 古尔德,C。;苏,Z。;Devanbu,P.,数据库应用程序中动态生成查询的静态检查,645-654(2004)
[16] Hooimeijer,P。;Livshits,B。;莫尔纳,D。;Saxena,P。;Veanes,M.,用BEK快速准确地分析消毒剂,1(2011)
[17] Hooimeijer,P。;Weimer,W.,正则语言子集约束的决策过程,188-198(2009)·doi:10.145/1542476.1542498
[18] Hooimeijer P,Weimer W(2012)Strsolve:懒散地求解字符串约束。自动软件工程19(4):531-559·文件编号:10.1007/s10515-012-0111-x
[19] Jovanovic,N。;Krügel,C。;Kirda,E.,Pixy:一种用于检测web应用程序漏洞的静态分析工具(短文),258-263(2006)
[20] 基辅,A。;加内什,V。;郭,PJ;Hooimeijer,P。;Ernst,MD,Hampi:字符串约束求解器,105-116(2009)·doi:10.1145/1572272.1572286
[21] Kirkegaard C,Möller A,Schwartzbach MI(2004)Java中XML转换的静态分析。IEEE Trans Softw工程30(3):181-192·doi:10.1109/TSE.2004.1271173
[22] Klarlund N,Möller A,Schwartzbach MI(2002)MONA实施秘密。国际计算机科学杂志13(4):571-586·Zbl 1066.68079号 ·doi:10.1142/S01290541200128X
[23] Minamide,Y.,动态生成网页的静态近似,432-441(2005)
[24] OWASP公司。2007年前10名。https://www.owasp.org/index.php/Top_10_2007 ·Zbl 1234.68070号
[25] OWASP公司。2010年前十名。https://www.owasp.org/index.php/Top_10_2010-Main网站
[26] OWASP公司。2013年前十名。https://www.owasp.org/index.php/Top_10_2013-T10 ·Zbl 1101.68642号
[27] Sakuma Y,Minamide Y,Voronkov A(2012)将正则表达式匹配转换为换能器。应用日志10(1):32-51·Zbl 1238.68052号
[28] Saxena,P。;Akhawe,D。;Hanna,S。;毛,F。;麦卡曼特,S。;Song,D.,JavaScript的符号执行框架,513-528(2010)
[29] Sen,K。;Marinov,D。;Agha,G.,Cute:C的协和单元测试引擎,263-272(2005)·doi:10.1145/1081706.1081750
[30] Shannon,D。;哈伊拉,S。;A.李。;詹,D。;Khurshid,S.,用字符串分析抽象符号执行,13-22(2007)
[31] Sourceforge。开放源代码。网址:http://sourceforge.net
[32] Tateishi,T。;皮斯托亚,M。;Tripp,O.,基于一元二阶逻辑的路径和索引敏感字符串分析,166-176(2011)
[33] van Noord G.FSA实用工具工具箱。网址:http://odur.let.rug.nl/凡诺德/Fsa/·兹比尔1321.68341
[34] 韦恩斯,M。;比约纳,N.,《符号自动机:工具箱》,472-477(2012)·Zbl 1352.68138号
[35] Veanes,M。;Hooimeijer,P。;Livshits,B。;莫尔纳,D。;Bjorner,N.,《符号有限状态传感器:算法和应用》,137-150(2012)·兹比尔1321.68341
[36] Wassermann,G。;Su,Z.,《web应用程序注入漏洞的合理和精确分析》,32-41(2007)
[37] Wassermann,G。;Su,Z.,跨站点脚本漏洞的静态检测,171-180(2008)·数字对象标识代码:10.1145/1368088.1368112
[38] Wassermann,G。;Yu,D。;Chander,A。;Dhurjati,D。;Inamura,H。;Su,Z.,web应用程序的动态测试输入生成,249-260(2008)·数字对象标识代码:10.1145/1390630.1390661
[39] 谢毅。;Aiken,A.,脚本语言中安全漏洞的静态检测,13(2006)
[40] Yu,F。;Alkhalaf,M。;Bultan,T.,《陌生人:PHP的基于自动机的字符串分析工具》,154-157(2010)
[41] Yu,F。;Alkhalaf,M。;Bultan,T.,用消毒合成修补漏洞,251-260(2011)
[42] Yu,F。;布尔坦,T。;科瓦,M。;俄亥俄州伊巴拉,《符号字符串验证:基于自动机的方法》,306-324(2008)
[43] Yu,F。;布尔坦,T。;Hardekopf,B.,字符串验证的字符串抽象,20-37(2011)
[44] Yu F,Bultan T,Ibarra OH(2011)使用多轨迹自动机进行关系字符串验证。国际计算机科学期刊第22期(8):1909-1924·Zbl 1234.68270号 ·doi:10.1142/S0129054111009112
此参考列表基于出版商或数字数学图书馆提供的信息。其项与zbMATH标识符进行启发式匹配,可能包含数据转换错误。在某些情况下,zbMATH Open的数据对这些数据进行了补充/增强。这试图尽可能准确地反映原始论文中列出的参考文献,而不要求完整或完全匹配。