首页> 外文期刊>ACM transactions on software engineering and methodology >Path- and Index-Sensitive String Analysis Based on Monadic Second-Order Logic
【24h】

Path- and Index-Sensitive String Analysis Based on Monadic Second-Order Logic

机译:基于单声道二阶逻辑的路径和索引敏感字符串分析

获取原文
获取原文并翻译 | 示例

摘要

We propose a novel technique for statically verifying the strings generated by a program. The verification is conducted by encoding the program in Monadic Second-order Logic (M2L). We use M2L to describe constraints among program variables and to abstract built-in string operations. Once we encode a program in M2L, a theorem prover for M2L, such as MONA, can automatically check if a string generated by the program satisfies a given specification, and if not, exhibit a counterexample. With this approach, we can naturally encode relationships among strings, accounting also for cases in which a program manipulates strings using indices. In addition, our string analysis is path sensitive in that it accounts for the effects of string and Boolean comparisons, as well as regular-expression matches. We have implemented our string analysis algorithm, and used it to augment an industrial security analysis for Web applications by automatically detecting and verifying sanitizers-methods that eliminate malicious patterns from untrusted strings, making these strings safe to use in security-sensitive operations. On the 8 benchmarks we analyzed, our string analyzer discovered 128 previously unknown sanitizers, compared to 71 sanitizers detected bv a previously presented string analysis.
机译:我们提出了一种用于静态验证程序生成的字符串的新颖技术。通过以Monadic二阶逻辑(M2L)对程序进行编码来进行验证。我们使用M2L来描述程序变量之间的约束并抽象出内置的字符串操作。一旦我们在M2L中对程序进行编码,M2L的定理证明者(例如MONA)就可以自动检查该程序生成的字符串是否满足给定的规范,如果不满足,则显示反例。通过这种方法,我们可以自然地对字符串之间的关系进行编码,还可以考虑程序使用索引操作字符串的情况。另外,我们的字符串分析是路径敏感的,因为它考虑了字符串和布尔比较以及正则表达式匹配的影响。我们已经实现了字符串分析算法,并通过自动检测和验证清理程序方法(用于消除不受信任的字符串中的恶意模式)来增强Web应用程序的工业安全性分析,从而使这些字符串在安全敏感的操作中安全使用。在我们分析的8个基准测试中,我们的字符串分析仪发现了128个以前未知的消毒剂,而以前使用的字符串分析检测到71个消毒剂。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号