/* Variable definitions ==================== */ /* Use this with templates/template-twocol.html */ -->

Chat-Kasper MH

Que es el escaneo de puertos ? ]

Posted by kasp3r11 12:28, under |

Que es el escaneo de puertos ? ]


El escaneo de puertos consiste basicamente en detectar que servicios
nos esta ofreciendo un determinado host. Si al hacer un escaneo
encontramos un puerto abierto, segun cual fuese este es el servicio
que nos ofrece.

Por ejemplo vamos a escanear el host zapala.com.ar:

Interesting ports on zapala.com.ar (200.32.91.1)
Port State Service Protocol
21 open tcp ftp
25 open tcp smtp
80 open tcp http

Suponiendo que solo estos puertos estuvieran abiertos (HEH!) lo que nos
resulta de este escaneo, es que zapala.com.ar esta ofreciendo servicios
de transferencia de archivos, de correo y de web.
Mas adelante veremos de que forma podemos explotar la informacion que
hemos obtenido ahora.



3. [ Diferentes tecnicas de escaneo de puertos ]


Debido a los diferentes tipos de protocolos, los numerosos puertos que
pueden estar escuchando, y a los dispositivos empleados para evitar o
detectar el escaneo de puertos, han surgido diferentes tecnicas las
cuales tienen sus ventajas como desventajas. A continuacion veremos
algunas de las distintas tecnicas que hoy dia conocemos.

- TCP connect() scanning: esta es la forma mas popular de escaneo TCP y
consiste basicamente en usar la llamada a sistema connect() del sistema
operativo, si se logra establecer la coneccion con el puerto de la otra
computadora entonces este puerto esta abierto. Las ventajas que tiene
esta forma de escaneo es que no se necesita ningun privilegio especial
para poder llevarla a cabo, en la mayoria de los Unix cualquier usuario
puede hacer uso de la llamada connect(). Otra gran ventaja es la
velocidad. El lado negativo que encontramos es que es muy facil de
detectar y de filtrar, y generalmente el host loguea que establecemos
una coneccion e inmediatamente nos desconectamos.

- TCP SYN scanning: esta tecnica es la llamada escaneo "half-open" (o
mitad-abierta), porque no establecemos una coneccion TCP completa. Lo
que hacemos es enviar un paquete SYN como si fueramos a entablar una
coneccion TCP completa y esperamos por una respuesta. Podemos recibir
un SYN|ACK si el puerto esta escuchando o un RST si el puerto esta
cerrado. Si recibimos un SYN|ACK en respuesta, inmediatamente le
enviamos un RST. La mayor ventaja de esta tecnica es que muy pocos
servers nos loguean; y la desventaja es que se necesita privilegios de
root para construir estos paquetes SYN a enviar.

- TCP FIN scanning: algunos firewalls y packets filters escuchan por los
paquetes SYN en algunos puertos, y programas como el synlogger puden
detectar este tipo de escaneo. En cambio los paquetes FIN pueden penetrar
sin mayor problemas. La idea consiste en que al enviar un paquete FIN
si el puerto esta cerrado nos va a devolver un RST, y si el puerto esta
abierto nos va a ignorar. Esto se debe a un error en las implementaciones
TCP pero no funciona en un 100%. La mayoria de los sistemas parecen
susceptibles excepto los sistemas Microsoft que son inmunes (aunque
usted no lo crea).

- Fragmentation scanning: esta no es una tecnica en si misma, sino una
modificacion de otras tecnicas. Consiste en hacer una divicion de los
paquetes que enviamos, para no ser detectados por los packet filters y
los firewalls. Por ejemplo podemos hacer un SYN o un FIN scanning
fragmentando los paquetes que enviamos, y al ir quedando en cola en los
firewalls y en los packet filters no somos detectados.

- TCP reverse ident scanning: el protocolo ident permite averiguar el
nombre de usuario y el due~o de cualquier servicio corriendo dentro de
una coneccion TCP. Por ejemplo podemos conectarnos al puerto http y
usar identd para averiguar que esta corriendo la victima como root; esto
solo es posible estableciendo una coneccion TCP completa.

- FTP bounce attack: algo interesante del protocolo ftp, es que permite
lo que se llama coneccion proxy ftp. Osea yo podria conectarme a un ftp
desde un servidor proxy y al hacer esto establecer una coneccion y enviar
un archivo a cualquier parte de la Internet. Esto lo podemos aprovechar
tambien para hacer por ejemplo un escaneo TCP, ya que estariamos haciendolo
desde un servidor ftp pero detras de un firewall. Lo bueno que tiene esta
tecnica es obviamente que es muy dificil de rastrear, y lo malo es que
puede volverse sumamente lento.

- UDP ICMP port unreachable scanning: Lo que varia significativamente de
esta tecnica con respecta a las otras es que estamos usando el protocolo
UDP, este protocolo puede ser mas simple que el TCP pero al escanear se
vuelve sumamente mas complejo; esto se debe a que si un puerto esta abierto
no tiene que enviarnos un paquete de respuesta, y si un puerto esta cerrado
tampoco tiene que enviarnos un paquete de error. Afortunadamente, la
mayoria de los hosts nos envian un paquete de error "ICMP_PORT_UNREACH"
cuando un puerto UDP esta cerrado. Esta tecnica suele volverse muy lenta

Tags

Labels

Blog Archive

Blog Archive