Un proyecto de Ethical Hacking o prueba de penetración en ciberseguridad (pentest o pentesting), consiste en la realización de una serie de ataques a las redes y sistemas de una organización, previo acuerdo, cuyo objetivo es detectar vulnerabilidades, reportarlas y subsanarlas antes de que lo haga un ciberdelincuente, usando sus mismas técnicas. Cada maestrillo tiene su librillo, pero generalmente podemos diferenciar de forma clara cinco fases en un Ethical Hacking: reconocimiento, enumeración, análisis de vulnerabilidades, explotación y post-explotación.
Figura 1: Pivotool, herramienta simple para pivotar en un pentest
Todas ellas está más que bien documentadas, y en todas ellas existen muchas herramientas y procedimientos diferentes que utilizar dependiendo del entorno, y el pentester, como se explica en el libro de Ethical Hacking.
Pivotool es una herramienta programada en bash que puede ayudar al pentester en la fase de post-explotación automatizando tareas, ahorrando tiempo y centralizando la información en un mismo lugar. No pretende ser la revolución de las herramientas de pivoting, pero si se trata de ser ágiles, es una opción para tener en cuenta.
Figura 2: Libro de Ethical Hacking 2ª Edición de Pablo González en 0xWord |
Pivotool: Ejemplo de uso
Un caso de uso sería el siguiente: durante la fase de explotación se ha conseguido acceso remoto a un sistema, bien explotando una vulnerabilidad, lanzando un ataque de fuerza bruta a servicios con credenciales, haciendo uso de ingeniería social, etc. Este sistema, al mismo tiempo que a Internet, está conectado a la red interna de la organización. En esta nueva red no conocemos nada a priori, y aquí es donde entra en juego Pivotool.
Al ejecutar Pivotool se presenta un prompt nuevo para interactuar con la herramienta y lanzar los comandos. Se puede obtener información del sistema, escanear la red en busca de otros servidores activos, escanear los puertos de esos servidores activos que se acaban de descubrir y, finalmente, realizar una redirección de puertos para poder acceder desde fuera de la red, utilizando el primer sistema como pivote. Además, se puede generar un pequeño reporte con todo lo que llevamos descubierto hasta el momento.
Actualmente la herramienta se encuentra en continuo desarrollo, corrigiendo errores y ampliando funcionalidad. Además, se tiene en mente la migración a un lenguaje compilado, por ejemplo, Golang, para corregir ciertas carencias de la herramienta como las dependencias. La herramienta es pública y de código abierto y por supuesto cualquier recomendación, aporte, fallo detectado, etcétera; son más que bienvenidos. Os dejo el repositorio de Github de Pivootool:
Implementar esta herramienta está siendo un camino muy enriquecedor, donde el enfrentarme a los problemas que van surgiendo me hace aprender cada día algo diferente. Se lo recomiendo a todo el mundo, ya sea por necesidades en su trabajo o estudios, o por un reto personal. Queda mucho trabajo por delante con Pivotool, pero con que le sea de ayuda a algún compañero del gremio me doy por satisfecho. El aportar a la comunidad es algo que siempre llena.
¡Un abrazo!
Figura 3: Ejecución de Pivotool
Al ejecutar Pivotool se presenta un prompt nuevo para interactuar con la herramienta y lanzar los comandos. Se puede obtener información del sistema, escanear la red en busca de otros servidores activos, escanear los puertos de esos servidores activos que se acaban de descubrir y, finalmente, realizar una redirección de puertos para poder acceder desde fuera de la red, utilizando el primer sistema como pivote. Además, se puede generar un pequeño reporte con todo lo que llevamos descubierto hasta el momento.
Figura 4: Caso de uso completo de Pivotool
Actualmente la herramienta se encuentra en continuo desarrollo, corrigiendo errores y ampliando funcionalidad. Además, se tiene en mente la migración a un lenguaje compilado, por ejemplo, Golang, para corregir ciertas carencias de la herramienta como las dependencias. La herramienta es pública y de código abierto y por supuesto cualquier recomendación, aporte, fallo detectado, etcétera; son más que bienvenidos. Os dejo el repositorio de Github de Pivootool:
Figura: Pivotool en GitHub
Implementar esta herramienta está siendo un camino muy enriquecedor, donde el enfrentarme a los problemas que van surgiendo me hace aprender cada día algo diferente. Se lo recomiendo a todo el mundo, ya sea por necesidades en su trabajo o estudios, o por un reto personal. Queda mucho trabajo por delante con Pivotool, pero con que le sea de ayuda a algún compañero del gremio me doy por satisfecho. El aportar a la comunidad es algo que siempre llena.
¡Un abrazo!
Autor: Arturo Aguirre Calvo
No hay comentarios:
Publicar un comentario