Creando un fuzzer con MetaSploit

Creando un fuzzer con MetaSploit
De ahora en adelante, cambiaremos nuestro enfoque de los dos módulos de uso común: cargas útiles y exploits) y veremos otros módulos que se usan con frecuencia en la prueba de pluma; a saber, el Correo, NOP, codificadores y auxiliares módulos.

Las modificaciones auxiliares generalmente se usan para realizar acciones únicas después de la explotación, pero puede hacer mucho más con esta herramienta fascinante, como crear sus propios escáneres de vulnerabilidad y escáneres de puertos. Este artículo analizará el módulo auxiliar en particular y aprenderá cómo crear un fuzzador con él.

Paso 1: Navegue al directorio de MetaSploit


Primero, inicie Kali Linux y vaya al Directorio de marco de Metasploit. Escriba lo siguiente en la interfaz Kali:

$ CD/USR/Share/MetaSploit-Framework

Para ver mejor el contenido aquí, cambie la vista del directorio ingresando lo siguiente:

$ ls -l

Desplácese al módulo de subdirectorio y nuevamente, escriba:

$ CD módulos
$ ls -l

Esta salida muestra los diferentes tipos de módulos en MetaSploit, que incluyen:

  • Exploits
  • Cargas útiles
  • Asentir
  • Correo
  • Codificadores
  • Auxiliar

Ahora, examinaremos el módulo auxiliar con mayor detalle.

Paso 2: Expandir el directorio auxiliar

Ingrese el directorio auxiliar

$ CD módulos/auxiliar
$ ls -l

Esto compartimentará el directorio del módulo auxiliar en varios subdirectorios. La salida mostrará una lista completa de subdirectorios, comenzando con el directorio de administración.

Creando fuzzers

Antes de continuar, primero definiremos qué peludo es.

Fuzzing: una breve introducción

La fuzzing es una práctica en la disciplina de prueba de software que implica poner continuamente entradas aleatorias e inesperadas en un programa de computadora para determinar todos los bloqueos posibles que un sistema podría enfrentar. Poner demasiados datos o entradas aleatorias en un área variable provoca un desbordamiento del búfer, una vulnerabilidad crítica, que es lo que la confusión considera como una técnica de inspección.

El desbordamiento del búfer no solo es una vulnerabilidad grave, sino que también es a menudo el método de referencia para los piratas informáticos cuando intentan entrar en un sistema.

El proceso de pelusa

Vaya al directorio de Fuzzer y eche un buen vistazo con el listado:

Fuzzers de $ CD
$ ls -l

Los tipos de fuzzers en exhibición incluirán lo siguiente: DNS, FTP, HTTP, SMB, SMTP, SSH y TDS.

El fuzzer de particular interés para nosotros aquí es FTP.

A continuación, abra el directorio de Fuzzers:

$ cd ftp
$ ls -l

De los dos tipos que se muestran aquí, usaremos el "TP_PRE_POST Fuzzer", en lugar de "Client_ft.RB."

Abra el msfconsole, localice el "tp_pre_post fuzzer" y ejecutarlo. En la solicitud de MSF, escriba lo siguiente:

$ msfconsole
$ msf> tipo de búsqueda: fuzzers auxiliares

MSFConsole enumerará solo aquellos módulos auxiliares y descuidará otros tipos. Observe que todas las modificaciones presentadas tienen la palabra clave FTP, que requiere que el proceso resuelva los módulos según las instrucciones por el comando.

Los resultados de búsqueda muestran varios módulos diferentes; Solo usaremos el módulo "auxiliar/fuzzers/ftp/ftp_pre_post". Puede investigar los detalles sobre las funciones que este mod tiene escribiendo MSF> información.

Ahora, cargue este módulo escribiendo:

$ msf> use auxiliar/fuzzers/ftp/ftp_pre_post

Como puede ver, el módulo puede tomar varias entradas diferentes. Usaremos una dirección IP específica. En este ejemplo, estamos utilizando un sistema con el sistema operativo Windows 2003 como el objetivo designado para probar nuestro fuzzador.

Establezca la dirección IP y ejecute el módulo:

$ msf> establecer rhosts (ingrese IP aquí)
$ msf> ejecutar

El fuzzer comenzará con los 10 bytes ligeros y comenzará a abrumar al sistema con entradas más considerables, aumentando en 10 bytes con cada iteración. El tamaño máximo es 20000 bytes por defecto, que se puede modificar de acuerdo con el tipo de sistema.

Este es un proceso muy complicado y largo, así que sea paciente. El fuzzer se detendrá en el límite de tamaño especificado, o cuando detecta algunos mensajes de error.

Conclusión

Este artículo describió qué son los fuzzers: módulos auxiliares que nos permiten verificar un sistema de vulnerabilidades, incluido el desbordamiento del búfer, que es el más significativo, ya que a menudo se anula por su explotación. El artículo también describió cómo realizar fuzzing en un sistema con el fuzzer tp_pre_post. A pesar de ser componentes relativamente más simples del marco de MetaSploit, los fuzzers pueden ser extremadamente valiosos cuando se trata de pruebas de lápiz.

Obviamente, esto no es lo único de lo que los módulos auxiliares son capaces; Hay cientos de módulos diferentes que tienen una variedad de propósitos diferentes para probar su sistema.