lunes, 22 de diciembre de 2014

Escaneando el objetivo

Cuando hablamos de escanear un red, hacemos referencia a un conjunto de procedimientos para identificar hosts, puertos y servicios que se ejecutan en la misma. Un escanér de vulnerabilidades determina la posibilidad de ataques  a una red y evalúa los sistemas de la organización en busca de actualizaciones faltantes, servicios innecesarios, autentificación y cifrado débil. Tenemos 3 tipos de escaneos:
  • Port scanning - Puertos abiertos y servicios 
  • Network scanning - Direcciones IP
  • Vulnerability scanning - Presencia de vulnerabilidades
En primera instancia utilizaremos hping, que es una herramientas muy versátil que permite la manipulación de paquetes TCP/IP desde la linea de comandos, también podemos modificar la información contenida en las cabeceras de los paquetes ya sean TCP,UDP o ICMP, en función de los parámetros que ejecutemos en hping. Algunas características son:
  • Determina si el host esta funcionando aun cuando esta bloqueando los paquetes ICMP.
  • Escaneo de puertos avanzado y rendimiento neto de prueba utilizando diferentes protocolos, tamaños de paquetes, TOS y fragmentacion.
  • Ruta manual de descubrimiento del MTU.
  • Descubrimiento de puertos abiertas detras de firewalls.
  • OS fingerprinting remoto.
En la siguiente imagen se muestra un escaneo ICMP:

También podemos utilizar la herramienta como un scanner de puertos, utilizando el comando -S podemos especificar que la flag del paquete TCP es SYN, con -p especificamos el puerto y con ++ hacemos que vaya incrementando en uno el puerto para analizar y quedaría:

Se envia el paquete TCP con longitud 44, con destino a la direccion ip del objetivo, con TTL  51, con RTT promedio entre 215.2 a 248.7 ms, puerto por puerto iniciando desde el 21. En los puertos 21,22,25,53,80,110,125 y 143 podemos ver las flags que son SA (SYN y ACK) lo que significa que el puerto esta abierto, en cambio en el puerto 26 nos devuelve RA lo que significa que estamos recibiendo un RST entonces el puerto esta cerrado. Algunos otros métodos de exploración son:

Si quieren saber mas de esta grandiosa herramienta pueden entrar a la pagina oficial

Ahora utilizaremos Advanced IP Scanner, que es una herramienta de exploración de redes multiproceso, fácil de usar, rápida y gratuita, la pueden descargar de aquí Ejecutamos la herramienta y se vera así:

Luego colocamos la IP de nuestro objetivo y haremos un escaneo en cierto rango, en este caso pondré desde 1-255(Esta herramienta me a sido de mucha utilidad para encontrar subdomoninios o servicios que antes otras herramientas no las habían detectado) y podemos ver que me a detectado algunos subdominios y donde están corriendo el servicio de Apache en cada una:

Ahora pasaremos a usar una herramienta muy conocida para muchos llamada nmap, que es usada para la exploración de redes y auditar su seguridad, es muy poderosa y muy fácil de aprender a usar, ademas es de código abierto. Veremos algunos comandos básicos, mas adelante estaré subiendo otros artículos realizando escaneos mas avanzados, algunos de sus comandos mas comunes son:

  • -sS (SYN nm): Suele ser el mas popular y se le conoce como sondeo medio abierto, porque no se llega a abrir una conexión TCP completa. Una coneccion TCP empieza con un three way handshake Se envía un paquete SYN (Bit de control dentro del segmento TCP), como si se fuera abrir una conexión real y después espera su respuesta, si recibe un paquete SYN/ACK el puerto esta en escucha(abierto), si recibe un RST(reset) significa que no hay nada escuchando en el puerto y si no recibe nada significa que el puerto esta filtrado. Ej:                    

  • -sT (Connect): Sondeo TCP (Protocolo de Control de Transmisión) Connect() es el sondeo TCP  por exclusión cuando no se puede utilizar el sondeo SYN (Esto sucede cuando no tenemos privilegios para enviar paquetes en crudo o cuando se sondean redes IPV6).  Nmap le pide al sistema operativo subyacente que establezcan una conexión con el sistema objetivo en el puerto indicado utilizando la llamada del sistema connect(), a diferencia de otros tipo de sondeo, que escriben paquetes a bajo nivel. Ej:

  • -sU (UDP Scan): Aunque la mayoría de servicios en Internet utilizan el protocolo TCP, los servicios UDP también son muy comunes. Como el sondeo UDP es mas lento y mas difícil que el TCP, los auditores de seguridad suelen ignorarlos, pero es un gran error, porque es muy frecuente encontrarse servicios UDP vulnerables. El sondeo UDP funciona mediante el envió (sin datos) de una cabecera UDP para cada puerto. Ej: 

  • -sX (Xmas Scan): Fija los bits de FIN, PSH, y URG flags, iluminando el paquete como si fuera un árbol de Navidad (cosa que podemos evidenciar, por ejemplo, con un sniffer de red
  • ). Atendiendo a la respuesta (o ausencia de ella), el atacante puede determinar el estado del puerto que está investigando de una forma realmente silenciosa, puesto que no inicia ninguna conexión (como los sondeos SYN, que inician un 3-way-handshake), y sorteando a veces filtros que no esperan este tipo de combinaciones en los flags.


Luego podemos empezar a ejecutar varios comandos como -sS -sV(Detecta las versiones de los servicios), -O (Detecta el sistema operativo) o si los puertos están filtrados podemos también utilizar comandos como -f, -D, --data-length, --spoof-mac pero esto los veremos mas a fondo en próximos artículos. También podemos ejecutar scripts que vienen con nmap para realizar ataques de fuerza bruta a diferentes servicios como por ejemplo: nmap --script ftp-brute -p21 <objetivo> o nmap --script smtp-brute -p25 <objetivo> (El comando -p lo usamos para escanear uno o varios puertos en especifico) entre otros, podemos también hacer escaneos de forma anonima pero como somos hackers éticos y tenemos permiso del gerente de la empresa que estamos atacando, no será necesario ;).

Ahora pasaremos a utilizar Nessus que es un herramienta muy poderosa de Cliente - Servidor, que nos ayudara a encontrar vulnerabilidades potencialmente buenas en aplicaciones web o en redes, la podemos descargar de su pagina oficial e instalar y configurar en el siguiente link
Después de haberlo instalada correctamente, tendremos esto en nuestro navegador:

Luego entramos a la sección de la parte superior izquierda que dice: Policies y luego en New Policy, en este caso seleccionaremos la opción Web Application Tests ponemos el nombre que le queramos dar y la visibilidad que queramos y le damos next,









No hay comentarios:

Publicar un comentario