la verdad es que para escaneo de puertos el manual que coloqué en algun sitio del foro, pero aqui lo vuelvo a poner:
MÉTODOS DE ESCANEO
TCP connect()
Explicación: consiste en utilizar el fundamento tipico de cualquier conexión mediante el protocolo TCP.
- escaneo rapido
-no necesita privilegios de root
-facil de detectar
-facil de evitar por el firewall
-----SYN------->
host1 ----SYN---------->host2 host1<--SYN-ACK----host2
<----RST-ACK— -----ACK------>
r
esultado: puerto cerrado resultado: puerto abierto
comandos: nmap –sT dirección_IP
TCP SYN
Explicación: Su fundamento no va mas allá que el mismo procedimiento de escaneo que el anterior método.
-analisis rapido
-flag SYN pasa mas desapercibido que otros flags
-privilegios de root y soporte en el kernel
------SYN------>
host1 --------SYN-------> host2 host1<----SYN-ACK---- host2
<---RST-ACK---- -----ACK-------->
resultado: Puerto cerrado resultado: puerto abierto
comandos: nmap -sS dirección_IP hping2 –c 4 –A –S –p numero_puerto dirección_IP
TCP ACK
Explicación: Su funcionamiento es análogo a un simple ping, como si comprobara si puede llegar a la máquina a escanear.
- Suele emplearse para hacer “firewalking”, es decir, informarse acerca de la politica de un firewall.
- Depende el resultado del software que gestione la maquina a escanear.
host1 -------ACK------> host2 host1 --------ACK------->host2
<------RST------- <------RST--------
TTL<64
resultado: puerto cerrado resultado: puerto abierto
comandos: hping2 –c 4 –A –p dirección_IP
TCP SYN ACK
Explicación: El paquete que se envía no respeta los pasos de conexión de maquinas usando el protocolo TCP, devolviendo asi la maquina escaneada un paquete con el flag RST si el puerto esta cerrado.
-puede pasar a traves del cortafuegos
-La familia BSD ignora estos paquetes (FREE BSD,OPEN BSD, NET BSD, Y FREE BSD)
host1 -----SYN-ACK----->host2 host1----SYN-ACK------>host2
<----RST---------
resultado: Puerto cerrado resultado: puerto abierto
comandos: hping2 –c 4 –S –A –p numero_puerto dirección_IP
TCP FIN
Explicación: Se basa en el fundamento estandar de fin de conexión entre máquinas con el protocolo TCP. Se trata de un método de escaneo inverso, es decir, aquellos paquetes que nos devuelva la maquina escaneada con el flag RST-ACK querrá decir que el puerto esta cerrado, asi pues todos aquellos puertos que no estan cerrados estarán obviamente abiertos.
- Los paquetes FIN son capaces de atravesar un firewall que filtre paquetes SYN
- Depende del dispositivo atacado la respuesta será diferente
host1 --------FIN------> host2 host1----FIN------->host2
<---RST-ACK---
resultado: puerto cerrado resultado: puerto abierto
comandos: nmap –sF direccion_IP hping2 –c 4 –F –p numero_puerto direccion_IP
TCP null flag
Explicación: Es otro tipo de escaneo inverso enviendo paquetes TCP sin flags.
- Los detectores de intrusos generalmente no detectan este tipo de escaneo
- Depende del dispositivo atacado
- Que no haya respuesta no implica obligatoriamente que esté abierto el puerto
host1 --------------------> host2 host1---------------->host2
<---RST-ACK----
resultado: puerto cerrado resultado: puerto abierto
comandos: nmap –sN direccion_IP ping –c 4 –p numero_puerto direccion_IP
TCP Xmas
Explicación: Es un escaneo inverso enviando paquetes TCP con TODOS los flags activados con idéntico resultado que el anterior método.
- Los detectores de intrusos generalmente no detectan este tipo de escaneo
- Depende del dispositivo atacado
- Que no haya respuesta no implica obligatoriamente que esté abierto el puerto
host1----RST-FIN-SYN-ACK-URG-PSM---->host2
<--------------RST-ACK--------------------
resultado: puerto cerrado
host1----RST-FIN-SYN-ACK-URG-PSM---->host2
resultado: puerto abierto
comandos: nmap –sX dirección_IP
hping2 –c 4 –F –S –R –P –A –U –X –Y –p numero_puerto dirección_IP
UDP con respuesta ICMP
Explicación: En vez de escanear los puertos TCP se centra en los puertos de datagrama(UDP), respondiendo con un mensaje ICMP_PORT_UNREACHABLE si el puerto esta cerrado, se trata de otro escaneo inverso.
[recomendación: revisar el fichero /etc/services para saber qué puertos utilizan UDP]
- Escaneo fácil
- Necesario ser root en la maquina local
host1 ----------UDP------------>host2 host1--------------UDP---------------->host2
<------icmp_port_unreachable-----
resultado: puerto abierto resultado: puerto cerrado
comandos: nmap –sU dirección_IP hping2 –V –c 4 -2 –p numero_puerto dirección_IP
Para contacto, dudas o correcciones mándame un email a
clasicoheavymetal@hotmail.com-----strike-maXter-----