winafl 工具的编译
至于 winafl 是啥,上网找,有的是说法
这里只说明编译方法。
1:先去github,拿 winafl 代码
GITHUB 地址:https://github.com/googleprojectzero/winafl
git命令:git clone --recursive https://github.com/googleprojectzero/winafl
需要注意的是,一定要把相关的引用项目一起给下载下来
2:编译 winafl 的支持库 DynamoRIO。
具体编译方法,去看这里
https://www.cnblogs.com/suanguade/p/13388818.html
注意:这里其实不编译它也没问题,因为这个插桩库不是必须的,
但是如果要做fuzz,那么就必须,因为fuzz的关键模块 winafl.dll 是需要这个库的
3:打开cmake 配置项目
设置好目录之后,先configure
configure之后,在generate 之前,需要补一个环境变量,就是红框里面的。
路径里面必须要求带有如下文件:DynamoRIOConfig.cmake
之后就可以正常生成项目了。
4:可以用vs2017打开了,开始编译
一共就十来个项目,还算上测试项目,轻松编译完。
至此,就都编译完了。
最主要的工具有两个,
1:afl-fuzz.exe
2:winafl.dll
测试方法:
1:先使用IDA查询 test_gdiplus.exe 程序中main 函数的偏移
偏移是 0x1680
2:使用如下命令对 test_gdiplus.exe 做fuzz
1 | afl-fuzz.exe -i in -o out -D D:\vs2017\dynamorio-master\dynamorio-master\Project\bin32 -t 20000 -- -coverage_module gdiplus.dll -coverage_module WindowsCodecs.dll -fuzz_iterations 5000 -target_module test_gdiplus.exe -target_offset 0x1680 -nargs 2 -- test_gdiplus.exe @@ |
3:程序开始运行了,挺难看的,说明编译没问题
至于怎么用,随便去找找较成吧
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· DeepSeek 开源周回顾「GitHub 热点速览」