首页
社区
课程
招聘
[原创]使用libfuzzer对msvc编译的程序进行白盒fuzz
发表于: 2023-9-6 17:57 4651

[原创]使用libfuzzer对msvc编译的程序进行白盒fuzz

2023-9-6 17:57
4651

一、介绍

libfuzzer是llvm提供的工具之一,用于白盒fuzz,原理是编译插桩,写测试用例很方便,然而由于是llvm里的工具所以无法直接对msvc编译的程序使用。
经过反复踩坑,找到了使用libfuzzer对msvc编译的程序进行白盒fuzz的办法。

二、原理

添加一些编译选项,链接一些vs2019自带的asan、sancov、libfuzzer相关的链接库,其中我对libfuzzer库进行了一些修改,使其更好用一些。

三、使用限制

由于msvc和llvm的一些东西不兼容,所以目前限制还是很多的,首先由于asan更改了一些基础库的实现,所以项目必须用/MT进行编译,接着编译配置必须是RelWithDebInfo,最后编译选项LTCG必须关闭。

三、项目

b9dK9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6Y4K9i4c8Z5N6h3u0Q4x3X3g2U0L8$3#2Q4x3V1k6f1k6h3y4Z5c8X3!0J5b7X3q4V1i4K6u0r3g2$3W2F1e0i4y4$3j5@1I4A6j5X3k6#2P5Y4A6W2M7R3`.`.
里面包含一些fuzz示例。


[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

最后于 2023-9-11 11:14 被TechForBad编辑 ,原因: 完善补充
收藏
免费 0
支持
分享
最新回复 (0)
游客
登录 | 注册 方可回帖
返回