用于发现网络中漏洞的网络安全嗅探工具。专为渗透测试人员和安全工程师设计。

___ __
/ | / /_ ____ _ _____
/ /| | / __ \/ __ \ | / / _ \
/ ___ |/ /_/ / /_/ / |/ / __/
/_/ |_/_.___/\____/|___/\___/
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 检测到某个协议时,它会输出必要的信息以指明攻击向量或安全问题:
你可以直接从 Kali Linux 仓库安装 Above
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。如果渗透测试人员在某种情况下处于中继端口上,这将是一个有用的选项。问题在于,在中继端口上,所有流量都带有属于 VLAN 网段的 802.1Q 标签。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 和厂商名称组成的字典。
版权所有 (c) 2025 Mahama Bazarov。本项目采用 Apache 2.0 许可证
如果你有任何建议或发现任何错误,欢迎在仓库中创建 Issue 或联系我:[email protected]