20 世纪 80 年代威斯康星大学的巴顿·米

Description of your first forum.
Post Reply
Bappy11
Posts: 483
Joined: Sun Dec 22, 2024 9:29 am

20 世纪 80 年代威斯康星大学的巴顿·米

Post by Bappy11 »

预防胜于治疗...这是模糊测试背后的哲学。其原理是从最多样化、最不可预测的角度测试软件或系统,从而试图在潜在缺陷以有害方式被利用之前识别它们。

任何系统最初都是设计为在安静的环境中运行,没有意外。但在现实生活中,时常会发生上述系统由于不可预料的原因而崩溃的情况。用户输入了软件未预料到的信息,并且由于不知道如何处理这些信息,导致软件崩溃。

程序设计人员面临的问题是,很难预测所涉及的情况。因此,一个完整的行业应运而生,其目标是使系统能够应对各种不可预见的情况。

已经出现的一种测试方法称为“模糊测试”。这是一种自动化测试技术。它涉及将随机数据注入计算机系统并观察其反应。因此,模糊测试可以揭示安全性和性能问题。

深入研究模糊测试
什么是模糊测试器?
模糊测试器是一种自动向程序中注入随机输入以检测潜在异常的程序。

利用模糊测试器,网络安全专家可以在漏洞被黑客利用之前发现它们。然后可以采取措施纠正这些缺陷并防止潜在的攻击。

Fuzzing 一词的起源勒教授在一次严重的风暴中通过电话网络取得了联系。然后他注意到信号受到严重干扰。渐渐地,这种干扰导致系统崩溃。

米勒对此很感兴趣,于是让他的学生使用噪声发生器模拟这个实验,看看这些信号是否会导致UNIX 系统崩溃。他由此创建了第一个模糊测试。然后将这种方法应用于各种计算环境。


模糊测试如何工作?
模糊测试的原理是故意将错误的输入引入系统来识别故障。

模糊测试器依赖于几个关键组件,它们被称为诗人、信使和预言机,阿富汗电报数据 因为它们具有特定的作用:创建、传输和分析测试用例。

一位诗人,生成测试数据(案例测试)。模糊测试器的哲学本质上是,人们不关注已知的漏洞,而是生成尽可能多的测试用例。
将这些案例测试路由到目标软件的信使。
一个oracle,它检测是否发生了故障。如果是,它会提供信息以便可以重现、分析和纠正问题。
了解模糊测试
三种类型的“测试用例”
诗人根据不断演变的模式创建随机数据,或通过对协议、文件格式或API的深刻理解来生成数据。有三种方法:

随机模糊测试:完全随机的数据。
进化模糊测试:故意将异常引入有效输入并根据结果进行调整。
生成模糊测试:基于对系统规则的理解,以系统地打破规则为原则。
模糊测试的好处
模糊测试有很多优点。
Post Reply