Hping es un ensamblador/analizador de paquetes TCP/IP de línea de comandos con funcionalidad de secuencias de comandos Tcl integrada. Inspirado en el comando ping, Hping fue desarrollado por Antirez en 1998. Como sugiere el nombre, hping no solo puede enviar solicitudes de eco ICMP, sino que también es compatible con los protocolos TCP, UDP, ICMP y RAW-IP, tiene un modo de ruta de seguimiento, el capacidad de enviar archivos entre un canal cubierto y muchas otras características. Hping a menudo se considera una herramienta complementaria a Nmap. La herramienta se ejecuta en todos los principales sistemas operativos, incluidos Linux, *BSD y Windows. Hping se usó principalmente como una herramienta de seguridad en el pasado, pero ahora se puede usar de muchas maneras para probar redes y hosts. A continuación se muestran las cosas que puede hacer con hping:
- Pruebas de cortafuegos
- Escaneo avanzado de puertos
- Pruebas de red, usando diferentes protocolos, TOS, fragmentación
- Descubrimiento de MTU de ruta manual
- Traceroute Avanzado, bajo todos los protocolos soportados
- Huellas digitales remotas del sistema operativo
- Adivinación remota del tiempo de actividad
- Auditoría de pilas TCP/IP
- Estudiantes aprendiendo TCP/IP
¿Cómo instalar Hping?
Hping está disponible como RPM en el repositorio de EPEL. Si tiene la configuración del repositorio EPEL, puede instalar con yum . Si no ha configurado el repositorio EPEL, deberá configurarlo de la siguiente manera:
#yum install epel-release
Instalar Hping3
#yum install hping3
Cómo usar Hping/Hping3
A continuación se muestran las cosas que puede hacer con hping.
Escaneo de puertos
Escaneo TCP SYN
La forma más sencilla de iniciar un escaneo TCP SYN clásico es enviar paquetes TCP SYN a puertos en host/ip. El siguiente comando escaneará el puerto 80 en IP 192.168.8.223. Desde la salida, podemos notar los indicadores SYN y ACK establecidos, lo que indica un puerto abierto.
VM-1#hping3 -S 192.168.8.223 -p 80 -c 1 HPING 192.168.8.223 (eth0 192.168.8.223): S set, 40 headers + 0 data bytes len=44 ip=192.168.8.223 ttl=64 DF id=0 sport=80 flags=SA seq=0 win=29200 rtt=0.3 ms --- 192.168.8.223 hping statistic --- 1 packets transmitted, 1 packets received, 0% packet loss round-trip min/avg/max = 0.3/0.3/0.3 ms VM-1#
Nota:la opción -c 1 es enviar el paquete SYN solo una vez.
Para escanear un rango de puertos a partir del puerto 80 y ejecute el siguiente comando.
VM-1$hping3 -S 192.168.8.223 -p ++80 HPING 192.168.8.223 (eth0 192.168.8.223): S set, 40 headers + 0 data bytes len=44 ip=192.168.8.223 ttl=64 DF id=0 sport=80 flags=SA seq=0 win=29200 rtt=0.4 ms len=40 ip=192.168.8.223 ttl=64 DF id=22960 sport=81 flags=RA seq=1 win=0 rtt=0.4 ms len=40 ip=192.168.8.223 ttl=64 DF id=23167 sport=82 flags=RA seq=2 win=0 rtt=0.3 ms ^C --- 192.168.8.223 hping statistic --- 3 packets transmitted, 3 packets received, 0% packet loss round-trip min/avg/max = 0.3/0.4/0.4 ms VM-1$
Desde el comando anterior, puede notar las banderas R configuradas. Estos son los paquetes RST devueltos que indican que todos estos puertos están cerrados.
Si desea escanear un rango de puertos, use el siguiente comando:
VM-1$hping3 -8 80-86 -S 192.168.8.223 Scanning 192.168.8.223 (192.168.8.223), port 80-86 7 ports to scan, use -V to see all the replies +----+-----------+---------+---+-----+-----+-----+ |port| serv name | flags |ttl| id | win | len | +----+-----------+---------+---+-----+-----+-----+ 80 http : .S..A... 64 0 29200 44 All replies received. Done. Not responding ports: VM-1$
Del escaneo anterior del rango de puertos entre 80 y 86, solo el puerto 80 está abierto con los indicadores SYN y ACK establecidos.
Escaneo TCP ACK
Este escaneo ayudaría a ver si un host está activo (cuando Ping está bloqueado, por ejemplo). El siguiente comando debería enviar una respuesta RST si el puerto está abierto.
VM-1$hping3 -p 80 -A 192.168.8.223 -c 1 HPING 192.168.8.223 (eth0 192.168.8.223): A set, 40 headers + 0 data bytes len=40 ip=192.168.8.223 ttl=64 DF id=50603 sport=80 flags=R seq=0 win=0 rtt=0.2 ms --- 192.168.8.223 hping statistic --- 1 packets transmitted, 1 packets received, 0% packet loss round-trip min/avg/max = 0.2/0.2/0.2 ms VM-1$
y muchos más usos de hping. Para obtener más información sobre el uso de hping, visite aquí.