物理科技生物学-PHYICA

新工具自动发现缓冲区免费手机私人高清影院溢出漏洞

技术工程 2021-12-18 21:54:57

overflowCredit:pix abay/CC0 Public Domain 1988年,当互联网还处于初级阶段时,一种被称为莫里斯蠕虫的恶意软件在两天内感染了近10%的互联网,根据政府问责办公室的数据,最终造成了10万至1000万美元的损失。莫里斯蠕虫事件通常被称为一种特定网络攻击的“大爹”,这种攻击至今仍很常见:缓冲区溢出。简单地说,当一个计算机程序收到一个请求,要求它处理的数据超过它的物理内存一次处理所有数据的能力,并将多余的数据放入一个“缓冲区”时,就发生了典型的缓冲区溢出。缓冲区本身的容量是有限的,所以如果缓冲区无法处理多余的内容,就会“溢出”或崩溃。想象一下,将三加仑的水倒入一个两加仑的桶中;事情变得一团糟。

“目标是自动发现导致Rust库中安全漏洞的内存bug,”贾说。"手动检查这些错误是低效和耗时的."

他们的工具在用越来越流行的Rust编程语言编写的软件库中工作,该语言标榜自己既安全又高效。

贾说:“这是一种高级语言,但只有按照Rust的严格习惯用法来写,它才会起作用。

Rust开发人员通常需要复杂的数据结构来开发他们的软件。但是这些复杂的数据结构和它们的操作通常是用“不安全的”Rust编写的,Rust编译器不会检查内存安全漏洞。这是锡鲁斯特的切入点;该工具可以自动生成库API的单元测试,并测试这些库实现的内存缺陷。

“我们将SyRust应用于30个流行的库,发现了四个新的bug,”贾说。“鉴于这些库已经用Rust编写并经过测试,这意味着程序本身一开始就非常健壮,我们预计会发现少量错误。”

贾说,虽然这个工具还不完善,但它是朝着正确方向迈出的一步。例如,该工具没有生成足够的测试来引出所有可能的行为来确保程序没有错误。

“如果我知道我列举了所有可能的行为,并且我没有发现任何bug,那么我很高兴,”贾说。“这将意味着库确实没有bug,但现在我不知道我已经测试了多少,也不知道我应该再测试多少。”

展望未来,贾表示,该团队正在努力改进他们所谓的“勇气提升”测试方法。这种“更大的勇气”将确保在测试过程中覆盖更多的区域,让用户更有信心发现大部分(如果不是全部的话)缺陷。

来源:由phyica.com整理转载自PH,转载请保留出处和链接!

本文链接:http://www.phyica.com/jishugongcheng/6140.html

发表评论

用户头像 游客
此处应有掌声~

评论列表

还没有评论,快来说点什么吧~