Documentos de Académico
Documentos de Profesional
Documentos de Cultura
CLASE PRACTICA SEGURIDAD ESCANEO CON NMAPf PDF
CLASE PRACTICA SEGURIDAD ESCANEO CON NMAPf PDF
Fases de un ATAQUE
• Reconocimiento.
• Escaneo.
• Acceso.
• Mantener el acceso.
• Borrar actividades.
2
Reconocimiento
• El atacante obtiene la mayor cantidad de
información del (los) posible (s) objetivo
(s).
– Footprinting.
– Dumpster diving.
– Fingerprinting.
– Ingeniería social.
3
Tipos de reconocimiento
• Pasivo
– Obtener información sin interacción directa
con la(s) victima(s).
• Activo
– Interacción directa a través de cualquier
medio.
4
Escaneo
• Fase en la cual el atacante obtiene
información del sistema de la victima.
– Escaneos de puertos, de red y de
vulnerabilidades.
• Obtiene entre otras:
– IP’s, MAC’s.
– Sistema operativo.
– Puertos abiertos.
– Servicios.
5
– Etc.
Tipos de escaneo
• Port scanning.
– Comprueba los servicios corriendo en el
equipo victima.
• Network scanning.
– Identificar host activos en la red.
• Vulnerability scanning.
– Identifica las vulnerabilidades del sistema o
de los servicios activos.
6
Scaneos utilizando banderas
TCP.
• Half open can (No abre una full tcp conn).
• SYN/ACK scan.
• XMAS scan (Envía todas las banderas).
• FIN scan (Solo unix).
• ACK scan (Utiliza el valor del TTL).
• NULL scan (Solo unix).
• IDLE scan (IP Spoofing).
• Full open scan (Detectable).
7
Acceso
• El atacante penetra en el equipo victima,
explota vulnerabilidades del sistema, de
alguna aplicación en particular o en la red.
– Desbordamiento.
– DoS.
– Secuestro de sesión.
– Crackeo de contraseñas.
8
Mantener el acceso
• El atacante intenta mantener el acceso,
puede cargar, descargar o manipular
datos de aplicaciones o las
configuraciones.
– Backdoors.
– Rootkits.
– Troyanos.
9
Borrar actividades.
• El hacker cual astuto ladrón destruye
todos los rastros dejados a su paso.
– Steganography.
– Tunneling.
– Alterar logs del sistema.
10
ESCANEO DE
PUERTOS
M.A. Ing. Robert E. Puican Gutiérrez
ESCANEO DE PUERTOS
• Técnica usada para auditar máquinas y
redes con el fin de detectar que puertos
están abiertos, cerrados o protegidos.
SALUDO DE TRES VIAS
(Three way handshake)
SYN
SYN / ACK
ACK
FINALIZACION DE UNA
CONEXIÓN TCP
ESTADOS TCP
• TCP es un protocolo orientado a conexión, y como tal tiene unos estados
definidos según en qué punto de la conexión se encuentre el socket. Estos
estados están detallados en el RFC #793 y son:
• LISTEN: Un servidor que espera conexiones de un cliente y escucha un
puerto, genera un socket con estado LISTEN. Cuando el cliente se
conecte, se creará un socket con la conexión establecida y otro que quede
a la escucha.
• SYN-SENT: Al enviar un paquete con el flag SYN levantado, como primer
paso para el saludo en tres tiempos de una conexión, el socket entra en el
estado SYN-SENT.
• SYN-RECEIVED: Cuando tiene lugar el segundo paso del saludo en tres
tiempos y se responde al primer SYN con un SYN/ACK, los sockets tienen
estado SYN-RECEIVED.
• ESTABLISHED: Una vez se completa el saludo en tres tiempos se entra
en estado ESTABLISHED y se permanece en él durante todo el tiempo
que dura la conexión.
• FIN-WAIT-1: El socket entra en este estado una vez envía el paquete con
el flag FIN levantado pero aún no ha recibido la confirmación de ese
paquete. Solamente se reciben datos.
ESTADOS TCP
• FIN-WAIT-2: Una vez recibida la confirmación ACK del paquete
FIN, entramos en este estado. Solamente se reciben datos.
• CLOSE-WAIT: Si somos nosotros los que recibimos el paquete
con el flag FIN levantado pero aún tenemos datos que enviar, el
socket entra en estado CLOSE-WAIT.
• CLOSING: Si ambos host desean finalizar la conexión a la vez,
los sockets entran en estado CLOSING.
• LAST-ACK: Una vez enviados sendos paquetes con el flag FIN
levantado en la finalización de una conexión TCP, cuando el último
en haber enviado el paquete está pendiente de recibir la
confirmación, entra en estado LAST-ACK.
• TIME-WAIT: Una vez enviados sendos paquetes con el flag FIN
levantado en la finalización de una conexión TCP, cuando el
primero en haber enviado el paquete envía la confirmación al
último paquete FIN, entra en estado TIME-WAIT para esperar un
tiempo prudencial que le permita cerciorarse de la recepción del
mismo.
LOS SEIS ESTADOS DE UN
PUERTO - NMAP
• ABIERTO
– Una aplicación acepta conexiones TCP o paquetes UDP en este puerto. El
encontrar esta clase de puertos es generalmente el objetivo primario de realizar
un sondeo de puertos. Las personas orientadas a la seguridad saben que cada
puerto abierto es un vector de ataque. Los atacantes y las personas que realizan
pruebas de intrusión intentan aprovechar puertos abiertos, por lo que los
administradores intentan cerrarlos, o protegerlos con cortafuegos, pero sin que
los usuarios legítimos pierdan acceso al servicio. Los puertos abiertos también
son interesantes en sondeos que no están relacionados con la seguridad porque
indican qué servicios están disponibles para ser utilizados en una red.
• CERRADO
– Un puerto cerrado es accesible: recibe y responde a las sondas de Nmap, pero
no tiene una aplicación escuchando en él. Pueden ser útiles para determinar si
un equipo está activo en cierta dirección IP (mediante descubrimiento de
sistemas, o sondeo ping), y es parte del proceso de detección de sistema
operativo. Como los puertos cerrados son alcanzables, o sea, no se encuentran
filtrados, puede merecer la pena analizarlos pasado un tiempo, en caso de que
alguno se abra. Los administradores pueden querer considerar bloquear estos
puertos con un cortafuegos. Si se bloquean aparecerían filtrados, como se
discute a continuación.
LOS SEIS ESTADOS DE UN
PUERTO - NMAP
• FILTRADO
– Nmap no puede determinar si el puerto se encuentra abierto porque un filtrado
de paquetes previene que sus sondas alcancen el puerto. El filtrado puede
provenir de un dispositivo de cortafuegos dedicado, de las reglas de un
enrutador, o por una aplicación de cortafuegos instalada en el propio equipo.
Estos puertos suelen frustrar a los atacantes, porque proporcionan muy poca
información. A veces responden con mensajes de error ICMP del tipo 3, código
13 (destino inalcanzable: comunicación prohibida por administradores), pero los
filtros que sencillamente descartan las sondas sin responder son mucho más
comunes. Esto fuerza a Nmap a reintentar varias veces, considerando que la
sonda pueda haberse descartado por congestión en la red en vez de haberse
filtrado. Esto ralentiza drásticamente los sondeos.
• NO FILTRADO
– Este estado indica que el puerto es accesible, pero que Nmap no puede
determinar si se encuentra abierto o cerrado. Solamente el sondeo ACK,
utilizado para determinar las reglas de un cortafuegos, clasifica a los puertos
según este estado. El analizar puertos no filtrados con otros tipos de análisis,
como el sondeo Window, SYN o FIN, pueden ayudar a determinar si el puerto se
encuentra abierto.
LOS SEIS ESTADOS DE UN
PUERTO - NMAP
• abierto|filtrado
– Nmap marca a los puertos en este estado cuando no puede
determinar si el puerto se encuentra abierto o filtrado. Esto
ocurre para tipos de análisis donde no responden los puertos
abiertos. La ausencia de respuesta puede también significar que
un filtro de paquetes ha descartado la sonda, o que se elimina
cualquier respuesta asociada. De esta forma, Nmap no puede
saber con certeza si el puerto se encuentra abierto o filtrado. Los
sondeos UDP, protocolo IP, FIN, Null y Xmas clasifican a los
puertos de esta manera.
• cerrado|filtrado
– Este estado se utiliza cuando Nmap no puede determinar si un
puerto se encuentra cerrado o filtrado, y puede aparecer
aparecer sólo durante un sondeo IPID pasivo.
TECNICAS DE ESCANEO
TCP connect()
• Esta técnica es quizá la más común en cualquier software de
escaneo de puertos. La técnica consiste en usar la llamada
connect() de TCP para intentar establecer una conexión con
cada uno de los puertos del host a escanear. Si la conexión se
establece, el puerto está abierto (escuchando conexiones); en
caso de recibir un aviso de cierre de conexión (RST), el puerto
estará cerrado; y en caso de no recibir respuesta, se deduce que
el puerto está silencioso.
• Este tipo de escaneo es extremadamente rápido, pues puede
realizarse de forma paralela para distintos puertos mediante el uso
de varios sockets. Además, es un escaneo fácil de implementar.
• Su principal desventaja es que es llamativo en exceso, pues
resulta a todas luces llamativo establecer cientos o miles de
conexiones en un margen de pocos segundos. Además, al
realizarse intentos completos de conexión, cualquier sistema
guardará registros.
TCP connect()
• Comportamiento del escaneo:
• Puerto TCP Abierto
SYN
SYN / ACK
ACK
RST
SYN / ACK
RST
RST
RST