AFL模糊测试入门

基本概念 模糊测试简介 Fuzz Testing(Fuzzing,即模糊测试)是一种自动化的软件测试方法,其核心概念是自动生成随机输入到程序中,并监控程序异常(如崩溃、断言失败等),以发现可能的程序错误。 ...

2025年11月30日

AFL源码分析

前言 熟悉了 AFL 的使用之后,接下来应该分析一下 AFL 的源代码来理解 AFL 的 Fuzz 原理。关于 AFL 的源码分析已经有很多前辈珠玉在前了,所以也想过到底要不要写这篇文章。想了想还是打算动笔,也算是对自己学到的东西做总结。 ...

2025年11月30日

Android APP抓包入门

简介 常用工具: Yakit:和 burpsuite 差不多的抓包方式。 Reqable:支持standalone、VPN模式,可绕过系统代理拦截 Flutter。 OkHttp:OkHttp 是Android 最流行的网络库,抓包工具通过 hook 接口来抓包。 r0Capture:hook 抓包通杀脚本。 eCapture:内核级 hook 抓包,无需证书捕获 TLS 明文。 为了能够拦截 TLS/SSL 通信,我们需要我们的代理工具的证书才能被设备信任。通过 android 设置,我们可以轻松地将证书安装到“用户”CA 存储中。 ...

2025年11月30日

Go Fuzz

简介 传统的 AFL、libFuzzer 和 honggfuzz 主要支持用 C/C++ 语言开发的项目。但是现在随着 Rust、Go 等新兴编译型语言的兴起,相应的出现了对这些语言开发的项目进行 Fuzzing 的需求。因此,人们在基于传统的 Fuzz 工具的基础上,逐步为这些语言构建了 Fuzz 工具。 ...

2025年11月30日

IOS逆向入门

越狱 我的设备:iPhone X,IOS 16.1.1 越狱(Jailbreak)是对 iOS 系统安全/限制的一种突破,目的是获取更高权限(如 root)和安装非 App Store 的软件(侧载)。越狱常用于安全研究、定制系统或安装调试工具(例如 Frida)。 ...

2025年11月30日

libFuzzer浅探

简介 libFuzzer 是一个基于覆盖率引导的进化模糊测试引擎,旨在通过代码覆盖优化输入数据,从而发现潜在的程序漏洞。libFuzzer 以库的形式链接到目标代码中,专门用于测试指定的目标函数。通过动态地将 fuzz 输入提供给目标函数,libFuzzer 能够有效地引导测试过程,优化覆盖的路径,并且通常用于 C/C++ 项目的单元测试。 ...

2025年11月30日

Linux Kernel Pwn 入门

基础知识 内核是什么? 操作系统内核是一个特殊的程序,其用来管理软件发起的 IO 请求,将其转换为指令交由 CPU 执行,是现代操作系统最基本的部分。 其功能主要有以下两点: 控制并与硬件进行交互; 提供应用能运行的环境。 intel CPU 将 CPU 的特权级别分为 4 个级别:Ring 0、Ring 1、Ring 2、Ring 3。 ...

2025年11月30日

LLM 安全入门

越狱攻击 大模型天生缺乏“指令”和“信息”的边界分辨能力,它倾向于将所有输入视作需要整合的素材,而不是区分哪些是强约束(必须遵守)与弱参考(仅供辅助)的部分。 ...

2025年11月30日

Rust Fuzz

简介 传统的 AFL、libFuzzer 和 honggfuzz 主要支持用 C/C++ 语言开发的项目。但是现在随着 Rust、Go 等新兴编译型语言的兴起,相应的出现了对这些语言开发的项目进行 Fuzz 的需求。因此,人们在基于传统的 Fuzz 思想的基础上,逐步为这些语言构建了 Fuzz 工具。本文所要学习的 cargo-fuzz 正是如此。 ...

2025年11月30日

Syzkaller初探

简介 基本知识 Syzkaller 是 Google 的安全研究人员开发并维护的开源内核 Fuzz 工具,目前主要由 dvyukov 维护。它是使用 Go 语言编写的,也有少部分 C 代码,具有部署快速、使用简便的特点,同时还支持多种操作系统如:Linux、Android、Windows、openbsd、darwin 等系统。不过它支持最全面的还是 Linux 系统。 ...

2025年11月30日