Este tutorial es para la instalación en Windows. En cuanto a la instalación de otros sistemas, se publicará si hay tiempo. Este tutorial está traducido del tutorial del sitio web oficial OpenRCE / Sulley-GitHub-Wiki , pero hay algunos errores en él que corregiré y señalaré. Vale la pena mencionar que win10 64位系统
completé esta instalación y operación a continuación (los sistemas de 64 bits pueden ejecutar e instalar programas de 32 bits, pero no al revés), por lo que este tutorial es aplicable a cualquier sistema.
Primero echemos un vistazo a las herramientas necesarias para instalar Sulley, como se muestra en la siguiente tabla:
Bibliotecas / Herramientas | descripción | Enlace de descarga |
---|---|---|
MinGW | MinGW es la abreviatura de Minimalist GNU para Windows. Es una colección de bibliotecas de importación y archivos de encabezado específicos de Windows disponibles y distribuidos libremente utilizando el conjunto de herramientas GNU, lo que le permite generar programas nativos de Windows en plataformas GNU / Linux y Windows sin la necesidad de un C Runtime de terceros (C Runtime) Biblioteca. | MinGW | Paquete de instalación binario precompilado de MinGW |
Pitón | No explicaré esto mucho. Todo el Sulley está escrito en Python. Se recomienda la versión de 32 bits de Python 2.7.9 porque tiene la compatibilidad más sólida para las bibliotecas posteriores y tiene menos errores durante la instalación. | Python 2.7.9 x86 | Python 2.7.9 x64 |
Git | No hace falta decir que esta herramienta se utiliza para obtener proyectos fuente de Sulley | Git |
Pydbg | El Sulley que usamos es uno de los tres proyectos principales en OpenRCE. Como otro proyecto muy conocido de los tres proyectos principales, su influencia es muy grande. Está escrito en python puro y un depurador de 32 bits, que es equivalente a WinDbg. | git clone https://github.com/Fitblip/pydbg.git (es una rama de OpenRCE / pydbg, incluido el script de instalación) |
libdasm | Pydbg depende de pydasm, libdasm incluye pydasm. Entonces debemos instalar y compilar libdasm. Vale la pena señalar que el enlace de descarga de libdasm proporcionado por el sitio web oficial de sulley ha caducado. Aquí le damos un nuevo enlace | libdasm en google, puede que tenga que pasar por encima del muro | Lo subí yo mismo |
PCapy | Al igual que pypcap, ambos son paquetes diferentes y ambos usan libpcap; pcapy es una versión que es más fácil de usar porque algunas personas no están satisfechas con pypcap. | clon de git https://github.com/CoreSecurity/pcapy.git |
WinPcap | winpcap (captura de paquetes de Windows) es un sistema de acceso a la red pública y gratuito bajo la plataforma Windows. El propósito de desarrollar winpcap es proporcionar a las aplicaciones win32 la capacidad de acceder a la red subyacente. Se utiliza para la programación de red directa en el sistema Windows. | WinPcap |
Impacket | Paquete de implementación de protocolo de red de terceros Python, que proporciona muchas interfaces de bajo nivel para implementar protocolos de bajo nivel como NMB, SMB1-3 y MS-DCERPC | clon de git https://github.com/CoreSecurity/impacket.git |
Por tanto, debemos completar la instalación de sulley
- pydbg (módulo de depuración)
- pcapy (módulo de captura de paquetes)
- Impacket (módulo de paquete de protocolo de red, red subyacente)
Paso 1 Descargue e instale MinGW
Se recomienda usar el paquete de instalación binario precompilado directamente. Si usa el primer método, seleccione el paquete en la interfaz de instalación: 1) mingw32-base-Base Package 2) mingw32-gcc-g ++ - C ++ Compiler 3) mingw32 -gcc-objc-Objective-C Compilador
El proceso de instalación de MinGW es el mismo que el proceso de instalación de programas generales. Vale la pena señalar que puede seleccionar como se muestra en la figura en la interfaz de verificación:
Paso 2 descarga e instala Python
No entraré en detalles sobre el proceso de instalación. Hay muchos tutoriales en Internet. Aquí todavía recomiendo instalar la versión 2.7.9 de 32 bits.
Paso 3 descarga e instala Git (opcional)
Este es un paso opcional. Si descarga Git, será más fácil obtener el proyecto en github, porque los siguientes proyectos solo usarán el comando git clone; si no descarga Git, está bien. El comando git clone https://xxxxx.com abre directamente el sitio web https://xxxxx.com y luego haz clic en descargar en la esquina superior derecha para descargar el paquete zip.
Paso 4 establecer variables de entorno
El siguiente paso es configurar las variables de entorno para que el comando git python MinGW se pueda usar en cmd, como se muestra en la figura:
Paso 5 git descargar pydbg e instalar
Obtenga la última versión de pydbg a través del comando git clone https://github.com/Fitblip/pydbg.git , como se muestra en la figura:
Las imágenes de resultado de los siguientes comandos git clone no se publicarán, todos se operan así
Luego, ingrese al directorio pydbg y ejecute el comando python setup.py install en el directorio cmd , como se muestra en la figura:
¿Cree que se ha instalado pydbg? En realidad no. Como se mencionó anteriormente, pydbg depende de libdasm, por lo que no está completamente instalado. Si ingresamos la línea de comando de Python en este momento y ejecutamos el comando import pydbg, se producirá un error de importación. , Como se muestra en la figura:
Paso 6 Descarga e instala libdasm
Este paso es instalar libdasm, primero instale su módulo de extensión y luego instale su módulo principal. Este es un lugar muy fácil para cometer errores. Si hay algún error, puede comentar a continuación y podemos resolverlo juntos.
下载的libdasm解压后目录\pydasm\>python setup.py build_ext -c mingw32
running build_ext
building 'pydasm' extension
...省略...
下载的libdasm解压后目录\pydasm\>python setup.py install
running install
running build
running build_ext
running install_lib
copying build\lib.win32-2.7\pydasm.pyd -> C:\python27\Lib\site-packages
running install_egg_info
Writing C:\python27\Lib\site-packages\pydasm-1.5-py2.7.egg-info
...省略...
como muestra la imagen:
Intentemos ahora si la importación de pydbg y la importación de pydasm fallan, como se muestra en la siguiente figura:
Paso 7 Descargue Sulley y verifique
Comenzamos a descargar el proyecto principal de Sulley, git clone https://github.com/OpenRCE/sulley.git Después de descargar, ingrese al directorio sulley y ejecute el siguiente comando para verificar si process_monitor.py se puede ejecutar sin errores de importación:
下载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
Paso 8 Descargue Pcapy y WinPcap Dev Kit
git clone https://github.com/CoreSecurity/pcapy.git y descargue WinPcap Dev Kit (versión de desarrollador de WinPcap, use principalmente los archivos de encabezado y lib aquí), y coloque el WinPack descargado en el directorio c: \ Sulley \ Siguiente (por supuesto, puede elegir su propio camino).
Paso 9 compila e instala pcapy
Vaya al directorio pcapy y ejecute el siguiente código:
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
...省略...
Este es un lugar muy fácil para cometer errores. Si hay algún error, puede comentarlo a continuación y podemos resolverlo juntos.
Paso 10 Descargue e instale WinPcap
¿Sientes que se ha instalado pcapy, pero no es así? Si entramos en la línea de comandos de Python y ejecutamos el comando import pcapy, encontraremos Error de importación: DLL not fond error, como se muestra en la figura:
Esto se debe a que aún no hemos instalado WinPcap, faltan estas DLL, descargue WinPcap y luego instálelo (siempre tire al lado de ok), y finalmente ejecutamos el comando import pcapy nuevamente, y encontraremos que no hay problema, como se muestra en la figura:
Paso 11 Descargue e instale Impacket
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
...省略...
Paso 12 El último paso es ejecutar network_monitor.py
Finalmente, ejecute network_monitor.py para asegurarse de que el módulo se haya instalado correctamente. Como se muestra en la figura: la
Lista de dispositivos de red es la lista de tarjetas de red, OK, ¡ya está! ¡Podemos empezar a confundirnos !
PD: Aquí proporciono todos los paquetes de instalación anteriores necesarios para instalar sulley para que todos los descarguen. Lazy debe: empaquetar todos los paquetes de instalación
posdata
Los pasos de instalación de Sulley son problemáticos. A continuación, actualizaré dos artículos. Uno es principalmente para presentar algunos conceptos de Sulley, y el segundo caso real es realizar pruebas fuzz en esos servidores ftp vulnerables. Espero que sigan prestando atención. .