TCP 標頭包含各種標誌,用於控制 TCP 連接中數據的傳輸。六個 TCP 控制標誌負責主機之間的連接管理,並向系統提供指令。其中,四個標誌(SYN、ACK、FIN 和 RST)管理連接的建立、維護和終止。另兩個標誌(PSH 和 URG)向系統提供傳輸數據的特定指令。
SYN 掃描主要涉及三個標誌:SYN、ACK 和 RST。攻擊者可以使用這些標誌來從伺服器中獲取不合法的資訊,特別是在進行枚舉攻擊時。
掃描工具用於掃描和識別目標網路上的活躍主機、開放端口、運行的服務、位置資訊、NetBIOS 資訊,以及所有開放的 TCP/IP 和 UDP 端口。這些工具收集的資訊有助於創建目標組織的概況,並掃描連接設備的開放端口。
# nmap <選項> <目標 IP 地址>
等等會著重介紹nmap
Hping3 是一款面向命令行的網路掃描和數據包構建工具,專門針對 TCP/IP 協議設計。它支持 ICMP 請求,並支援 TCP、UDP、ICMP 和原始 IP 協議。這款工具主要用於網路安全審計、測試防火牆、手動 MTU 發現、高級 traceroute、遠程操作系統指紋識別、TCP/IP Stac審計等功能。
ICMP ping:
hping3 -1 10.0.0.25
使用此命令,Hping 將向 10.0.0.25 發送 ICMP 回應請求,類似於使用 ping 程序。
ACK 掃描端口 80:
hping3 -A 10.0.0.25 -p 80
此掃描技術可用於探測防火牆的存在及其規則集。如果找到活動主機並開放端口,會返回 RST 回應。
UDP 掃描端口 80:
hping3 -2 10.0.0.25 -p 80
使用 -2 選項,Hping 會進行 UDP 掃描。如果發現端口關閉,會返回 ICMP "端口不可達" 消息;如果端口開放,則不會有任何消息。
TCP 序列號收集:
hping3 192.168.1.103 -Q -p 139
這個命令收集 192.168.1.103 生成的 TCP 序列號,用於分析目標系統的 TCP 堆棧。
SYN 掃描端口 50-60:
hping3 -8 50-60 -S 10.0.0.25 -V
這個命令將對 10.0.0.25 進行 50-60 端口範圍內的 SYN 掃描。
FIN、PUSH 和 URG 掃描端口 80:
hping3 -F -P -U 10.0.0.25 -p 80
執行 FIN、PUSH 和 URG 掃描。若端口 80 開放,則無回應;若端口關閉,Hping 將返回 RST 回應。
掃描子網中的活躍主機:
hping3 -1 10.0.1.x --rand-dest -I eth0
此命令隨機向 10.0.1.x 子網的所有主機發送 ICMP 回應請求,並檢查開放端口的主機。
截取所有包含 HTTP 簽名的流量:
hping3 -9 HTTP -I eth0
Hping 進入監聽模式,攔截所有經過接口 eth0 並包含 HTTP 簽名的流量。
SYN 洪水攻擊:
hping3 -S 192.168.1.1 -a 192.168.1.254 -p 22 --flood
攻擊者使用 SYN 洪水技術,通過偽造的 IP 地址來執行 DoS 攻擊。
Metasploit 是滲透測試專業人員的主要工具之一,提供了強大的漏洞利用和自動化測試功能。NetScanTools Pro 則是調查和分析網路設備的工具,適合於網路管理員和攻擊者查找網路中的漏洞。這兩款工具在安全測試和網路監控中都具有重要作用。
主機發現 是網路掃描過程中收集網路上「活躍」並響應系統的資訊。這是進行完整掃描、識別開放端口和服務的第一步。透過檢查網路中的活躍系統,攻擊者可以避免對每個系統的每個端口進行逐一掃描,從而提高掃描效率。
主機發現可以提供網路中系統的準確狀態,有助於攻擊者進一步進行滲透測試。
有多種 主機發現技術 可以用來發現網路中的活躍主機。以下列出了一些常見的主機發現技術:
ARP Ping 掃描:
nmap -sn -PR <target>
UDP Ping 掃描:
nmap -sn -PU <target>
ICMP Ping 掃描:
nmap -sn -PE <target>
nmap -sn -PE 10.10.1.5-24
nmap -sn -PP <target>
nmap -sn -PM <target>
TCP Ping 掃描:
nmap -PS <target>
TCP ACK Ping:發送 TCP ACK 數據包來測試目標是否存在防火牆,並檢查是否有回應。
Nmap 命令:
nmap -PA <target>
IP 協議掃描:
nmap -PO <target>
Nmap 可以組合多種 Ping 掃描來提高效率。例如:
nmap -PE -PS22,80 -PA80 <target>
在網路掃描過程中的下一步是檢查活躍系統中的開放端口和服務。這可以通過多種端口掃描技術來實現。網路管理員經常使用端口掃描技術來檢查其網路的安全政策,而攻擊者則用來識別主機上的開放端口和運行中的服務,從而試圖入侵網路。有時,使用者不小心將不必要的端口開放在他們的系統中,攻擊者可以利用這些開放端口發動攻擊。
以下是一些常見的端口及其對應的服務:
以下是port scanning技術
掃描技術 | Nmap 命令 | 請求 | 回應 | 優點 | 缺點 |
---|---|---|---|---|---|
TCP 完全開放掃描 | nmap -sT -v <目標 IP 地址> |
SYN 數據包 | SYN+ACK 數據包回應 - 端口開啟 RST 數據包回應 - 端口關閉 | 不需要超級用戶權限 | 容易被檢測和過濾,目標系統日誌會暴露連接 |
Stealth 掃描 | nmap -sS -v <目標 IP 地址> |
單一 SYN 數據包 | SYN+ACK 數據包回應 - 端口開啟 RST 數據包回應 - 端口關閉 | 避開防火牆規則和日誌機制 | 無 |
逆向 TCP 標誌掃描 | nmap -sF, -sN, -sX -v <目標 IP 地址> |
探測數據包 (FIN/URG/PSH/NULL) | 無回應 - 端口開啟 RST 數據包回應 - 端口關閉 | 避開許多 IDS 和日誌系統,高度隱蔽 | 需要網路套接字的原始訪問權限和超級用戶權限,不適用於 Windows 主機 |
Xmas 掃描 | nmap -sX -v <目標 IP 地址> |
探測數據包 (FIN + URG + PSH) | 無回應 - 端口開啟 RST 數據包回應 - 端口關閉 | 避開 IDS 和 TCP 三次握手 | 僅適用於符合 RFC 793 的系統,僅適用於 Unix 平台,不適用於新版本的 Windows |
FIN 掃描 | nmap -sF -v <目標 IP 地址> |
探測數據包 (FIN) | 無回應 - 端口開啟,RST 數據包回應 - 端口關閉 | 可以避開許多 IDS 和日誌系統,高度隱蔽 | 僅在 Unix 系統上有效,對 Microsoft Windows 無效 |
NULL 掃描 | nmap -sN -v <目標 IP 地址> |
探測數據包 (NULL) | 無回應 - 端口開啟,RST 數據包回應 - 端口關閉 | 可以通過檢查 TCP 標誌避免過濾系統檢測 | 僅在 Unix 系統上有效,對 Microsoft Windows 無效 |
TCP Maimon 掃描 | nmap -sM -v <目標 IP 地址> |
探測數據包 (FIN/ACK) | ICMP 不可達錯誤回應 - 端口過濾,RST 回應 - 端口關閉 | 對防火牆無法檢測的系統有效 | 僅在符合 RFC 793 的系統上有效 |
ACK 標誌探測掃描 | nmap -sA -v <目標 IP 地址> |
ACK 探測數據包 | 無回應 - 端口過濾 (狀態防火牆存在),RST 回應 - 端口無防火牆 | 避免 IDS,檢查目標網絡的過濾系統 | 執行速度慢,僅對某些 BSD 派生的系統有效 |
TTL 基於 ACK 探測 | nmap -sA --ttl 100 -v <目標 IP 地址> |
多個 TCP 端口上的 ACK 探測數據包 | RST 回應 - 端口開啟 (TTL 值 < 64),端口關閉 (TTL 值 > 64) | 幫助檢查過濾系統 | 非常慢,適用於特定系統 |
Window 基於 ACK 掃描 | nmap -sA --sW -v <目標 IP 地址> |
ACK 探測數據包 | RST 回應 - 端口開啟 (WINDOW 值非零),ICMP 錯誤 - 端口過濾 | 有效檢測過濾系統 | 需要存取原始套接字 |
IDLE/IPID 標頭掃描 | nmap -Pn -p -sI <僵屍主機名> |
SYN 探測數據包 | SYN+ACK 回應 - 端口開啟,RST 回應 - 端口關閉 | 完全隱蔽掃描遠程主機 | 需要識別僵屍主機的序列號 |
UDP 掃描 | nmap -sU -v <目標 IP 地址> |
UDP 探測數據包 | 無回應 - 端口開啟,ICMP 不可達錯誤回應 - 端口關閉 | 無 TCP 握手開銷,適用於 Windows 系統 | 執行速度慢,無法區分關閉端口與過濾端口 |
SCTP INIT 掃描 | nmap -sY -v <目標 IP 地址> |
INIT 探測數據包 | INIT+ACK 回應 - 端口開啟,ABORT 回應 - 端口關閉 | 能快速檢測成千上萬個端口 | 無法區分開啟和過濾的端口 |
SCTP COOKIE ECHO 掃描 | nmap -sZ -v <目標 IP 地址> |
COOKIE ECHO 探測數據包 | 無回應 - 端口開啟,ABORT 回應 - 端口關閉 | 能檢測隱蔽防火牆規則集 | 僅在啟用 SCTP COOKIE 的系統上有效 |
今天就先到這裡,明天會把OS Discovery然後怎麼避開防火牆跟IDS記完,這nmap掃描如果要細講可以變成一本書了,
推薦一本陳明照老師出的書,HyRead有電子版可以買
裡面真的把nmap當成一門學科在說,看完受益良多