Pentester público

Ingeniería, auditoría, pentesting, hacking y otras cosas que me gustan!

Captura de credenciales en la red y cracking de passwords

Una de las pruebas o ataques de red que puede ser de mucha utilidad en un pentesting (prueba de instrucción) o auditoría de seguridad informática, es la captura de credenciales (usuario y contraseña) y posteriormente el rompimiento o cracking del hash de la contraseña para hacer la intrusión en un activo de información (servidor, equipo de computo, aplicación…)

En este post se muestra una técnica de captura de credenciales en los protocolos LLMNR (Link-Local Multicast Name Resolution) / NBT-NS (
NetBIOS Name Service) y las herramientas usadas para lograr este objetivo.

Escenario:   Las pruebas se realizaron en una infraestructura tecnológica que cuenta con sistemas operativos Windows y protocolos de resolución de nombre de dominio LLMNR (Para Windows Vista en adelante o NBT-NS para sistemas operativos Microsoft anteriores).

Recordemos que la prioridad para resolver nombres de domonio de un equipo Windows, es la siguiente: Localhost -> DNS -> LLMNR or NBT-NS.

Ataque LLNBR-NBT-NS
Ataque LLNBR-NBT-NS

Herramientas o tools usadas:

Procedimiento realizado:

  1. Clonación de Responder.py
git clone https://github.com/SpiderLabs/Responder.git

2. Ejecutar responder para escuchar las credenciales de red.

Responder.py  -I eth0 - wrf 

El resultado del comando es algo similar a lo siguiente:

Luego empieza la captura de paquetes en la red.

Los hash capturados se almacenan en la base de datos Responder.db la cual se puede ver o consultar sus registros con la herramienta SQLite.

Para ver la Base de datos en formato GUI se puede usar el comando:

sqlitebrowser Responder.db

Para acceder de forma consola o geek, se puede usar el comando:

sqlite3 Responder.db
Los comandos mostrados en la imagen, son para colocar la BD el modo CSV y luego exportar sus registros a un archivo separado por comas (CSV).

Luego se debe parsear el archivo para que se interprete mejor por Hashcat.

Luego le pasamos el archivo con los hash parseados a Hashcat y usamos el diccionario para iniciar el crackeo de las contraseñas.

El resultado Hashcat en ejecución, se ve de la siguiente forma:

Hashcat en ejecución.

Luego ya solo falta esperar para que rompa el hash de la contraseña, como se muestra en la siguiente imagen, que solo demoro 20 segundos.

Hash NTLMv2 Crackeado

Finalmente, solo faltaría probarla en un equipo o servicio del dominio, ver que privilegios tiene este usuario y el resto de cosas que esten en la imaginación del pentester.

Un agradecimiento a @johanych por el conocimiento compartido en el tiempo que trabajamos juntos y permitirme publicar este post en su blog.

By @JOGAcrack.

La gestión de riesgos como estrategia para la toma de decisiones – más hacking menos checklists!

TL;DR. Lo que a continuación leerán surge de un ensayo que escribí para la maestría en seguridad informática que curso actualmente y que quise compartirles, ya que, en este, trato de argumentar porque es importante que la auditoria interna dé un paso adelante y se convierta en un apoyo real en temas de ciberseguridad para las organizaciones. Los checklists son buenos, pero el cumplimiento no implica seguridad.

Este post se enmarca en dos puntos fundamentales que apoyan la toma de decisiones: el primero resalta la necesidad de realizar la gestión de la información como insumo fundamental y base para la toma de decisiones. El segundo, y no menos importante, una mirada desde la perspectiva de la seguridad informática y la auditoría como evaluador y agregador de valor en la gestión de riesgos organizacionales.

El futuro es ahora; la era digital en la que vivimos actualmente nos permite disfrutar de acceso a información en cualquier momento, desde cualquier dispositivo y desde cualquier lugar, de forma que podemos interactuar, aportar e intercambiar conocimiento a través de diferentes ambientes colaborativos o de relacionamiento. Esto está llevando a las organizaciones a definir y habilitar mecanismos para el intercambio de información, la realización de trámites y transacciones y la interacción entre el negocio, los directivos, los clientes y los dispositivos que hacen parte del Internet de las cosas, independiente del lugar donde se encuentre y el medio que use. El panorama anterior demanda de las organizaciones nuevos comportamientos y formas de hacer las cosas y desde luego ofrece nuevas oportunidades, lo que en consecuencia genera nuevos riesgos.

Estos nuevos comportamientos incluyen la identificación de mecanismos que permitan avanzar en el trabajo colaborativo, gobierno corporativo, simplificación de los procesos, convergencia tecnológica, más velocidad en capacidad de respuesta y adaptación y, en general, moverse en el mundo digital sin importar la ubicación física de los diferentes actores o el dispositivo que utilicen. Así las cosas, resulta necesario e imperativo la gestión adecuada de riesgos que involucre activamente, entre otros, el conocimiento del entorno, ya que la dinámica actual de las amenazas globales de seguridad de la información, por mencionar alguna, viene marcando una tendencia creciente en cuanto a nivel de sofisticación de los ataques informáticos, facilidad para ejecutarlos, recursividad e innovación.

En este sentido, uno de los aspectos a tener en cuenta dentro de la Gestión de Riesgos implica la identificación de información dentro de una organización (NTC-ISO 31000, 2009), la cual debe contar con su respectiva documentación de políticas, lineamientos, reglas de negocio, estandares, procedimientos e instructivos para su clasificación, protección, uso y aprovechamiento. Esta gestión busca brindar cierto nivel de tranquilidad y confianza a la dirección proporcionando un insumo oportuno y efectivo para la toma de decisiones. Por tal motivo, resulta necesario, propender por la integridad, confidencialidad y disponibilidad de la información, que brinde elementos suficientes y completos para el cumplimiento de los objetivos estratégicos de la organización. Para estos efectos, se debe contar con herramientas y técnicas de gestión para la evaluación y análisis de riesgos, las cuales permitan identificar amenazas, clasificar activos de información y calificar las vulnerabilidades del sistema para que, de esta forma, se puedan implementar los controles adecuados en los procesos o activos que lo requieran.

Ahora bien, la gestión de riesgos, se inter-relaciona naturalmente y de manera transversal, con los procesos organizacionales como por ejemplo: procesos estratégicos (Planeación Integrada, Gestión de Crecimiento, Gestión de proyectos…) procesos de soporte (Gestión de Tecnologías de Información, Financiera, Jurídica, Talento Humano…) y procesos misionales dependiendo el core o la misión de la empresa, lo cual precisamente genera que en los puntos de enlace, es decir, en la relación insumo-proceso-producto, se presenten debilidades de control que hacen más vulnerables los procesos y sobre todo, cuando se presentan procesos disruptivos como es el caso de la implementación de las conocidas “supply chain” o cadenas de suministro. 

Lo anterior, exige que se afinen los procesos de análisis de riesgo para que se pueda identificar esos puntos de corte entre procesos con debilidades de control y realizar, de esta forma, las evaluaciones adecuadas que permitan obtener planes de mejoramiento pertinentes para mitigación de los riesgos. En otras palabras, se deben realizar evaluaciones técnicas –  especializadas permanentes sobre los comportamientos de los controles y los riesgos que permitan el mejoramiento continuo de los procesos y de la misma gestión integral de los riesgos a nivel organizacional.

Es una práctica recurrente en las organizaciones actuales el hecho de buscar formas de potenciar la información como activo empresarial para mejorar los procesos de toma de decisiones. Sin embargo, este enfoque debe estar estrechamente ligado a una Gestión de riesgos que, mediante un monitoreo continuo del entorno y una definición clara del contexto de aplicación, permitiendo identificar, evaluar y tratar los diferentes riesgos (NTC-ISO 31000, 2009), apoyándose activamente en análisis de información histórica y modelos que permitan predecir eventos adversos, por ejemplo, a través de minería de datos o modelos matemáticos y/o estadísticos. Así las cosas, la gestión de la información y la gestión de riesgos con base en la proyección organizacional y el entorno tecnológico actual, requieren de una alta calidad y desarrollo, que permitan la asertividad, proactividad y visión en la toma de decisiones estratégicas y operativas. O lo que es lo mismo, la ausencia de un proceso estructurado de gestión de riesgos, sumado a una reducida calidad de la información, tienen una alta probabilidad de fracaso respecto a la toma correcta y oportuna de decisiones organizacionales, lo cual puede llegar a ser catastrófico para la sostenibilidad de una empresa y el entorno mismo.

En consecuencia, las decisiones que se tomen a nivel organizacional sobre el aseguramiento de nuestras infraestructuras tecnológicas deberían ir más allá de una identificación y gestión de riesgos y controles de la forma tradicional: se requiere de un enfoque innovador, radical (disruptivo) y ante todo proactivo. Se requieren entornos controlados de evaluación e identificación de nuevas amenazas y conocimiento avanzado que nos permita estar un paso adelante en la protección de los activos críticos (donde también se enmarca la información). Determinar estas nuevas amenazas (informáticas, humanas…) son esenciales en la construcción de una adecuada estrategia de seguridad empresarial. Es necesario entender en profundidad qué habilidades poseen los atacantes actuales y qué esquemas ofensivos pueden ser usados en contra de las infraestructuras tecnológicas actuales de forma que los activos y en consecuencia las organizaciones, estén lo suficientemente preparadas para afrontar cualquier evento o incidente de ciberseguridad.   

Dicho esto, resulta importante, por ejemplo, que las áreas de auditoria interna de las organizaciones, actuando como tercera línea de defensa y como evangelizadores de las mejores prácticas de aseguramiento y control, cuenten con laboratorios tecnológicos donde continuamente se investiguen las nuevas amenazas de seguridad y se permita una evaluación del impacto real de la explotación de vulnerabilidades en diferentes dispositivos de forma controlada y en ambientes separados de producción. Lo anterior, a través de personal capacitado y con experiencia en pruebas de intrusión que se salgan un poco del esquema de evaluaciones de seguridad a partir de listas de chequeo y cumplimiento de normativas y estándares. Así mismo, se requiere adquirir herramientas tecnológicas que permitan realizar gestión de vulnerabilidades para identificar cambios en la red de forma oportuna, trazabilidad en el tratamiento de vulnerabilidades, así como una calificación más acertada del riesgo que representan los fallos de seguridad.

Una ventaja directa de abordar este tipo de análisis de riesgos desde la auditoria es que, gracias a su posición jerárquica dentro de las organizaciones, permite una comunicación directa con los comités y juntas directivas donde se toman las decisiones en cuanto a presupuestos, personas, infraestructura y cultura organizacional, requeridos para hacer frente a los actuales riesgos estratégicos. Es en este contexto, donde toma más importancia la labor que se lleva a cabo por la auditoria en los laboratorios de seguridad, ya que es posible demostrar con hechos, el impacto en la materialización de un riesgo pasando un poco de la probabilidad a cuestiones que los directivos puedan evidenciar en la práctica, generando de esta forma un grado más significativo de concienciación o sensibilización, en la importancia de destinar los recursos (humanos, tecnológicos, financieros…) apropiados para proteger la infraestructura tecnológica y la información.

Concluyo afirmando, que la toma de decisiones tiene un potencial alto de asertividad y de agregación de valor, en cuanto se tengan sistemas de gestión de información, evaluaciones continuas de riesgos y controles y por supuesto, gestión transversal de los riesgos que permitan entender y ejecutar acciones que logren el cumplimiento de los objetivos estratégicos, mediante la acción oportuna contra efectos adversos del entorno.