问题标签 [fuzzing]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
3018 浏览

json - 用 Peach 模糊 JSON

我通过阅读http://blog.miguelgrinberg.com/post/designing-a-restful-api-with-python-and-flask在 Flask 中制作了一个基于 REST 的小型 Web 服务 ,现在我想使用 Peach 框架对 JSON 进行模糊测试. 我知道它使用了一个坑文件(XML)来进行模糊测试,但我的小脑袋无法制作可以满足我目的的坑文件。我用谷歌搜索了很多桃坑文件,但一切都是徒劳的。我需要一个坑文件,或者任何人都可以告诉我如何创建一个坑文件来模糊有效载荷。

0 投票
1 回答
128 浏览

c++ - 记录失败的模糊测试以便稍后重新执行

我正在寻找一种更好的方法来保存模糊测试的有趣结果,以便以后重复。当前的计划是将失败的输入序列化并将其作为测试用例写出来。假设我们要测试:

假设这个函数在任意结构中使用半随机数据运行了几千次并且失败了两次。我希望能够重现失败的案例,以确定错误修复是否成功。

我可以看到实现这一目标的两种策略:

  1. 强制确定性 - 存储随机种子,记下哪个测试编号失败
  2. 将导致失败的结构持久存储在某处

选项 1 需要充分注意如何生成模糊测试用例以实现可重复性,并在重新播种随机数生成器时出现一些混乱。选项 2 需要一些繁琐的代码生成,可能通过序列化库减少。我希望听到有我看不到的第三种选择。

我对选项 2 的计划本质上是将结构序列化为字符数组,将所述数组写入文本文件,然后将其读回并按需转换为结构。以下是 POD 的概念验证,更复杂的类型需要更复杂的序列化。示例是 C,但也欢迎基于 C++ 的答案。

在执行期间,当(模糊)测试用例失败时,副作用之一是将输入结构转换为字节数组(如上)并将类似以下内容写入文件,该文件随后可以成为确定性的一部分测试套件:

我相信如果另一个值是 char 数组,则通过联合进行类型双关是有效的。当函数输入不是普通的旧数据时,(反)序列化步骤变得相当复杂,但一般策略仍然可用。将测试用例存储为 ascii 可能会产生一些相当大的文本文件。

在花时间设置基础设施以执行上述操作(主要是代码生成器,对测试框架进行一些修改)之前,似乎值得询问社区是否有已知的更好方法。我怀疑我是第一个认为可重复的模糊测试是个好主意的人!

更改为 C++ 意味着模板而不是外部代码生成器,并在 BOOST 中找到一个对 stl 友好的序列化库,但不会改变“如何最好地保存失败的模糊测试结果?”的基本查询。

谢谢

0 投票
1 回答
33 浏览

file - 如何从一种文件类型中收集大量文件?

我试图模糊一些工具,但我需要大量的 .zip 或 .jpg 文件。我已经尝试过像 webripper 这样的爬虫,但它不是很有效(或者我做错了)。有没有更好的方法来获取大量不同的文件?

0 投票
1 回答
1057 浏览

testing - 模糊测试工具是否使用操作系统的 TCP/IP 堆栈?

模糊测试工具会生成格式错误的协议包。他们是否使用自己的 TCP/IP 堆栈来生成这些格式错误的数据包?操作系统的 TCP/IP 堆栈在 Fuzz 测试中是否起任何作用?我正在开发在 Windows 7 操作系统上运行的 MPLS Fuzz 测试工具。该工具正在 Linux 机器上测试 MPLS 堆栈。我的测试工具是否使用 Windows 堆栈?有人告诉我,Windows 不支持 MPLS,但测试工具工作得很好。

0 投票
1 回答
1488 浏览

testing - 使用 Peach Fuzzer 模糊 TCP 数据包

我有两个应用程序,Sender.exe 和 Receiver.exe。我必须模糊发送方与接收方之间发送的 tcp 数据包。

我是 Peach Fuzzer 的初学者。您能否举一个示例(Peach Pit)来说明如何模糊 TCP 数据包。我无法在互联网上找到样本。

0 投票
1 回答
291 浏览

python-2.7 - 我们可以将捕获的数据包作为参数传递给 Socket send() 函数吗

我是网络的初学者。我们有发送者和接收者应用程序。我已经使用 WinDump 捕获了发送方发送给接收方的数据包。

我正在编写一个 python 发送方应用程序,它将模糊发送方发送到接收方的数据包。

我只是想确认一下,我可以直接将使用WinDump获得的数据包数据放到socket send()方法中吗?

说,“arp who-has host1 tell host2”是WinDump得到的数据包

可以写吗

0 投票
1 回答
818 浏览

xml - 使用 Peach / XML 进行模糊测试

我对 peach fuzzer 非常陌生,并且正在尝试将它与 netzob 一起使用来模糊未记录的协议。

我已经成功地将我的 netzob 捕获导出到一个 peach pit xml 文件中,如下所示:

但是,当我运行时,./peach test.xml我收到以下消息:

错误,无法找到名为“PeachzobAddons.Or”的修复程序,FindTypeByAttribute 返回 null

0 投票
1 回答
473 浏览

javascript - javascript修改的OWASP Zap Fuzz参数

您好,我正在使用 OWASP ZAP 2.41(目前是最新版本),我想在基于 JSON 的 POST 中对参数进行模糊测试。

该字段首先插入到 HTML 表单中,但它是用 javascript 加密的,就请求而言,我可以用 ZAP 更改的是加密字段。

我想要的是使用非加密值的蛮力。

我不得不说我可以访问加密字段的 javascript。

有谁知道如何执行此操作?非常感谢。

0 投票
1 回答
4826 浏览

security - AFL warning: Last new path : none yet (odd, check syntax!)

I have this warning

(Last new path : none yet (odd, check syntax!))

in red after I try to fuzzing a file. I have no idea why it happens and I googled with no answers.

My command is like:

0 投票
1 回答
594 浏览

android - 是否可以在 Android 上对蓝牙的 RFCOMM 协议进行模糊测试?

我正在尝试研究是否可以在 android 上对蓝牙的 RFCOMM 协议进行模糊测试。

任何帮助表示赞赏。

谢谢。