
Sniffer de seguridad de red pasivo que analiza 28 protocolos (ARP, STP, OSPF, VLAN, SCADA) para detectar vulnerabilidades en equipos de red sin generar tráfico.
Sniffer de seguridad de red para encontrar vulnerabilidades en la red. Diseñado para pentesters e ingenieros de seguridad.

___ __
/ | / /_ ____ _ _____
/ /| | / __ \/ __ \ | / / _ \
/ ___ |/ /_/ / /_/ / |/ / __/
/_/ |_/_.___/\____/|___/\___/
Above: Network Security Sniffer
Developer: Mahama Bazarov (Caster)
Contact: [email protected]
Version: 2.8.1
Codename: Rubens Barrichello
Documentation & Usage: https://github.com/caster0x00/Above
Toda la información contenida en este repositorio se proporciona únicamente con fines educativos y de investigación. El autor no es responsable de ningún uso ilegal de esta herramienta.
Es una herramienta especializada de seguridad de red que ayuda tanto a pentesters como a profesionales de la seguridad.
Above es un sniffer de seguridad de red para encontrar vulnerabilidades en equipos de red. Está basado completamente en el análisis de tráfico de red, por lo que no genera ruido en el aire. Es invisible. Completamente basado en la librería Scapy.
Above permite a los pentesters automatizar el proceso de encontrar vulnerabilidades en hardware de red. Protocolos de descubrimiento, enrutamiento dinámico, 802.1Q, protocolos de resolución, ICS, FHRP, STP, LLMNR/NBT-NS, etc.
Detecta hasta 28 protocolos:
MACSec (802.1X AE)
EAPOL (Checking 802.1X versions)
ARP (Host Discovery)
CDP (Cisco Discovery Protocol)
DTP (Dynamic Trunking Protocol)
LLDP (Link Layer Discovery Protocol)
VLAN (802.1Q)
S7COMM (Siemens) (SCADA)
OMRON (SCADA)
TACACS+ (Terminal Access Controller Access Control System Plus)
ModbusTCP (SCADA)
STP (Spanning Tree Protocol)
OSPF (Open Shortest Path First)
EIGRP (Enhanced Interior Gateway Routing Protocol)
BGP (Border Gateway Protocol)
VRRP (Virtual Router Redundancy Protocol)
HSRP (Host Standby Redundancy Protocol)
GLBP (Gateway Load Balancing Protocol)
IGMP (Internet Group Management Protocol)
LLMNR (Link Local Multicast Name Resolution)
NBT-NS (NetBIOS Name Service)
MDNS (Multicast DNS)
DHCP (Dynamic Host Configuration Protocol)
DHCPv6 (Dynamic Host Configuration Protocol v6)
ICMPv6 (Internet Control Message Protocol v6)
SSDP (Simple Service Discovery Protocol)
MNDP (MikroTik Neighbor Discovery Protocol)
SNMP (Simple Network Management Protocol)
Above funciona en dos modos:
La herramienta es muy simple en su funcionamiento y se controla mediante argumentos:
.pcap ya preparado como entrada y busca protocolos en él.pcap, cuyo nombre especificas tú mismousage: above.py [-h] [--interface INTERFACE] [--timer TIMER] [--output OUTPUT] [--input INPUT] [--passive-arp] [--search-vlan]
options:
-h, --help show this help message and exit
--interface INTERFACE
Interface for traffic listening
--timer TIMER Time in seconds to capture packets, default: not set
--output OUTPUT File name where the traffic will be recorded, default: not set
--input INPUT File name of the traffic dump
--passive-arp Passive ARP (Host Discovery)
--search-vlan VLAN Search
La información obtenida será útil no solo para el pentester, sino también para el ingeniero de seguridad, quien sabrá a qué debe prestar atención.
Cuando Above detecta un protocolo, muestra la información necesaria para indicar el vector de ataque o el problema de seguridad:
Impacto: Qué tipo de ataque se puede realizar sobre este protocolo;
Herramientas: Qué herramienta se puede utilizar para lanzar un ataque;
Información técnica: Información necesaria para el pentester, direcciones MAC/IP del remitente, IDs de grupo FHRP, dominios OSPF/EIGRP, etc.
Mitigación: Recomendaciones para solucionar los problemas de seguridad
Direcciones de origen/destino: Para los protocolos, Above muestra información sobre las direcciones MAC y IP de origen y destino
Puedes instalar Above directamente desde los repositorios de Kali Linux
caster@kali:~$ sudo apt update && sudo apt install above
O:
:~$ sudo apt-get install python3-scapy python3-colorama python3-setuptools
:~$ git clone https://github.com/caster0x00/above
:~$ cd above/
:~/above$ sudo python3 setup.py install
# Install python3 first
brew install python3
# Then install required dependencies
sudo pip3 install scapy colorama setuptools
# Clone the repo
git clone https://github.com/caster0x00/above
cd above/
sudo python3 setup.py install
¡No olvides desactivar tu cortafuegos en macOS!
Above requiere acceso root para el sniffing
Above se puede ejecutar con o sin temporizador:
caster@kali:~$ sudo above --interface eth0 --timer 120
Para detener el sniffing de tráfico, presiona CTRL + C
Ejemplo:
caster@kali:~$ sudo above --interface eth0 --timer 120
___ __
/ | / /_ ____ _ _____
/ /| | / __ \/ __ \ | / / _ \
/ ___ |/ /_/ / /_/ / |/ / __/
/_/ |_/_.___/\____/|___/\___/
Above: Network Security Sniffer
Developer: Mahama Bazarov (Caster)
Contact: [email protected]
Version: 2.8.1
Codename: Rubens Barrichello
Documentation & Usage: https://github.com/caster0x00/Above
[*] Start Sniffing
[+] Detected STP Frame
[*] Attack Impact: Partial MITM
[*] Tools: Yersinia, Scapy
[*] STP Root Switch MAC: 00:11:22:33:44:55
[*] STP Root ID: 32768
[*] STP Root Path Cost: 0
[*] Mitigation: Enable BPDU Guard or Portfast
[*] Vendor: Routerboard.com
Si necesitas grabar el tráfico snifeado, usa el argumento --output
caster@kali:~$ sudo above --interface eth0 --timer 120 --output above.pcap
Si interrumpes la herramienta con CTRL+C, el tráfico se sigue escribiendo en el archivo
Si ya tienes algo de tráfico grabado, puedes usar el argumento --input para buscar posibles problemas de seguridad
caster@kali:~$ above --input hsrp.cap
Ejemplo:
caster@kali:~$ sudo above --input hsrp.cap
___ __
/ | / /_ ____ _ _____
/ /| | / __ \/ __ \ | / / _ \
/ ___ |/ /_/ / /_/ / |/ / __/
/_/ |_/_.___/\____/|___/\___/
Above: Network Security Sniffer
Developer: Mahama Bazarov (Caster)
Contact: [email protected]
Version: 2.8.1
Codename: Rubens Barrichello
Documentation & Usage: https://github.com/caster0x00/Above
[+] Analyzing pcap file...
[+] Detected HSRP Packet
[*] HSRP Active Router Priority: 90
[+] Attack Impact: MITM
[*] Tools: Loki, Scapy, Yersinia
[*] HSRP Group Number: 10
[+] HSRP Virtual IP Address: 10.28.168.254
[*] HSRP Sender IP: 10.28.168.253
[*] HSRP Sender MAC: 00:00:0c:07:ac:0a
[!] Authentication: Plaintext Phrase: cisco
[*] Mitigation: Priority 255, Authentication, Extended ACL
[*] Vendor: Cisco Systems
Esto puede ser muy útil si un atacante no quiere generar ruido en el aire con escaneos ARP y descubrir hosts de forma silenciosa. Esta función se ejecuta con --passive-arp y todos los hosts encontrados se escribirán en el archivo above_passive_arp.txt.
caster@kali:~$ sudo above --interface eth0 --passive-arp
[+] Starting Host Discovery...
[*] IP and MAC addresses will be saved to 'above_passive_arp.txt'
Si lo deseas, puedes especificar un temporizador para cuánto tiempo escuchar tramas ARP y encontrar hosts. Por defecto, no se establece ningún temporizador.
Una vez iniciado, la terminal se limpiará por completo y se mostrará una tabla con la asignación de direcciones IP y MAC:
+--------------------+------------------------------+--------------------+
| IP Address | MAC Address | ARP Type |
+--------------------+------------------------------+--------------------+
| 172.16.120.12 | f0:27:65:ba:1c:42 | ARP Response |
| 172.16.120.45 | 6d:9f:84:2b:33:ea | ARP Request |
| 172.16.120.78 | 3a:7c:19:d8:4e:21 | ARP Response |
| 172.16.120.103 | c4:12:76:ae:50:bb | ARP Request |
| 172.16.120.127 | 89:3b:df:92:6a:54 | ARP Response |
| 172.16.120.156 | b7:5d:49:cb:72:99 | ARP Request |
| 172.16.120.189 | 1e:47:ac:3d:15:f8 | ARP Response |
| 172.16.120.222 | 43:9a:df:e0:84:3c | ARP Request |
+--------------------+------------------------------+--------------------+
El contenido del archivo above_passive_arp.txt se verá así:
caster@kali:~$ cat above_passive_arp.txt
Above: Passive ARP Host Discovery
Time: 2024-08-16 17:30:16
--------------------------------------------------
172.16.120.12 - f0:27:65:ba:1c:42
172.16.120.45 - 6d:9f:84:2b:33:ea
172.16.120.78 - 3a:7c:19:d8:4e:21
172.16.120.103 - c4:12:76:ae:50:bb
172.16.120.127 - 89:3b:df:92:6a:54
172.16.120.156 - b7:5d:49:cb:72:99
172.16.120.189 - 1e:47:ac:3d:15:f8
172.16.120.222 - 43:9a:df:e0:84:3c
Así es como Above con el aprendizaje de tramas ARP puede ayudar a descubrir hosts en un segmento sin ruido en el aire.
Above también puede encontrar IDs de VLAN en el tráfico. Esta es una opción útil si el atacante se encuentra en un puerto troncal bajo ciertas circunstancias durante el pentest. El problema es que en un puerto troncal, todo el tráfico está etiquetado con etiquetas 802.1Q que pertenecen a segmentos VLAN. Above puede extraer todos los IDs de VLAN desde el aire o desde un volcado de tráfico:
caster@kali:~$ sudo above --interface eth0 --search-vlan
Cuando ejecutes esta función, la terminal también se limpiará y se mostrará y actualizará una tabla:
+------------------------------+---------------+----------------------------------------+
|VLAN ID |Frames Count |How to Jump |
+------------------------------+---------------+----------------------------------------+
|120 |8 |sudo vconfig add eth0 120 |
|80 |8 |sudo vconfig add eth0 80 |
|251 |7 |sudo vconfig add eth0 251 |
|190 |6 |sudo vconfig add eth0 190 |
+------------------------------+---------------+----------------------------------------+
Además, el resultado de esta función se escribirá en el archivo above_discovered_vlan.txt:
caster@kali:~$ cat above_discovered_vlan.txt
Above: Discovered VLAN ID
Time: 2024-08-16 17:41:19
--------------------------------------------------------------------------------
VLAN ID Frames Count How to Jump
--------------------------------------------------------------------------------
1 208 sudo vconfig add eth0 1
5 972 sudo vconfig add eth0 5
6 904 sudo vconfig add eth0 6
10 20 sudo vconfig add eth0 10
12 20 sudo vconfig add eth0 12
13 20 sudo vconfig add eth0 13
11 20 sudo vconfig add eth0 11
2000 1 sudo vconfig add eth0 2000
1000 2 sudo vconfig add eth0 1000
--------------------------------------------------------------------------------
Así es como puedes encontrar información sobre segmentos VLAN basándote únicamente en operaciones de tráfico. Pero hay que considerar que es un escenario específico; no es frecuente que un atacante esté en un puerto troncal. O tendrá suerte con DTP o se topará con un puerto de switch olvidado por el administrador.
A partir de la versión 2.8, Above ahora puede identificar el fabricante por dirección MAC, específicamente por los primeros 24 bits. Esto se hace utilizando una base de datos descargada y luego convirtiéndola en el módulo above_oui_dict.py, que es un diccionario compuesto por OUIs únicos y nombres de fabricantes.
Copyright (c) 2025 Mahama Bazarov. Este proyecto está bajo la licencia Apache 2.0
Si tienes alguna sugerencia o encuentras algún error, no dudes en crear issues en el repositorio o contactarme: [email protected]