PDF de programación - La trilogía

Imágen de pdf La trilogía

La trilogíagráfica de visualizaciones

Actualizado el 21 de Marzo del 2018 (Publicado el 1 de Noviembre del 2017)
531 visualizaciones desde el 1 de Noviembre del 2017
1,8 MB
96 paginas
Creado hace 3a (25/09/2016)
La "trilogía"

LSI - 2016/2017
José Manuel Vázquez Naya
jose@udc.es

Contenido
 Fases previas de un ataque:

 Host discovery
 Port scanning
 Fingerprinting

HOST DISCOVERY

¿Qué es host discovery?
 Descubrir las máquinas que hay en una red (PCs, impresoras, routers,

firewalls, dispositivos de almacenamiento, etc.)

 Es el primer paso
 Mejor si es rápido
 Mejor si es silencioso
 También se conoce como escaneo ping o descubrimiento de

sistemas

Host discovery

 En algunas redes sólo un pequeño porcentaje de direcciones IP se

encuentran activas en cierto momento

 Esto es particularmente cierto en las redes basadas en
direccionamiento privado RFC1918, como la 10.0.0.0/8
 > 16 millones de direcciones IP
 ¿escaneamos todas?
 ¿cuáles están activas?

ALGUNOS CONCEPTOS DE REDES

Cabecera TCP

TCP handshake

Cabecera UDP

Cabecera ICMP

Cabecera IP

ARP (Address Resolution Protocol)
 El protocolo de resolución de direcciones (ARP) es la forma en que
las redes TCP/IP “averiguan” las direcciones MAC basándose en las
direcciones IP de destino

Nmap
 Es la herramienta por excelencia para escaneo de puertos (port

scanning)

 También permite host discovery y fingerprinting
 Desarrollada por Gordon "Fyodor" Lyon
 Con Nmap Scripting Engine (NSE) puede incluso averiguar las

aplicaciones concretas (nombre y número de versión) que se están
ejecutando en un puerto
 Código fuente disponible
 Utilizaremos Nmap para ilustrar la mayoría de los ejemplos
 No es la única herramienta!

 hping3, scapy, … <- puedes buscar más en SecTools.Org

Nmap. Instalación en Debian

 apt-get install nmap

 Se puede instalar la última versión desde nmap.org

Aspectos importantes sobre Nmap
 La función por defecto de nmap es escaneo de puertos (port

scanning)
 Es decir, salvo que se especifique lo contrario, nmap ejecutará port

scanning

 nmap 10.10.102.0/24

 Realizará host discovery sobre cada máquina
 Sobre cada host "vivo" encontrado, realizará port scanning

 En muchas ocasiones, interesar ejecutar sólo host discovery en una

primera fase
 Hay que indicarlo: opción -sP (lo veremos más adelante)

# Sólo host discovery
nmap –sP 10.10.102.0/24

Aspectos importantes sobre Nmap
 Para poder aprovechar toda la funcionalidad de nmap, es necesario

ejecutarlo con privilegios de administrador
 Capacidad para "fabricar" raw packets
 Si se ejecuta sin privilegios, nmap delegará en llamadas al SO. Algunas

funcionalidades no estarán soportadas

 Se comporta de forma diferente si detecta que el escaneo se está

efectuando en una red local
 La opción --packet-trace permite ver los paquetes que envía nmap.

Muy útil para comprender cómo funciona

Opciones de host discovery con Nmap
 -sL (escaneo de lista o List Scan):

 Únicamente lista cada equipo de la/s red/es especificada/s
 No envía paquetes de ningún tipo a los objetivos
 Por defecto, realiza resolución DNS inversa en los equipos para obtener

sus nombres
 Se puede obtener información muy útil del nombre de un sistema

(fw.acme.com, mail.acme.com,…)

 Paso importante, para asegurarse de escanear las máquinas adecuadas
 Esta opción no puede combinarse con opciones de mayor nivel de
funcionalidad (análisis de puertos, detección de sistema operativo o
scaneo ping)

Opciones de host discovery con Nmap

# nmap -sL 10.10.102.50/28

Starting Nmap 5.00 ( http://nmap.org ) at 2012-09-13 16:46 CEST
Host 10.10.102.48 not scanned
Host 10.10.102.49 not scanned
Host 10.10.102.50 not scanned
Host 10.10.102.51 not scanned
Host 10.10.102.52 not scanned
Host 10.10.102.53 not scanned
Host 10.10.102.54 not scanned
Host 10.10.102.55 not scanned
Host 10.10.102.56 not scanned
Host 10.10.102.57 not scanned
Host 10.10.102.58 not scanned
Host 10.10.102.59 not scanned
Host 10.10.102.60 not scanned
Host 10.10.102.61 not scanned
Host 10.10.102.62 not scanned
Host 10.10.102.63 not scanned
Nmap done: 16 IP addresses (0 hosts up) scanned in 0.01 seconds

Opciones de host discovery con Nmap

# nmap -sL www.udc.es/24

Starting Nmap 5.00 ( http://nmap.org ) at 2012-09-13 16:46 CEST
Host 193.144.48.0 not scanned
...
Host 193.144.48.90 not scanned
Host v3.viveros.udc.es (193.144.48.91) not scanned
Host afi.udc.es (193.144.48.92) not scanned
Host webafi.udc.es (193.144.48.93) not scanned
Host pafi.udc.es (193.144.48.94) not scanned
Host v3-2.viveros.udc.es (193.144.48.95) not scanned
Host 193.144.48.96 not scanned
Host 193.144.48.97 not scanned
Host 193.144.48.98 not scanned
Host 193.144.48.99 not scanned
Host zape2.udc.es (193.144.48.100) not scanned
Host 101.viveros.udc.es (193.144.48.101) not scanned
Host 102.viveros.udc.es (193.144.48.102) not scanned
Host sicrede.udc.es (193.144.48.103) not scanned
Host 193.144.48.104 not scanned
Host mentor.udc.es (193.144.48.105) not scanned
...
Host 193.144.48.255 not scanned
Nmap done: 256 IP addresses (0 hosts up) scanned in 4.37 seconds

Opciones de host discovery con Nmap
 -sP (escaneo ping, barrido ping o Ping Scan

 Indica a nmap que sólo realice host discovery
 Emite listado de equipos que respondieron (host h is up)
 Intrusivo (envía paquetes a los objetivos)
 Permite reconocimiento ligero de la red sin llamar mucho la atención
 Más fiable que hacer ping a la dir. de broadcast (algunos equipos no

responden)

Opciones de host discovery con Nmap
 -sP (escaneo ping, barrido ping o Ping Scan) (Cont.):

 Envía:

 ICMP echo request
 Paquete TCP SYN al puerto 443
 Paquete TCP ACK al puerto 80
 Solicitud ICMP timestamp

 Si usuario no tiene privilegios: paquetes SYN a los puertos 80 y 443

utilizando la llamada al sistema connect()

Opciones de host discovery con Nmap
 Una de las formas de uso más comunes de Nmap es el sondeo de

una red de área local Ethernet

 En la mayoría de las redes locales hay muchas direcciones IP sin usar

en un momento determinado (especialmente en las que utilizan
rangos de direcciones privadas)

 Cuando Nmap intenta enviar un paquete IP crudo (raw), como
pudiera ser una solicitud de echo ICMP, el SO debe determinar
primero la dirección MAC (ARP) correspondiente a la IP objetivo para
poder dirigirse a ella en la trama Ethernet
 Si recibe respuesta, significa que está vivo => no tiene sentido seguir

enviando paquetes (ya hemos conseguido el objetivo)

Opciones de host discovery con Nmap
 Esta opción, que se puede especificar con -PR (Ping ARP), es el

comportamiento por defecto, cuando se analizan sistemas Ethernet,
si Nmap detecta que están en la red local, incluso aunque se
especifique -PE o -PS

 Se puede evitar con --send-ip

 El proceso de enviar múltiples ARP requests se convierte en

problemático (y lento) si necesitamos hacer muchas consultas ARP
en un corto período de tiempo

 S.O. no está pensado para esto

 Nmap se ocupa él mismo de las solicitudes ARP, con un algoritmo

optimizado

 Mucho más rápido y fiable que los escaneos basados en IP

Opciones de host discovery con Nmap

# nmap -sP 10.10.102.50/26

Starting Nmap 5.00 ( http://nmap.org ) at 2012-09-13 18:24 CEST
Host 10.10.102.4 is up (0.00031s latency).
MAC Address: 00:90:FB:22:FF:95 (Portwell)
Host 10.10.102.5 is up (0.00031s latency).
MAC Address: 00:90:FB:22:FF:95 (Portwell)
Host 10.10.102.9 is up (0.00040s latency).
MAC Address: 00:50:56:91:2F:52 (VMWare)
Host 10.10.102.22 is up (0.00023s latency).
MAC Address: 00:15:17:12:B2:98 (Intel Corporate)
Host 10.10.102.27 is up (0.00022s latency).
MAC Address: 00:1D:09:14:1E:7C (Dell)
Host 10.10.102.29 is up (0.00025s latency).
MAC Address: 00:50:56:91:30:02 (VMWare)
Host 10.10.102.30 is up (0.00039s latency).
MAC Address: 00:50:56:91:4E:18 (VMWare)
Host 10.10.102.34 is up (0.00032s latency).
MAC Address: 00:50:56:91:30:76 (VMWare)
Host 10.10.102.44 is up (0.00030s latency).
MAC Address: 00:50:56:91:2F:58 (VMWare)
Nmap done: 64 IP addresses (10 hosts up) scanned in 0.95 seconds

Opciones de host discovery con Nmap
 -PS [lista de puertos] (Ping TCP SYN)

 Envía un paquete TCP vacío con el flag SYN activo.
 El puerto destino por defecto es el 80 (man nmap)
 También se puede especificar una lista de puertos:

 -PS22,23,25,80,113,1050,35000

<- envía escaneos en paralelo

 El flag SYN indica al sistema remoto que quiere establecer una conexión

 Si el puerto destino está cerrado se recibirá un RST
 Si el puerto está abierto: el equipo remoto responderá con un TCP

SYN/ACK (segundo paso del Three-way handshake)

 El equipo local abortará la conexión con un RST (lo hace el SO)

 Aquí no importa si el puerto está abierto o cerrado. Si llega respuesta, la

máquina está "viva"

Opciones de host discovery con Nmap
 -PS [lista de puertos] (Ping TCP SYN) (Cont.)

 Usuario no privilegiado, no puede fabricar TCP raw paquets -> Nmap

utiliza la llamada al sistema connect() contra el puerto destino
 Si respuesta rápida (éxito o ECONNREFUSED):

 El sistema está "vivo"

 Si el intento de conexión se mantiene parado (vence temporizador)

 El sistema se marca como no disponible

Opciones de host discovery con Nmap
 -PA [lista de puertos] (Ping TCP ACK)

 Similar a Ping TCP SYN, pero con flag ACK en lugar de SYN

 Recordar: ACK indica que se han recibido datos de una conexión TCP

establecida

 En este caso la conexión no existe
 Los sistemas deberían responder con RST -> está "vivo"

 Usuario sin privilegios -> llamada a connect() <- envía SYN, no ACK :(

Opciones de host discovery con Nmap
 -PA [lista de puertos] (Ping TCP ACK) (Cont.)

 ¿Qué aporta?

 Muchos administradores configuran routers y FW stateless para que

bloqueen paquetes SYN con el objetivo de bloquear conexiones
entrantes y permitir conexiones salientes

 En este caso pasarán los ACK

 Los FW actuales suelen ser stateful -> son capaces de descartar

paquetes no esperados

 En este caso es más probable que funcione un paquete SYN dirigido a

un puerto abierto

 Entonces -PS o -PA?

 Las dos!

Opciones de host discovery con Nmap
 -PU [lista de
  • Links de descarga
http://lwp-l.com/pdf7353

Comentarios de: La trilogía (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios
Es necesario revisar y aceptar las políticas de privacidad