模糊测试工具Sulley开发指南(1)——安装Sulley(多图,超详细)
本教程是针对的是windows上面的安装,至于其他系统的安装有时间的话会贴出来,本教程翻译自OpenRCE/Sulley-GitHub-Wiki官网教程,但是里面有一些错误我会更正指出。值得一提是,我是在win10 64位系统
下面完成本次安装和运行(64位系统运行安装32位程序是可以的,反之却不行的哟),所以本教程对任何系统都适用。
咱们先来看看安装Sulley需要什么的工具,如下表:
库/工具 | 描述 | 下载链接 |
---|---|---|
MinGW | MinGW,是Minimalist GNU for Windows的缩写。它是一个可自由使用和自由发布的Windows特定头文件和使用GNU工具集导入库的集合,允许你在GNU/Linux和Windows平台生成本地的Windows程序而不需要第三方C运行时(C Runtime)库。 | MinGW|MinGW预编译的二进制安装包 |
Python | 这个就不多解释了,整个Sulley都是用python来写的,推荐python版本2.7.9中的32位版本 因为对于后面的库来说兼容性最强,安装的时候bug也少 | Python 2.7.9 x86 |Python 2.7.9 x64 |
Git | 这个工具不用多说了,用来获取Sulley源项目 | Git |
Pydbg | 我们使用的Sulley是OpenRCE里面三大项目之一,作为三大项目的另一知名项目,它的影响力是很大的,它是用纯python来编写的,32位调试器,相当于WinDbg. | git clone https://github.com/Fitblip/pydbg.git (是OpenRCE/pydbg的一个分支,包含安装脚本) |
libdasm | Pydbg依赖于pydasm,libdasm包含pydasm。所以我们必须安装编译libdasm,值得注意的是sulley官网给的libdasm的下载链接已经失效了,在这里我们给出新的链接 | libdasm google上的,可能要翻墙|我自己上传的 |
PCapy | 和pypcap一样都是不同的封装,都是用的libpcap;pcapy是某些人对pypcap不满才搞出来的,更容易使用的版本。 | git clone https://github.com/CoreSecurity/pcapy.git |
WinPcap | winpcap(windows packet capture)是windows平台下一个免费,公共的网络访问系统。开发winpcap这个项目的目的在于为win32应用程序提供访问网络底层的能力。它用于windows系统下的直接的网络编程。 | WinPcap |
Impacket | Python第三方网络协议实现包,提供很多底层接口,实现例如NMB, SMB1-3 and MS-DCERPC等底层的协议 | git clone https://github.com/CoreSecurity/impacket.git |
所以,我们要完成sulley的安装,必须完成
- pydbg(调试模块)
- pcapy(抓包模块)
- Impacket(网络协议包模块,底层网络)
Step 1 下载和安装MinGW
推荐直接使用预编译好的二进制安装包,如果您使用了第一种方式,在安装界面选择package里面勾选:1)mingw32-base - Base Package 2)mingw32-gcc-g++ - C++ Compiler 3)mingw32-gcc-objc - Objective-C Compiler
安装MinGW的过程和一般程序的安装过程一样,值得注意的是在勾选界面进行如图所示的选择就可以了:
Step 2 下载和安装Python
安装过程我就不详细说了,网上有很多教程的,这里我还是推荐安装2.7.9 32位版本。
Step 3 下载和安装Git(可选)
这是可选的步骤,如果你下载了Git,那么获取github上面的项目会变得简单,因为后面的项目只会用到git clone这个命令;如果你没下载Git,那也没关系,在之后的git clone https://xxxxx.com命令直接打开https://xxxxx.com这个网站就行,然后点击右上角的download下载zip包就行啦。
Step 4 设置环境变量
接下来就是配置环境变量,使得git python MinGW命令能在cmd中使用,如图:
Step 5 git下载pydbg并安装
通过git clone https://github.com/Fitblip/pydbg.git 命令来获取pydbg的最新版本,如图:
往后的git clone命令的结果图片就不贴出来了,都是这样操作的
接着,进入pydbg目录,在cmd目录下执行python setup.py install命令,如图:
是不是感觉已经安装完pydbg了?其实并没有,就像上文说的,pydbg依赖于libdasm,所以是没有完全安装完的,如果我们此时进入python命令行,执行import pydbg命令会出现Import Error错误!,如图:
Step 6 下载libdasm并安装
这一步就是安装libdasm,先安装其extension模块,再安装其主要模块,这里是非常容易出现错误的地方,如果出现了什么bug可以在底下评论,大家一起解决。
下载的libdasm解压后目录\pydasm\>python setup.py build_ext -c mingw32running build_extbuilding 'pydasm' extension
...省略...
下载的libdasm解压后目录\pydasm\>python setup.py installrunning installrunning buildrunning build_extrunning install_libcopying build\lib.win32-2.7\pydasm.pyd -> C:\python27\Lib\site-packagesrunning install_egg_infoWriting C:\python27\Lib\site-packages\pydasm-1.5-py2.7.egg-info...省略...
如图所示:
我们现在试试import pydbg和import pydasm会不会出错,如下图:如图所示:
Step 7 下载Sulley并验证
我们开始下载Sulley主工程,git clone https://github.com/OpenRCE/sulley.git 下载完以后进入sulley目录,运行如下命令来检测process_monitor.py是否能运行,没有import errors:
下载Sulley所在目录>python process_monitor.py
ERR> USAGE: process_monitor.py<-c|--crash_bin FILENAME> filename to serialize crash bin class to[-p|--proc_name NAME] process name to search for and attach to[-i|--ignore_pid PID] ignore this PID when searching for the target process[-l|--log_level LEVEL] log level (default 1), increase for more verbosity[--port PORT] TCP port to bind this agent to
Step 8 下载Pcapy和WinPcap Dev Kit
git clone https://github.com/CoreSecurity/pcapy.git 和下载 WinPcap Dev Kit(WinPcap开发者版本,主要使用到这里的头文件和lib),并把下载的WinPack放在c:\Sulley\目录下(当然你可以选择自己的方式)。
Step 9 编译安装pcapy
进入pcapy的目录,运行以下代码:
pcapy的目录>python setup.py build_ext -c mingw32 -I "C:\sulley\WpdPack\Include" -L "C:\sulley\WpdPack\Lib"(主要是包含这两个目录)
running build_ext
building 'pcapy' extension
creating build
creating build\temp.win32-2.7
creating build\temp.win32-2.7\Release
creating build\temp.win32-2.7\Release\win32
...省略...
pcapy的目录>python setup.py install
running install
running build
running build_ext
running install_lib
copying build\lib.win32-2.7\pcapy.pyd -> C:\python27\Lib\site-packages
running install_data
creating C:\python27\share
creating C:\python27\share\doc
creating C:\python27\share\doc\pcapy
copying README -> C:\python27\share\doc\pcapy
...省略...
这里是非常容易出现错误的地方,如果出现了什么bug可以在底下评论,大家一起解决。
Step 10 下载和安装WinPcap
您是不是感觉已经pcapy安装完了呢,其实并没有,如果此时我们进Python命令行执行import pcapy命令会发现Import Error:DLL not fond错误,如图:
这是因为我们还没有安装WinPcap,这些DLL就缺失了,下载WinPcap,然后进行安装(一直next就ok拉),最后我们再次运行一下import pcapy命令,就会发现没有任何问题啦,如图:
Step 11 下载和安装Impacket
git clone https://github.com/CoreSecurity/impacket.git下载Impacket包,然后进入目录执行install命令:
Impacket的目录>python setup.py install
running install
running build
running build_py
creating build
creating build\lib
creating build\lib\impacket
copying impacket\ImpactDecoder.py -> build\lib\impacket
copying impacket\ImpactPacket.py -> build\lib\impacket
copying impacket\nmb.py -> build\lib\impacket
copying impacket\ntlm.py -> build\lib\impacket
copying impacket\smb.py -> build\lib\impacket
copying impacket\structure.py -> build\lib\impacket
copying impacket\uuid.py -> build\lib\impacket
copying impacket\__init__.py -> build\lib\impacket
creating build\lib\impacket\dcerpc
...省略...
Step 12 最后一步-运行network_monitor.py
最后就是运行network_monitor.py来确保模块安装成功!如图所示:
其中Network Device List就是网卡列表啦,OK,大功告成!我们可以start fuzzing!
PS:在这里我提供安装sulley所需的上述所有的安装包供大家下载,懒人必备:所有安装包打包
后记
Sulley的安装步骤就是麻烦,接下来我会更新两篇内容,一篇是主要介绍一下sulley的一些概念,第二篇真实案例,来对那些有漏洞的ftp服务器来进行fuzz测试,希望大家继续关注。
模糊测试工具Sulley开发指南(1)——安装Sulley(多图,超详细)相关推荐
- stretchblt 模糊_微软开源持续开发模糊测试工具OneFuzz
点击蓝字关注我们 近日,微软开源了OneFuzz--一个微软内部使用的,由开发人员驱动的持续开发模糊测试平台.开源后,世界各地的开发人员都可以通过OneFuzz直接从其开发系统接收模糊测试结果. 模糊 ...
- 2021年软件测试工具总结——模糊测试工具
~ 什么是模糊测试?~ 模糊测试(Fuzz Testing)是一种自动化的软件测试技术,最初是由威斯康辛大学的巴顿·米勒于1989年开发的,通常用于识别程序中的潜在漏洞.模糊测试的核心是自动或半自动的 ...
- 他们从各大操作系统中发现了26个 USB 漏洞,用的是这款模糊测试工具
聚焦源代码安全,网罗国内外最新资讯! 编译:奇安信代码卫士团队 普渡大学的研究员 Hui Peng 和瑞士洛桑联邦理工学院的研究员 Mathias Payer 在多种操作系统(如 Linux.mac ...
- Wfuzz模糊测试工具-能模糊的地方都能模糊
作者:小刚 一位苦于信息安全的萌新小白帽,记得关注给个赞,谢谢 本实验仅用于信息防御教学,切勿用于其它用途 Wfuzz模糊测试-URL爆破扫描 WFUZZ wfuzz参数 wfuzz使用方法 1.最基 ...
- Web模糊测试工具Powerfuzzer
Web模糊测试工具Powerfuzzer Powerfuzzer是Kali Linux自带的一款Web模糊测试工具.该工具基于各种开源模糊测试工具构建,集成了大量安全信息.该工具高度智能化,它能根据用 ...
- cpu针脚测试软件,Sandsifter:一款专门针对X86处理器的模糊测试工具
前言 今天给大家介绍的是一款名叫Sandsifter的x86处理器模糊测试工具.该工具可以通过系统生成的机器码来搜索处理器指令集,并通过监控异常数据来审计x86处理器中的隐藏指令和硬件漏洞.Sands ...
- 模糊测试工具defensics
defensics是一个模糊测试工具,百度百科对模糊测试(Fuzzing)的定义是,是一种通过向目标系统提供非预期的输入并监视异常结果来发现软件漏洞的方法.它是通过异常输入的方式触发原来未知的漏洞. ...
- 定向模糊测试工具Beacon基本用法
Beacon是一个定向模糊测试工具,给定行号,能够定向探索行号附近的代码区域.主要思想是采用静态分析的方法获取到与目标有关的变量的最弱前置条件(weakest precondition)的信息,并在相 ...
- 模糊测试工具Simple Fuzzer
模糊测试工具Simple Fuzzer 模糊测试是一种不同于渗透测试的漏洞检测方式.它向目标系统发送各种非预期的输入,然后通过监视异常结果来发现漏洞.Kali Linux虽然作为渗透测试系统平台,但也 ...
- Redis第二集:Linux下安装Redis和测试,包含命令代码和问题处理办法,超详细版
Redis第二集:Linux下安装Redis和测试,包含命令代码和问题处理办法,超详细版 一.资源 Linux下的Redis的下载地址 二.安装与测试 上传至自己的Linux平台 解压安装包 tar ...
最新文章
- [DM] 都是套路: 从上帝视角看透时间序列和数据挖掘
- 判断五个分数等级划分_2021年迎来新高考,你对“赋分等级”了解吗?选科注意这几点...
- Go 开发关键技术指南 | 为什么你要选择 GO?(内含超全知识大图)
- 揭密|淘宝服务端千万级高并发架构的演进之路
- git的clone命令出现fatal:unable to access ‘https://github.comXXXXXXX“:OpenSSL SSL_read:connection was errn
- [转] error LNK2026: 模块对于 SAFESEH 映像是不安全的
- 503.下一个更大元素II(力扣leetcode) 博主可答疑该问题
- 骑士人才系统(qscms)微信公众号配置教程
- react引入html2canvas和jspdf生成PDF打印及下载
- Redis集群之脑裂:一次奇怪的数据丢失
- 小众骑行路线-十里箐
- 按洲划分的国家和地区代码整理 包含:中文名 英文名 洲 首字母 两位英文代码 三位英文代码 三位数据代码 洲
- 2021年中国研究生数学建模竞赛A题(华为公司命题)——相关矩阵组的低复杂度计算和存储建模
- php配置使用pdo,解析php5配置使用pdo
- 特征选择(一)-维数问题与类内距离
- ai自动生成字幕_使用AI对您的会议进行现场字幕
- 消防车从红色变为黄绿色 最初原因竟是这
- 字符串练习(1-16)
- excel搭建产品数据库
- 绘制地图:图形化显示海地地震危机数据
热门文章
- 从公司角度来看,为什么要招实习生?
- 树莓派40pin管脚图
- 卫生事业单位计算机科学与技术,卫生事业单位考试-计算机科学与技术的知识点.doc...
- 蓝牙BQB 认证流程
- 《牧畜王国的兴衰》序
- 做笔记就用印象笔记,支持录音做笔记(附插件下载,一键将网页内容保存笔记中进行编辑)...
- Delphi中类的VMT
- AUTOSAR MCAL解析:MCU
- 跟着团子学SAP SD:项目里程碑开票流程演示(含预收账款“开票”及正式开票) VF01
- 什么是“沙箱”技术?