首页> 外文OA文献 >Towards Automatic Generation of Vulnerability-Based Signatures
【2h】

Towards Automatic Generation of Vulnerability-Based Signatures

机译:致力于自动生成基于漏洞的签名

摘要

In this paper we explore the problem of creating vulnerability signatures. A vulnerability signature matches all exploits of a given vulnerability, even polymorphic or metamorphic variants. Our work departs from previous approaches by focusing on the semantics of the program and vulnerability exercised by a sample exploit instead of the semantics or syntax of the exploit itself. We show the semantics of a vulnerability define a language which contains all and only those inputs that exploit the vulnerability. A vulnerability signature is a representation (e.g., a regular expression) of the vulnerability language. Unlike exploit-based signatures whose error rate can only be empirically measured for known test cases, the quality of a vulnerability signature can be formally quantified for all possible inputs.We provide a formal definition of a vulnerability signature and investigate the computational complexity of creating and matching vulnerability signatures. We also systematically explore the design space of vulnerability signatures. We identify three central issues in vulnerability-signature creation: how a vulnerability signature represents the set of inputs that may exercise a vulnerability, the vulnerability coverage (i.e., number of vulnerable program paths) that is subject to our analysis during signature creation, and how a vulnerability signature is then created for a given representation and coverage.We propose new data-flow analysis and novel adoption of existing techniques such as constraint solving for automatically generating vulnerability signatures. We have built a prototype system to test our techniques. Our experiments show that we can automatically generate a vulnerability signature using a single exploit which is of much higher quality than previous exploit-based signatures. In addition, our techniques have several other security applications, and thus may be of independent interest.
机译:在本文中,我们探讨了创建漏洞签名的问题。漏洞签名与给定漏洞的所有利用相匹配,甚至是多态或变质变体。我们的工作与以前的方法不同,其工作重点是样本漏洞利用程序的语义和漏洞,而不是漏洞利用本身的语义或语法。我们展示了漏洞的语义,定义了一种语言,该语言仅包含所有利用漏洞的输入。漏洞签名是漏洞语言的一种表示形式(例如,正则表达式)。与基于漏洞利用的签名(只能通过经验测试已知测试用例的错误率)不同,可以对所有可能的输入形式对漏洞签名的质量进行正式量化。我们提供了漏洞签名的正式定义,并研究了创建和创建漏洞的计算复杂性匹配漏洞签名。我们还系统地探索了漏洞签名的设计空间。我们确定了漏洞签名创建过程中的三个核心问题:漏洞签名如何代表可能行使漏洞的输入集;在签名创建过程中要进行分析的漏洞覆盖率(即漏洞程序路径的数量);以及然后针对给定的表示形式和覆盖范围创建一个漏洞签名。我们提出了新的数据流分析方法,并采用了新颖的现有技术,例如用于自动生成漏洞签名的约束解决方案。我们已经建立了一个原型系统来测试我们的技术。我们的实验表明,我们可以使用单个漏洞自动生成漏洞签名,该漏洞的质量要比以前基于漏洞的签名高得多。此外,我们的技术还具有其他几种安全应用程序,因此可能具有独立的利益。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号