Básicos 15: Penetration testing (Nmap) (parte. I)

Llevar a cabo “pruebas de penetración” (penetration testing para los que “parlotean” << english >>) puede llegar a resultar una tareacompleja” (o difícil, como más te guste), se incluye un proceso en donde se realizan distintos tipos de tareas que identifican – en una infraestructuraobjetivo” – las “vulnerabilidades” que podrían llegar a explotarse y los daños que podría llegar a causar un “atacante” (léase; el malo de la peli).

Básicos 15, Penetration testing, BLOG - 2

Dicho de otra manera, se realiza un proceso de “Hacking ético” para “detectar e identificar” qué o cuáles problemas (incidentes) podrían ocurrir antes de que sucedan (descubrir/detectar las vulnerabilidades antes que los “malotes“) para, posteriormente, reparar (parchear, etc) o mejorar el sistema en cuestión, de tal manera que se puedan evitar estos ataques. Fácil de entender }:D..

Captura: Diagrama "Penetration testing".
Captura: DiagramaPenetration testing“.

Para realizar una prueba de estas características (penetración) de forma meramente profesional, es necesario (a parte de los conocimientos acerca de “Hacking ético“, otros muchos aspectos fundamentales requeridos como;

-) Programación.

-) Metodologías.

-) Documentación.

Entre otros muchos aspectos mas ;)

Sin embargo, dichos “aprendizajes” suelen venir una vez que se conocen y se saben utilizar muchas de las herramientas que forman parte (necesarias) del proceso para llevar a cabo un “PT” (Pen-Test).

Básicos 15, Penetration testing, BLOG - 4

A continuación, podrás observar (aprender y leer) una pequeña “guíabásica de – por dónde comenzar – para todos los que estéis interesados en aprender de que va este “concepto” (mundillo) del “Hacking ético” y de sus asociadas “pruebas de penetración“. Veremos algunas herramientas que deberías conocer (si no las conoces aún) no tan sólo para iniciarte a llevar a cabo dichas pruebas, si no también para conocer un poco “que son estas herramientas y cuál es su uso (o para qué sirven)”… }:]

Captura: Bambino, el gato "Hacker" (muuso cuidao con él, es letal) :)
Captura: Bambino, el gatoHacker” (muuso cuidao con él, es letal) 🙂

Básicos 15, Penetration testing, BLOG - 5


Básicos 15, Penetration testing, BLOG - 6

Captura: Web "NMAP" ;)
Captura: WebNmap” 😉

En un proceso completo de pruebas de penetración“, existen instancias previas a ejecutar esta herramienta pero, para dar los primeros pasos, probablemente sea la mejor forma de comenzar. Nmap es una herramienta de “escaneo de redes” que permite identificar qué servicios se están ejecutando en un dispositivo remoto, así como la identificación de equipos activos, sistemas operativos en el equipo remoto, existencia de filtros o firewalls, entre otros.

En palabras más sencillas, cuando se va a atacar un “servidor o dispositivo“, el atacante podrá realizar distintas arremetidas en función del servicio; no es lo mismo dañar un servidor web, un servidor de base de datos o un router perimetral. Por lo tanto, en cualquier despliegue, el primer paso será identificar los servicios en la infraestructura, para decidir cómo avanzar y, considerando que en una prueba de penetración se “imitan” los pasos de un atacante, también se iniciará de la misma manera.

Captura: NMAP (Zenmap) };)
Captura: Nmap (Zenmap) };)

Nmap es una herramienta de “línea de comandos” (existen algunas interfaces gráficas pero, personalmente, no las recomiendo, aunque es una cuestión de gustos) donde se debe indicar cuál será el o los objetivos y la serie de parámetros que afectarán la forma en que se ejecuten las pruebas y los resultados que se obtienen. Puede instalarse tanto en Linux, Windows, Mac u otros sistemas operativos.

En su forma tradicional, una línea de comando sería la siguiente:

-) nmap 172.16.1.1

En donde “nmap es el comando en sí mismo y 172.16.1.1 es el objetivo (que también puede ser indicado con un nombre de dominio). La respuesta a estos comandos será un listado de los puertos abiertos o cerrados en dicha dirección. La ejecución sin parámetros ejecuta un escaneo sencillo a los 1000 puertos más comunes (véase que en la siguiente imagen como se muestra uno abierto y 999 cerrados), realizando anteriormente un ping para ver si el equipo está vivo (si el equipo no responde al ping, no se realizará el test de los puertos).

Básicos 15, Penetration testing, BLOG - 9
Captura: NMAP (escaneo sencillo a los 1000 puertos más comunes) 🙂

Cuando agregas parámetros puedes obtener mejores resultados. Algunos parámetros comunes para tener en cuenta son;

-) [-iL] indicar una lista de equipos o redes a escanear.

Ejemplo; nmapiL hosts.txt
-) [sP] Solo escanea con un ping. Es una buena forma de ver cuántas direcciones IP se pueden detectar. Una vez que se tienen agrupadas, se podrá ir solo con las que están vivas.
-) [-P0] Es la forma de omitir el ping e ir directo al escaneo de puertos. Muchos sistemas no responden al ping como método de seguridad, por lo que, escanear de todas formas, también puede ser útil en entornos más reales (no es necesario para los entornos de aprendizaje inicial).
-) [-p] Lleva a cabo un listado de los puertos que se desean escanear.

Ejemplo; nmapiL hosts.txtp 22,25,80,445.
-) [-sV] Intenta determinar la versión del servicio en el objetivo.
-) [-O] Informa del sistema operativo en el objetivo.

Una vez ejecutado “Nmap“, ya se conocen cuáles son los servicios (al menos los identificados) que se están ejecutando en el blanco de la prueba de penetración. Ahora ya se puede pasar a las siguientes etapas, en donde se utilizará esta información para comenzar la búsqueda de vulnerabilidades en la infraestructura y en los servicios identificados.


Captura: NMAP }:D
Captura: NMAP }:D

Básicos 15, Penetration testing, BLOG - 11

-) Herramienta: Nmap
-) Sitio web: https://nmap.org/
-) Cómo empezar: Instalamos "Nmap", ejecutamos un comando sencillo hacia una dirección IP y luego probamos agregando parámetros (nmap --help puede ofrecernos más información) o ejecutar para múltiples direcciones IP (que deben ser indicadas en un archivo TXT).
-) Información: Leer este artículo dónde se detallan bastantes "ejemplos prácticos" de comandos para "Nmap".

Link; Aquí
-) Libro "oficial" para explotar al máximo la funcionalidad de "Nmap", escrito por su creador, GordonFyodorLyon.

Nota: Para ir al libro, pinchar en la imagen siguiente }:)
Básicos 15, Penetration testing, BLOG - 12
Captura: Nmap (Libro) de GordonFyodorLyon 😉
Nota: Por la "red" tenéis "multitud de vídeos" explicativos para comenzar a aprender de manera visual }:D 

Salu2


TonyHAT - 255

Anuncios

4 comentarios en “Básicos 15: Penetration testing (Nmap) (parte. I)”

  1. Antes de empezar a usar Nmap estaría bueno saber algunos conceptos de redes por ejemplo si hacemos un barrido de host o si no estamos conectados a la red local. Un buen script para generar un .txt con los rangos posibles y usarlos en Nmap estaría bueno. Saludos Tony!

    Me gusta

Responder

Por favor, inicia sesión con uno de estos métodos para publicar tu comentario:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s