Demostración en vídeo de este post

Se han escrito 5 posts relacionados con el uso de los scripts en Impacket y dado que da para mucho más, aquí va la sexta parte. Para que tengas una referencia de los posts anteriores y los puedas leer o releer, a continuación podrás ver los enlaces a cada una de las partes que se han publicado hace algunas semanas.

Network Hacking con Impacket – Parte 1
Network Hacking con Impacket – Parte 2
Network Hacking con Impacket – Parte 3
Network Hacking con Impacket – Parte 4
Network Hacking con Impacket – Parte 5

En este post se seguirán explorando otras utilidades interesantes que se encuentran en el directorio de «examples» de la herramienta, las cuales  ayudan a ejecutar procesos de enumeración y en algunos casos, apoyan en la ejecución de ataques de diversos tipos.

Sniffing de tráfico utilizando PCAP con sniff.py.

Se trata de una utilidad sencilla que permite la captura de tráfico en una interfaz de red concreta. Este script utiliza la librería PCAP para realizar estas labores y además soporta la especificación BPF para filtrar los paquetes que se capturan. Es importante tener en cuenta que el programa no funcionará si no se encuentra instalada la librería PCAP en el entorno donde se ejecuta pero en todo caso, se puede instalar muy fácilmente con el comando «pip install pcap».
Todo lo que pasa por parámetro al script se toma como un filtro BPF, así que a diferencia de otros scripts disponibles en Impacket, éste no tiene opciones que permitan controlar su comportamiento y cuando se ejecuta, lo primero que hace es listar las interfaces de red disponibles y pedir al usuario que seleccione una de ellas.

 

Sniffing de tráfico utilizando raw sockets con sniffer.py.

Esta utilidad es similar a la anterior, pero con la diferencia de que utiliza sockets crudos en lugar de PCAP, lo que significa que no tiene ningún tipo de dependencia para poder ejecutarlo correctamente. Hay que tener en cuenta que tanto en este script como en el sniff.py se requieren permisos de administrador para poder manipular sockets, acceder a las interfaces de red y gestionar conexiones, por lo tanto su uso resulta conveniente en procesos de post-explotación cuando ya se ha conseguido elevar privilegios en un sistema y es posible subir el script a dicho entorno.

Volcado de endpoints RPC con rpcdump.py

Es una utilidad que simplemente se encarga de volcar todos los endpoints RPC en el sistema objetivo utilizando DCERPC. Como otras de las herramientas disponibles en Impacket, es necesario indicar un usuario y contraseña, así como la IP del sistema a enumerar. No requiere ningún tipo de configuración o librería adicional. Se puede ejecutar de la siguiente forma:

rpcdump.py «dominio/usuario:password»@IP_OBJETIVO

Si el proceso de autenticación se puede llevar a cabo correctamente, se podrá apreciar un listado con todos los endpoints RPC disponibles en el sistema objetivo.

Exfiltración de información sensible con samrdump.py

Esta utilidad resulta interesante en procesos de post-explotación ya que se comunica con el servicio SAMR (Security Account Manager Remote) para extraer información sensible como cuentas en el sistema y sus propiedades. Esta información puede ser útil en un proceso de enumeración local o de dominio.

Las utilidades explicadas en este post son muy generales y sencillas, de hecho, sus funcionalidades se encuentran descritas en un conjunto amplio de herramientas de pentesting pero resulta interesante conocerlas. En los siguientes posts de esta serie se verán scripts orientados a enumeración en entornos de directorio activo y ataques a Kerberos, cuestiones en las que las clases y utilidades Impacket se desenvuelven muy bien.

Un saludo y Happy Hack!
Adastra.