火星科技网您的位置:首页 >人工智能 >

ReDoS漏洞的高性能检测工具

导读 正则表达式(regexes)广泛用于计算机科学的不同领域。然而,正则表达式拒绝服务(ReDoS)漏洞形成了一类常见且严重的算法复杂性攻击。现有的Re

正则表达式(regexes)广泛用于计算机科学的不同领域。然而,正则表达式拒绝服务(ReDoS)漏洞形成了一类常见且严重的算法复杂性攻击。现有的ReDoS漏洞检测工具由于缺乏正式的、全面的ReDoS漏洞检测条件,存在精度不高或召回率低的缺陷。

软件所陈海明教授带领的研究团队开发了高性能的ReDoS漏洞检测工具。

他们的研究发表在 2021 年 USENIX 安全研讨会上。

通过对海量ReDoS-vulnerable regexes的检测,Chen的团队提出了ReDoS-vulnerability检测条件,即ReDoS-vulnerability patterns,并给出了正式触发这些模式的必要条件。

在此基础上,他们开发了静态和动态相结合的ReDoS-漏洞检测算法,并设计了ReDoS-漏洞检测工具ReDoSHunter。

ReDoSHunter 可以在一个易受攻击的正则表达式中查明多个根本原因,规定漏洞的程度并生成攻击触发字符串等。它在具有 37,651 个正则表达式的 Corpus、RegExLib 和 Snort 数据集上实现了 100% 的准确率和召回率。

在检测公共漏洞和暴露 (CVE) 中公开确认的实际漏洞时,ReDoSHunter 可以检测 100% 与 ReDoS 相关的 CVE。

在他们之前的研究中,Chen 的团队提出了一个示例编程框架 FlashRegex,用于通过合成或修复给定示例来生成反 ReDoS 正则表达式。它是第一个将正则表达式合成和修复与 ReDoS 漏洞意识相结合的框架。

FlashRegex 可以有效地生成或修复没有 ReDoS 漏洞的正则表达式,并且在修复的正则表达式中有 0 个 ReDoS 漏洞。

这项名为“FlashRegex:从示例中推导出反ReDoS正则表达式”的研究已在 ASE 2020 上发布。

标签:

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如有侵权行为,请第一时间联系我们修改或删除,多谢。