
Пассивный сетевой сниффер безопасности, анализирующий 28 протоколов (ARP, STP, OSPF, VLAN, SCADA) для обнаружения уязвимостей в сетевом оборудовании без генерации трафика.
Сетевой сниффер безопасности для поиска уязвимостей в сети. Предназначен для пентестеров и инженеров безопасности.

___ __
/ | / /_ ____ _ _____
/ /| | / __ \/ __ \ | / / _ \
/ ___ |/ /_/ / /_/ / |/ / __/
/_/ |_/_.___/\____/|___/\___/
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
Вся информация, содержащаяся в этом репозитории, предоставляется только в образовательных и исследовательских целях. Автор не несет ответственности за любое незаконное использование этого инструмента.
Это специализированный инструмент сетевой безопасности, который помогает как пентестерам, так и специалистам по безопасности.
Above — это сетевой сниффер безопасности для поиска уязвимостей в сетевом оборудовании. Он полностью основан на анализе сетевого трафика, поэтому не создает шума в эфире. Он невидим. Полностью основан на библиотеке Scapy.
Above позволяет пентестерам автоматизировать процесс поиска уязвимостей в сетевом оборудовании. Протоколы обнаружения, динамическая маршрутизация, 802.1Q, протоколы разрешения имен, ICS, FHRP, STP, LLMNR/NBT-NS и т.д.
Обнаруживает до 28 протоколов:
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 работает в двух режимах:
Инструмент очень прост в работе и управляется с помощью аргументов:
.pcap в качестве входных данных и ищет в нем протоколы.pcap, имя которого вы укажете самиusage: 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
Полученная информация будет полезна не только пентестеру, но и инженеру безопасности — он узнает, на что нужно обратить внимание.
Когда Above обнаруживает протокол, он выводит необходимую информацию для указания вектора атаки или проблемы безопасности:
Воздействие: какую атаку можно выполнить на данный протокол;
Инструменты: какой инструмент можно использовать для запуска атаки;
Техническая информация: необходимая информация для пентестера, MAC/IP адреса отправителя, ID групп FHRP, домены OSPF/EIGRP и т.д.
Меры по устранению: рекомендации по исправлению проблем безопасности
Адреса источника/назначения: для протоколов Above отображает информацию о MAC-адресах и IP-адресах источника и назначения
Вы можете установить Above напрямую из репозиториев Kali Linux
caster@kali:~$ sudo apt update && sudo apt install above
Или:
:~$ 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
Не забудьте отключить брандмауэр на macOS!
Above требует root-доступа для сниффинга
Above можно запускать как с таймером, так и без него:
caster@kali:~$ sudo above --interface eth0 --timer 120
Чтобы остановить сниффинг трафика, нажмите CTRL + C
Пример:
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
Если вам нужно записать сниффированный трафик, используйте аргумент --output
caster@kali:~$ sudo above --interface eth0 --timer 120 --output above.pcap
Если вы прервете работу инструмента с помощью CTRL+C, трафик все равно будет записан в файл
Если у вас уже есть записанный трафик, вы можете использовать аргумент --input для поиска потенциальных проблем безопасности
caster@kali:~$ above --input hsrp.cap
Пример:
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
Это может быть очень полезно, если злоумышленник не хочет создавать шум в эфире с помощью ARP-сканирования и хочет тихо обнаруживать хосты. Эта функция запускается с помощью --passive-arp, и все найденные хосты будут записаны в файл 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'
Если хотите, вы можете указать таймер, как долго слушать ARP-кадры для поиска хостов. По умолчанию таймер не установлен.
После запуска терминал будет полностью очищен, и отобразится таблица, состоящая из соответствия IP-адреса и 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 |
+--------------------+------------------------------+--------------------+
Содержимое файла above_passive_arp.txt будет выглядеть так:
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
Вот так Above с обучением ARP-кадров может помочь обнаружить хосты в сегменте без шума в эфире.
Above также может находить VLAN ID в трафике. Это полезная опция, если злоумышленник при определенных обстоятельствах во время пентеста находится на транковом порту. Проблема в том, что на транковом порту весь трафик помечен тегами 802.1Q, принадлежащими сегментам VLAN. Above может извлечь все VLAN ID из эфира или из дампа трафика:
caster@kali:~$ sudo above --interface eth0 --search-vlan
При запуске этой функции терминал также будет очищен, и будет отображена и обновлена таблица:
+------------------------------+---------------+----------------------------------------+
|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 |
+------------------------------+---------------+----------------------------------------+
Также результат этой функции будет записан в файл 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
--------------------------------------------------------------------------------
Вот так можно найти информацию о сегментах VLAN, основываясь только на операциях с трафиком. Но стоит учитывать, что это специфический сценарий, злоумышленник нечасто будет находиться на транковом порту. Либо ему повезет с DTP, либо он наткнется на порт коммутатора, забытый администратором.
Начиная с версии 2.8 Above теперь может определять производителя по MAC-адресу, а именно по первым 24 битам. Это делается с помощью скачанной базы данных, которая затем преобразуется в модуль above_oui_dict.py, представляющий собой словарь, состоящий из уникальных OUI и названий производителей.
Copyright (c) 2025 Mahama Bazarov. Этот проект лицензирован по лицензии Apache 2.0
Если у вас есть какие-либо предложения или вы нашли ошибки, не стесняйтесь создавать задачи в репозитории или связываться со мной: [email protected]