toralf/fuzz-utils

GitHub: toralf/fuzz-utils

基于 AFL++ 的 Tor 和 OpenSSL 自动化模糊测试工具,支持持续运行与沙箱隔离。

Stars: 1 | Forks: 0

[![StandWithUkraine](https://static.pigsec.cn/wp-content/uploads/repos/2026/03/45bb7625ab004433.svg)](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, 安全测试, 安全测试工具, 密码学, 手动系统调用, 攻击性安全, 文档安全, 沙箱, 渗透测试辅助, 网络安全, 网络安全, 脚本工具, 逆向工具, 隐私保护, 隐私保护