模糊测试教程之浅记录一次Fuzzing挖洞实战
Posted 鸿渐之翼
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了模糊测试教程之浅记录一次Fuzzing挖洞实战相关的知识,希望对你有一定的参考价值。
敬告:
《中华人民共和国刑法》第三百八十六条【破坏计算机系统罪;网络服务渎职罪】违反国家规定,对计算机信息系统功能进行删除、修改、增加、干扰,造成计算机系统不能正常运行,后果严重的,处五年以下有期徒刑或者拘役;后果特别严重的,处五年以上有期徒刑。
违反国家规定,对计算机系统中存储、处理或者传输的数据和应用程序进行删除、修改、增加的操作,后果严重的,依照前款规定处罚。
故意制作、传播计算机病毒等破坏性程序,影响计算机系统正常运行,后严重的,依照第一款规定处罚。
单位犯前三款罪的,对单位判处罚金,对其直接负责的主管人员和其他直接负责人员,依照第一款的规定处罚。
免责声明:
本博文仅供安全研究与教学之用,使用者将其信息做其他用途,由使用者承担全部法律及连带责任,CSDN博客平台及博主鸿渐之翼不承担任何法律及连带责任。声明:本文仅供开发者与信息安全从业者学习参考,请遵守行业道德底线。
实验平台:ubuntu Linux
实验工具:AFL gcc clang LLVM
AFL安装教程:
wget http
://lcamtuf.coredump.cx/afl/releases/afl-latest.tgz tar -xzvf afl-latest.tgz
cd afl-2.52b/
make
AFL 利用LLVM功能可以提高模糊测试效率。
LLVM的命名最早源自于底层虚拟机器(Low Level Virtual Machine)
LLVM最初被用来取代GCC中的程式码产生器[16],许多GCC的前端已经可以与其运行,LLVM目前支援Ada、C语言、C++、D语言、Fortran、Haskell、Julia、Objective-C、Rust及Swift的编译,它使用许多的编译器,有些来自4.0.1及4.2的GCC。
此处参考维基百科wikipedia
安装LLVM
cd afl-2.51b/llvm_mode/
sudo apt-get install llvm-dev llvm
make
cd ..
make
sudo make install
设置目标
这是我测试的程序,这里放一张图:
我们将测试的程序文件fuzzgoats放到下载好的afl-2.5b目录下
使用 AFL 的编译器编译应用程序,我们必须明确提及使用哪一个。通常使用afl-clang-fast但也可以使用afl-clang-fast++,afl-gcc或afl-g++取决于用例。我们将使用afl-clang-fast:
make CC=afl-clang-fast
细心的你会发现这里有几个文件夹,他们分别是afl_out,afl_in
afl_out :
TMD跑程序ing,明天在写博客
以上是关于模糊测试教程之浅记录一次Fuzzing挖洞实战的主要内容,如果未能解决你的问题,请参考以下文章