toralf/fuzz-utils
GitHub: toralf/fuzz-utils
基于 AFL++ 的 Tor 和 OpenSSL 自动化模糊测试工具,支持持续运行与沙箱隔离。
Stars: 1 | Forks: 0
[](https://github.com/vshymanskyy/StandWithUkraine/blob/main/docs/README.md)
# fuzz-utils
使用 [AFL++](https://github.com/AFLplusplus/AFLplusplus/) 对 Tor 和 OpenSSL 进行模糊测试
`fuzz.sh` 是入口点。
`fuzz-*.sh` 提供了特定目标的功能和 cgroup 处理。
目录 `/tmp/torproject/fuzzing` 用作输出。
发现的漏洞将从此处同步到 `$HOME/findings`。
它应该是一个 _tmpfs_,以避免对磁盘造成沉重的 I/O 压力。
`fuzz-cgroup.sh` 需要 root 权限。
因此,请修改您本地的 sudoers.d 文件。
Cronjob 示例:
```
$ crontab -l
# crontab torproject
MAILTO=
@reboot sleep 10; ~/start.sh
# (a)bort (f)inding (o)penssl (p)lot (t)or
*/5 * * * * f=/tmp/fuzz.$(date +\%s).$$.log; for s in o t; do /opt/fuzz-utils/fuzz.sh -p -f -$s 1 &>$f; [[ -s $f ]] && cat $f; done; rm $f; sleep 20; /opt/fuzz-utils/fuzz.sh -a
```
启动文件示例:
```
#!/bin/bash
# set -x
set -euf
export LANG=C.utf8
export PATH=/usr/sbin:/usr/bin:/sbin/:/bin
mkdir -p /tmp/torproject/fuzzing
echo '
Hello World.
' >/tmp/torproject/index.html echo -e "User-agent: *\nDisallow: /\n" >/tmp/torproject/robots.txt nice /opt/fuzz-utils/bwrap.sh /opt/fuzz-utils/simple-http-server.py --address 65.21.94.49 --port 12345 --directory /tmp/torproject/ &>/tmp/web-fuzz.log & # fuzzers 通过 cron 启动 ``` 每次调用沙箱需要 2 个或更多的 namespace 条目,因此请将 sysctl 值 _user.max_user_namespaces_ 设置为不小于 2。标签:AFL++, ASN解析, Cgroup, Cron, Cutter, Fuzzing, OpenSSL, Tor, 安全测试, 安全测试工具, 密码学, 手动系统调用, 攻击性安全, 文档安全, 沙箱, 渗透测试辅助, 网络安全, 网络安全, 脚本工具, 逆向工具, 隐私保护, 隐私保护