1、简介
- Sulley 是由 Pedram Amini 和 Aaron Portnoy 开发的开源工具。它以 Python 编写,可以轻松地在不同平台上部署和使用。Sulley 提供了一个灵活且功能强大的框架,允许用户定义协议消息的结构、字段类型、边界条件和模糊测试策略。用户可以使用 Sulley 来测试各种网络协议,如 HTTP、FTP、SMTP、以及自定义的二进制协议等。
- Sulley已经停止了维护,但Boofuzz继承了它。
- 安装它是真的麻烦啊!!!
2、安装
- 尝试在本机使用Anaconda,但是下载MinGW时与anaconda中的python2.7不匹配,失败。
- 尝试过在新建的Win10虚拟机中安装,缺少很多dll,失败。
2.1、安装虚拟机
- 使用VMware新建Win7-64bit的虚拟机。
- 【注】一定要安装VMware Tools,但是Win7安装这个工具会出很多问题,具体解决办法网上有很多。
- 教程:在虚拟机vmware中安装windows7保姆级教程_win7虚拟机-CSDN博客
2.2、安装python
- 推荐安装python2.7.9,32位版本。(一定要32位的python)
- 【注】下面为了方便,所有文件我都是在本机上下载好,再直接拖到虚拟机中的。
- 下载地址:Python Release Python 2.7.9 | Python.org
- 添加环境变量:
- (python的安装地址)
- 测试:
2.3、安装MinGW
- 下载地址:MinGW
- 它会自动与python绑定,一直next就行。
2.4、安装pydbg
- 在C盘新建一个sulley_base文件夹。 为了方便,我都是在本机上下载文件,然后拖到虚拟机中。
- 【注】之前尝试过很多网上的方法,但是都报下面的错误。可能是网上的pydasm和pydbg不兼容。最后在git上找到一个可以直接安装使用的。
- 下载地址:pydbg-pydasm-paimei
-
git clone https://github.com/reider-roque/pydbg-pydasm-paimei.git
-
- 使用本机下载,解压好后,拖到虚拟机的sulley_base下。
- 进入C:\sulley_base\pydbg-pydasm-paimei,打开cmd。
- 执行下面命令。
-
python setup.py install
-
- 验证:
2.5、下载sulley
- 从github上下载sulley源代码,地址:Sulley下载地址。
-
git clone https://github.com/OpenRCE/sulley.git
-
- 同样在本机下载,拖到C:\sulley_base\中。
2.6、下载Pcapy
- 下载地址:pcapy · PyPI
- 同样在本机下载,解压后,放到C:\sulley_base\中。
2.7、下载WinPcap开发工具包
- 下载地址:WinPcap 的 ·开发人员资源
- 同样在本机下载,解压后,拖到C:\sulley_base\中。
2.8、安装Pcapy
- 进入C:\sulley_base\pcapy-0.10.8\,打开cmd。
-
python setup.py build_ext -c mingw32 -I "C:\sulley_base\WpdPack\Include" -L "C:\sulley_base\WpdPack\Lib" python setup.py install
- 【注】注意WpdPack的路径名。
-
2.9、安装WinPcap
- 下载地址:WinPcap 4.1.2 · Download
- 还是一样,本机下好拖到虚拟机中安装,一直next就行。
- 检测:
-
python import pcapy
- 报错:
- 解决办法:
- 使用工具检测其缺失的DLL。地址:【免费】Windows下的DLL检测工具资源
- 将下载的工具解压好拖到虚拟机中。打开工具,将生成的pcapy.pyd文件拖到检测工具中。
- 缺少4个DLL。
- 在网上下载对应的DLL,将它们放在C:\Windows\SysWOW64中,重启电脑。
- 下载地址:3322软件下载站
- 再次用工具检测,如果还缺少,就继续下载对应的dll,直到不缺少为止。
- 再次检测,成功。
-
2.10、安装Impacket
- git下载:
-
git clone https://github.com/fortra/impacket.git
-
- 同样在本机下载,拖到C:\sulley_base\中。
- 【注】拖过去前,先把虚拟机中的安全防护关掉。
- 进入C:\sulley_base\impacket。
-
python setup.py install
-
- 这个过程可能会出现timeout或找不到包,使用pip单独安装超时的包(什么包出错安装什么包)。例如:flask、pycryptodomex、pyasn1_modules、future、dnspython等。
- 【注】如果pip失败,可能要更新pip的版本。
- python2.7对应的版本为:setuptools-0.9.8、pip-20.3.4
- 【注】如果pip失败,可能要更新pip的版本。
- 再执行python setup.py install检测,成功。
2.11、运行network_monitor.py
- 进入C:\sulley_base\sulley,打开cmd。
-
python network_monitor.py
- 安装成功!!!!!