跳到主要内容
10.1145/2491411.2491456高级会议文章/章节视图摘要出版物页面fse公司会议记录会议集合
研究论文

Z3-str:基于Z3的web应用程序分析字符串解算器

出版:2013年8月18日出版历史

摘要

分析web应用程序需要对字符串和非字符串进行连贯的推理。现有的字符串解算器要么忽略非字符串程序行为,要么支持有限的字符串操作集。在本文中,我们开发了一个通用字符串解算器,称为Z3-str,通过其插件接口对Z3 SMT解算器进行了扩展。Z3-str将字符串视为基元类型,从而避免了许多现有解算器中观察到的固有限制,这些解算器使用其他基元对字符串进行编码。插件的逻辑有三种排序,即bool、int和string。string排序的术语包括字符串常量和任意长度的变量,具有连接、子字符串和替换等功能。整型词条是标准的,字符串词条上的长度函数除外。原子公式是字符串项上的方程,以及整数项上的(in)-等式。我们的解算器不仅具有支持整个程序符号、静态和动态分析的功能,而且在我们的实验中,它的性能优于其他解算器。Z3-str在远程代码执行检测中的应用表明,它支持广泛的字符串操作是减少误报的关键。

参考文献

  1. M.Alkhalaf、S.Choudhary、M.Fazzini、T.Bultan、A.Orso和C.Kruegel。ViewPoints:用于发现客户端和服务器端输入验证不一致的差异字符串分析。在ISSTA'12。谷歌学者谷歌学者数字图书馆数字图书馆
  2. S.Artzi、A.Kiezun、J.Dolby、F.Tip、D.Dig、A.Paradkar和M.Ernst。使用动态测试生成和显式状态模型检查查找Web应用程序中的错误。在TSE中,第36卷,第4期,第474-494页,2010年。谷歌学者谷歌学者数字图书馆数字图书馆
  3. F.Baader和T.Nipkow。术语重写等等。剑桥大学出版社,1998年。谷歌学者谷歌学者数字图书馆数字图书馆
  4. P.Bisht、T.Hinrichs、N.Skrupsky、R.Bobrowicz和V.Venkatakrishnan。NoTamper:网络应用程序中参数篡改机会的自动黑盒检测。CCS’10中谷歌学者谷歌学者数字图书馆数字图书馆
  5. N.Björner公司。整合决策程序以进行临时验证。斯坦福大学博士论文,1999年谷歌学者谷歌学者
  6. N.Björner、V.Ganesh、R.Michel和M.Veanes。序列和正则表达式的SMT-LIB格式。2012年SMT研讨会。谷歌学者谷歌学者
  7. N.Björner、N.Tillmann和A.Voronkov。字符串操作程序的路径可行性分析。在TACAS'09年。谷歌学者谷歌学者
  8. A.Christensen、A.Morler和M.Schwartzbach。字符串表达式的精确分析。在SAS’03中。谷歌学者谷歌学者数字图书馆数字图书馆
  9. V.Ganesh和D.L.Dill。位向量和数组的判定过程。2007年CAV。谷歌学者谷歌学者数字图书馆数字图书馆
  10. V.Ganesh、M.Minnes、A.Solar-Lezama和M.Rinard。带长度约束的单词方程:什么是可判定的?HVC’12。谷歌学者谷歌学者
  11. C.古铁雷斯。求解字符串中的方程:关于马卡宁算法。拉丁文'98谷歌学者谷歌学者
  12. P.Hooimeijer和W.Weimer。正则语言子集约束的决策过程。在PLDI’09中。谷歌学者谷歌学者数字图书馆数字图书馆
  13. P.Hooimeijer和W.Weimer。延迟求解字符串约束。在ASE’10中。谷歌学者谷歌学者数字图书馆数字图书馆
  14. J.贾法尔。最小和完整的单词统一。《美国医学会杂志》37(1),47-851990年。谷歌学者谷歌学者数字图书馆数字图书馆
  15. Y.Khmelevskii。自由半群中的方程。在Trudy Math中。Steklov仪表。107 (1971); 英语翻译。,程序。Steklov Inst.数学。107(1971)中所述。谷歌学者谷歌学者
  16. A.Kiezun、V.Ganesh、P.Guo、P.Hooimeijer和M.Ernst。HAMPI:字符串约束的解算器。在ISSTA'09年。谷歌学者谷歌学者数字图书馆数字图书馆
  17. G.马卡宁。自由半群中方程的可解性问题。《苏联斯博尼克数学》,1977年,第32页,第129页。谷歌学者谷歌学者交叉引用交叉引用
  18. L.Moura和N.Björner。Z3:高效的SMT解决方案。2008年TACAS。谷歌学者谷歌学者
  19. W.Plandowski。一种求解单词方程的高效算法。在STOC’06中。谷歌学者谷歌学者数字图书馆数字图书馆
  20. G.Redelinghuys、W.Visser和J.Geldenhuys。用字符串执行程序的符号。在SAICSIT’12。谷歌学者谷歌学者数字图书馆数字图书馆
  21. P.Saxena、D.Akhawe、S.Hanna、F.Mao、S.McCamant和D.Song。JavaScript的符号执行框架。在SP'10中。谷歌学者谷歌学者数字图书馆数字图书馆
  22. K·舒尔茨。广义方程的单词统一和转换。在J.Autom中。原因。11(2):149-184, 1993.谷歌学者谷歌学者数字图书馆数字图书馆
  23. D.Shannon、I.Ghosh、S.Rajan和S.Khurshid。高效符号执行字符串,以验证DEFECTS’09中的web应用程序。谷歌学者谷歌学者数字图书馆数字图书馆
  24. F.Sun,L.Xu和Z.Su。web应用程序中访问控制漏洞的静态检测。在USENIX Security’11中。谷歌学者谷歌学者数字图书馆数字图书馆
  25. T.Tateishi、M.Pistoia和O.Tripp。基于一元二阶逻辑的路径和索引敏感字符串分析。在ISSTA'11。谷歌学者谷歌学者数字图书馆数字图书馆
  26. M.Veanes、P.Halleux和N.Tillmann。雷克斯:符号正则表达式浏览器。在ICST'10中。谷歌学者谷歌学者数字图书馆数字图书馆
  27. M.Veanes、N.Björner和L.Moura。符号自动机约束求解。在LPAR-17中。谷歌学者谷歌学者数字图书馆数字图书馆
  28. M.Veanes和N.Björner。符号自动机:工具包。在TACAS’12中。谷歌学者谷歌学者数字图书馆数字图书馆
  29. F.Yu、T.Bultan和O.Ibarra。符号字符串验证:在TACAS'09中结合字符串分析和大小分析。谷歌学者谷歌学者数字图书馆数字图书馆
  30. F.Yu、M.Alkhalaf和T.Bultan。陌生人:一个用于PHP的基于自动操作的字符串分析工具。在TACAS’10中。谷歌学者谷歌学者数字图书馆数字图书馆
  31. Y.Zheng和X.Zhang。服务器端脚本中资源争用问题的静态检测。在ICSE’12中。谷歌学者谷歌学者数字图书馆数字图书馆
  32. Y.Zheng和X.Zhang。用于远程代码执行漏洞检测的Web应用程序的路径敏感静态分析。在ICSE’13中。谷歌学者谷歌学者数字图书馆数字图书馆

索引术语

  1. Z3-str:一个用于web应用程序分析的基于Z3的字符串求解器

              建议

              评论

              登录选项

              检查您是否可以通过登录凭据或您的机构访问本文。

              登录

              完全访问权限

              • 发布于

                封面图片ACM会议
                ESEC/FSE 2013:2013年第九届软件工程基础联席会议记录
                2013年8月
                738页
                国际标准图书编号:9781450322379
                内政部:10.1145/2491411

                版权所有©2013 ACM

                如果复制品不是为了盈利或商业利益而制作或分发的,并且复制品的第一页载有本通知和完整引文,则允许免费制作本作品的全部或部分数字或硬拷贝以供个人或课堂使用。必须尊重ACM以外的其他人对本作品组成部分的版权。允许用信用证进行摘要。要以其他方式复制或重新发布,在服务器上发布或重新发布到列表,需要事先获得特定许可和/或付费。从请求权限[电子邮件保护]

                出版商

                计算机协会

                美国纽约州纽约市

                出版历史

                • 出版:2013年8月18日

                权限

                请求有关此文章的权限。

                请求权限

                检查更新

                限定符

                • 研究论文

                接受率

                总体验收率112属于543提交文件,21%

              PDF格式

              以PDF文件查看或下载。

              PDF格式

              电子阅读器

              使用eReader联机查看。

              电子阅读器