Fuzz相关技术博客

记录在科研学习 Fuzz 过程中遇到的比较好的博客网站

阅读全文 »

使用QEMU的系统模式进行模拟

当 QEMU 运行在系统模式下时,需要为 QEMU 指定内核镜像、IDE硬盘镜像、内核参数。这样一来,使用 QEMU 模拟的虚拟机才能正常运行。Debian 官网提供了 QEMU 虚拟机各种平台架构的内核镜像、硬盘文件镜像文件的下载。

备注:Debian官网的链接目前还是挂掉的状态,还好有大佬备份下来了arm架构和mips架构的镜像,贴一个网盘链接

链接:https://pan.baidu.com/s/1me2w5d5Qt31Fyi5jS-TKJg?pwd=brkp
提取码:brkp

阅读全文 »

Driller 源码分析

本篇从整体程序的执行流程来分析 Driller 工具的功能,并针对 use_techniques 方法进行了较为详细的解释,理清了 angr 是如何同时应用多个 exploration_techniques 来协同进行符号执行的。

阅读全文 »

python 函数签名

函数签名是指函数的声明部分,包括函数名、参数列表和返回类型注释(可选)。函数签名提供了函数的基本信息,用于描述函数的输入和输出。

在Python中,函数签名可以使用以下格式表示:

1
2
3
def function_name(parameter1: type, parameter2: type, ...) -> return_type:
# 函数体
...
阅读全文 »

Ubunut 安装 SSH 服务

1. 安装所需要的包

运行 SSH 服务器的包由 OpensSSH 的 openssh-server 组件提供:

1
2
sudo apt update && sudo apt upgrade
sudo apt install openssh-server
阅读全文 »

Driller 项目搭建及测试

由于年代久远,参考了好多搭建的博客都失败了,各种各样的问题,这里贴两个时间比较靠后的博客:

https://blog.grimm-co.com/2020/05/guided-fuzzing-with-driller.html

https://n132.github.io/2020/03/04/Driller-Installation.html

换了各种 Ubuntu 版本以及 python 的版本,忙活了一天最后也没搭成功。好在,无意间在 docker 仓库里发现了ZJUchenyuan大佬上传的 driller 的镜像,直接 pull 下来用了,测试能跑通!!!

感谢 Docker,感谢 ZJU 的chenyuan大佬救我狗命Orz!!!

安装好 docker 后直接运行下面的命令,拉取镜像就好了。

1
docker pull zjuchenyuan/driller
阅读全文 »

AFL Qemu模式

记录一下安装 AFL Qemu 模式时踩的坑。

阅读全文 »

SanitizerCoverage官方文档翻译

Introduction

LLVM内置了一个简单的代码覆盖率插桩工具(SanitizerCoverage)。它在函数、基本块和边界级别上插入对用户定义函数的调用。提供了这些回调的默认实现,用于简单的覆盖率报告和可视化。然而,如果您只需要覆盖率的可视化,可能更适合使用SourceBasedCodeCoverage。

阅读全文 »