關于UDP端口掃描概述

盡管互聯網上大多數流行服務都基于 TCP 協議運行,但 UDP 服務也廣泛部署。DNS、SNMP 和 DHCP(注冊端口 53、161/162 和 67/68)是最常見的服務之一。

由于 UDP 掃描通常比 TCP 掃描更慢、更困難,一些安全審計人員可能會忽略這些端口。這是一個錯誤,因為可利用的 UDP 服務非常普遍,攻擊者也不會忽視整個協議。幸運的是,Nmap 可以幫助清查 UDP 端口。

通過 -sU 選項激活 UDP 掃描。它可以與 TCP 掃描類型(如 SYN 掃描 -sS)結合使用,在同一次運行中檢查兩種協議。

UDP 掃描通過向每個目標端口發送 UDP 數據包來工作。對于大多數端口,這個數據包將是空的(沒有負載),但對于一些更常見的端口,會發送特定于協議的負載。根據響應(或沒有響應),端口被分配到四種狀態之一,如下表所示。

表 1.1. Nmap 如何解釋 UDP 探測響應

探測響應分配狀態
來自目標端口的任何 UDP 響應(不尋常)open(開放)
沒有收到響應(即使經過重傳)open|filtered(開放或被過濾)
ICMP 端口不可達錯誤(類型 3,代碼 3)closed(關閉)
其他 ICMP 不可達錯誤(類型 3,代碼 1、2、9、10 或 13)filtered(被過濾)

這個表格中最令人好奇的元素可能是 open|filtered 狀態。它是 UDP 掃描最大挑戰的癥狀:開放端口很少響應空探測。那些 Nmap 有特定協議負載的端口更有可能收到響應并被標記為 open,但對于其余端口,目標 TCP/IP 棧只是將空數據包傳遞給監聽應用程序,后者通常會立即丟棄它作為無效數據。如果所有其他狀態的端口都會響應,那么可以通過排除法推斷出開放端口。不幸的是,防火墻和過濾設備也已知會在沒有響應的情況下丟棄數據包。因此,當 Nmap 在多次嘗試后沒有收到響應時,它無法確定端口是 open 還是 filtered

在 Nmap剛 發布時,過濾設備比較少見,以至于 Nmap 可以(并且確實)假設端口是 open。現在隨著互聯網更好的進行防護,所以 Nmap 在 2004 年(版本 3.70)改變為將無響應的 UDP 端口報告為 open|filtered

?nmap -sU -v 192.168.1.123?Starting Nmap ( https://nmap.org )Nmap scan report for 192.168.1.123(The 997 ports scanned but not shown below are in state: closed)PORT ?  STATE ? ? ? ? SERVICE53/udp  open|filtered domain67/udp  open|filtered dhcpserver111/udp open|filtered rpcbindMAC Address: 00:02:E3:14:11:02 (Lite-on Communications)?Nmap done: 1 IP address (1 host up) scanned in 999.25 seconds

掃描展示了 open|filtered 模糊問題以及另一個問題:UDP 掃描可能很慢。

Nmap 提供了繞過這兩個問題的方法,如下兩節所述。

區分開放和被過濾的 UDP 端口

案例中,除了三個 open|filtered 端口外,其他所有端口都是 closed。因此,掃描成功地將可能開放的端口縮小到少數幾個。情況并非總是如此。如下展示了針對192.168.1.223的 UDP 掃描。

?krad# nmap -sU -T4 192.168.1.223?Starting Nmap ( https://nmap.org )All 1000 scanned ports on 192.168.1.223 are open|filtered?Nmap done: 1 IP address (1 host up) scanned in 5.50 seconds

在這種情況下,掃描并未縮小開放端口的范圍。所有 1000 個端口都是 open|filtered。需要新的策略。

表 1.1,“Nmap 如何解釋 UDP 探測響應” 顯示 open|filtered 狀態發生在 Nmap 向特定端口發送 UDP 探測后未收到任何響應時。它還顯示,當 Nmap 收到 open|filtered 端口的響應時,狀態將更改為 open。原因這些服務很少響應是因為 Nmap 發送的空數據包被認為是無效的。不幸的是,UDP 服務通常定義自己的數據包結構,而不是遵循 Nmap 可以始終發送的某種通用格式。一個 SNMP 數據包與 SunRPC、DHCP 或 DNS 請求數據包完全不同。

為了向每個流行的 UDP 服務發送正確的數據包,Nmap 需要一個大型數據庫來定義探測格式。幸運的是,Nmap 有 nmap-service-probes,這是服務和版本檢測子系統的一部分,將在第 7 章,“服務和應用程序版本檢測” 中描述。

當通過 -sV(或 -A)啟用版本掃描時,它將向每個 open|filtered 端口(以及已知的 open 端口)發送 UDP 探測。如果任何探測從 open|filtered 端口收到響應,狀態將更改為 open。在 192.168.1.123掃描中添加 -sV 的結果如下所示。

?krad# nmap -sUV -F 192.168.1.123?Starting Nmap ( https://nmap.org )Nmap scan report for 192.168.1.123Not shown: 997 closed portsPORT ?  STATE ? ? ? ? SERVICE ?  VERSION53/udp  open ? ? ? ?  domain ? ? ISC BIND 9.2.167/udp  open|filtered dhcpserver111/udp open ? ? ? ?  rpcbind ?  2 (rpc #100000)MAC Address: 00:02:E3:14:11:02 (Lite-on Communications)?Nmap done: 1 IP address (1 host up) scanned in 1037.57 seconds

這個新的掃描顯示端口 111 和 53 肯定是開放的。系統并不完美——端口 67 仍然是 open|filtered

我們可以推測,端口是開放的,但 Nmap 沒有適用于 DHCP 的有效版本探測。

另一個棘手的服務是 SNMP,它通常只有在提供正確的Community(社區字符串)時才會響應。許多設備配置了社區字符串 public,但并非全部。雖然這些結果并不完美,但能夠確定兩個測試端口中的兩個的真實狀態仍然很有幫助。

而對于192.168.11.230,使用版本檢測改進 UDP 掃描結果:

?nmap -sUV -T4 192.168.11.230?Starting Nmap ( https://nmap.org )Nmap scan report for 192.168.11.230Not shown: 999 open|filtered portsPORT ? STATE SERVICE VERSION53/udp open  domain  ISC BIND 9.3.4?Nmap done: 1 IP address (1 host up) scanned in 3691.89 seconds

提示信息:

之前端口掃描192.168.11.230花費了5秒,使用版本檢測改進UDP掃描花費了1個小時。Nmap 版本 5.10BETA1 及更高版本有一個負載系統,如果選擇進行端口掃描或主機發現,它會向 30 多個知名的 UDP 端口發送正確的服務協議請求。雖然它不如版本檢測全面,但它會迅速識別192.168.11.230中的開放端口 53。

提高 UDP 掃描速度

UDP 掃描的另一個主要挑戰是提高其速度。開放和被過濾端口很少發送響應,導致 Nmap 超時并進行重傳,以確保數據包未丟失。關閉端口往往是一個更大的問題,它們通常會發送 ICMP 端口不可達錯誤。但與 TCP 中關閉端口對 SYN 或 connect 掃描發送 RST 數據包不同,許多主機默認對 ICMP 端口不可達消息進行速率限制。Linux 和 Solaris 在這方面尤為嚴格。例如,192.168.1.123上的 Linux 2.4.20 內核將目的地不可達消息限制為每秒一個(在 net/ipv4/icmp.c 中)。這解釋了為什么示例 5.4 中的掃描如此緩慢。

Nmap 檢測到速率限制并相應地降低速度,以避免發送網絡無法處理的無用數據包。然而,對于 Linux 風格的每秒一個數據包限制,掃描 65,536 個端口需要超過 18 小時。以下是一些提高 UDP 掃描性能的建議。此外,第 6 章“優化 Nmap 性能”中還提供了更詳細的討論和一般性建議

  • 增加主機并行性

如果 Nmap 從單個目標主機每秒僅收到一個端口不可達錯誤,它可以通過同時掃描多個主機(例如 100 個)來每秒接收 100 個響應。通過向 --min-hostgroup 傳遞大值(例如 100)來實現這一點。

  • 先掃描常見端口

非常少的 UDP 端口號被廣泛使用。使用 -F 選項掃描最常見的 100 個 UDP 端口將快速完成。你可以在后臺啟動對網絡的多天 65K 端口掃描,同時處理這些結果。

在版本檢測掃描中添加 --version-intensity 0

如前所述,版本檢測(-sV)通常需要區分開放和被過濾的 UDP 端口。版本檢測相對緩慢,因為它涉及向每個 openopen|filtered 端口發送大量特定于應用程序協議的探測。指定 --version-intensity 0 可以指示 Nmap 僅嘗試最有可能對特定端口號有效的探測。它通過使用 nmap-service-probes 文件中的數據來實現這一點。這種選項的性能影響是顯著的,如本節后面的示例所示。

  • 從防火墻內部掃描

與 TCP 一樣,包過濾器會顯著減慢掃描速度。許多現代防火墻使設置包速率限制變得容易。如果可以通過從防火墻內部而不是跨防火墻發起掃描來繞過此問題,請這樣做。

  • 使用 --host-timeout 跳過慢速主機

受到 ICMP 速率限制的主機可能比那些對每個探測都快速響應的主機需要多個數量級的時間來掃描。指定最大掃描時間(例如 15m 表示 15 分鐘)會導致 Nmap 在超出該時間后放棄掃描單個主機。這使你可以快速掃描所有響應迅速的主機。你可以在后臺處理這些慢速主機。

  • Use -v and chill out

啟用冗長輸出(-v)后,Nmap 會提供每個主機的預計掃描完成時間。無需密切監視它。去睡一覺,去你最喜歡的酒吧,看書,完成其他工作,或者以其他方式娛樂自己,同時讓 Nmap 不知疲倦地為你掃描。

一個完美的提高 UDP 掃描速度的例子是示例 如下,我們再次運行了該掃描。這次添加了 -F --version-intensity 0 選項,將一個小時的掃描時間縮短至 13 秒!然而,同樣的關鍵信息(53 端口上的 ISC Bind 守護進程)被檢測到。

?nmap -sUV -T4 -F --version-intensity 0 192.168.11.230?Starting Nmap ( https://nmap.org )Nmap scan report for 192.168.11.230Not shown: 99 open|filtered portsPORT ? STATE SERVICE VERSION53/udp open  domain  ISC BIND 9.3.4?Nmap done: 1 IP address (1 host up) scanned in 12.92 seconds

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/900327.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/900327.shtml
英文地址,請注明出處:http://en.pswp.cn/news/900327.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

美團滑塊 分析

聲明 本文章中所有內容僅供學習交流使用,不用于其他任何目的,抓包內容、敏感網址、數據接口等均已做脫敏處理,嚴禁用于商業用途和非法用途,否則由此產生的一切后果均與作者無關! 逆向過程 距離識別不準簡單學習一下&…

SpringBoot配置文件多環境開發

目錄 一、設置臨時屬性的幾種方法 1.啟動jar包時,設置臨時屬性 ?2.idea配置臨時屬性 3.啟動類中創建數組指定臨時屬性 二、多環境開發 1.包含模式 2.分組模式 三、配置文件的優先級 1.bootstrap 文件優先: 2.特定配置文件優先 3.文件夾位置優…

開發一個小程序需要多久時間?小程序軟件開發周期

開發一個小程序所需時間受多種因素影響,以下為你詳細列舉: 一、需求復雜度。若只是簡單展示類小程序,如企業宣傳、產品介紹,功能單一,大概 1 - 2 周可完成。若涉及復雜交互,像電商小程序,涵蓋商…

Linux 基礎入門指南:用戶管理、基本命令(一)

摘要:Xshell登錄、用戶管理、修改字體與配色方案。操作系統概要。Linux文件系統基礎。相關命令:pwd, ls, cd, mkdir, rmdir, rm,touch, nano, tree; adduser, passwd 目錄 一、系統登錄與用戶管理 1. 登錄方式 (1)命令行登錄 …

【python】:使用Qt Creator 管理python項目

一、引言(也許適合小眾的你) 如果你跟我一樣,有時候開發點小項目,既有Qt的需求,又有python項目需求,除了VS以外,Qt Creator同時滿足這兩種語言的項目開發需求和無縫項目切換,目前來看確實是比較…

【簡單數論】(模運算,快速冪,乘法逆元,同余,exgcd,gcd,歐拉函數,質數,歐拉篩,埃式篩,調和級數枚舉,約數,組合數)

數論 模運算 a m o d b a ? ? a / b ? b a\ mod \ b a - \lfloor a / b \rfloor \times b a mod ba??a/b?b n m o d p n \ mod\ p n mod p得到的結果的正負至于被除數 n n n有關 模運算的性質: ( a b ) m o d m ( ( a m o d m ) ( b m o d m ) ) m …

006貪心——算法備賽

跨步問題 跳躍游戲|| 問題描述 給定一個長度為 n 的 0 索引整數數組 nums。初始位置為 nums[0]。 每個元素 nums[i] 表示從索引 i 向后跳轉的最大長度。換句話說&#xff0c;如果你在 nums[i] 處&#xff0c;你可以跳轉到任意 nums[i j] 處: 0 < j < nums[i]i j &…

MySQL學習筆記(三)——圖形化界面工具DataGrip

目錄 1. 圖形化界面工具 2.下載 3. 安裝 3.1 安裝步驟 3.2 激活說明 4. 使用 4.1 漢化教程 4.2 使用 1. 圖形化界面工具 上述&#xff0c;我們已經講解了通過 DDL 語句&#xff0c;如何操作數據庫、操作表、操作表中的字段&#xff0c;而通過 DDL 語句執行在命令進行操…

編程題學習

acwing 826. 單鏈表 #include <iostream>using namespace std;const int N 100010;int idx, e[N], ne[N], head;void init() {head -1;idx 0; }void insert_head(int x) {e[idx] x;ne[idx] head;head idx ; }void delete_k_pos(int x, int k) {e[idx] x;ne[idx…

modelscope環境準備--裝conda、內網穿透、配置HuggingFace

1 準備anaconda #1、安裝包 wget https://repo.anaconda.com/archive/Anaconda3-2024.10-1-Linux-x86_64.sh#2、提高權限 chmod x Anaconda3-2024.10-1-Linux-x86_64.sh#3、執行安裝命令 ./Anaconda3-2024.10-1-Linux-x86_64.sh#4、一直按Enter健繼續 yes繼續 Enter#5、手動激…

算法題(117):字符串的展開

審題&#xff1a; 本題需要我們根據題目的要求將字符串進行擴展 思路&#xff1a; 方法一&#xff1a;模擬法 一般來說題目字數和要求很多的題就是模擬題&#xff0c;模擬題特別需要注意的就是細節&#xff0c;在編寫代碼之前一定要把細節想清楚&#xff0c;否則很容易出錯。 分…

15使用按鈕實現helloworld(2)

目錄 通過純代碼的方式實現的 按版 hello world 通過圖形化界面的方式&#xff0c;實現的 按鈕版 hello world 通過純代碼的方式實現的 按版 hello world 對于純代碼版本,按鈕對象是咱們自己 new 的 為了保證其他函數中能夠訪問到這個變量,就需要把按鈕對象 設定為 Widget 類…

Nacos 服務發現的核心模型有哪些?Service, Instance, Cluster 之間的關系是什么?

Nacos 服務發現的核心模型 Nacos 服務發現的核心數據模型主要圍繞以下幾個關鍵概念構建&#xff0c;它們共同構成了服務注冊與發現的基礎&#xff1a; Namespace (命名空間): 用途: 用于進行環境隔離。比如&#xff0c;你可以為開發環境 (dev)、測試環境 (test) 和生產環境 (p…

VMware 安裝 Ubuntu 全流程實戰指南:從零搭建到深度優化

在軟件開發、系統測試以及技術學習等諸多場景中&#xff0c;使用虛擬機安裝操作系統是一種靈活且高效的方式。Ubuntu 作為一款優秀的開源操作系統&#xff0c;在 VMware 虛擬機上的安裝與優化備受關注。接下來&#xff0c;將為大家帶來 VMware 安裝 Ubuntu 的全流程實戰指南&am…

探秘叁仟智盒設備:智慧城市的智能樞紐

在智慧城市建設的宏偉藍圖中&#xff0c;各類先進技術與設備層出不窮&#xff0c;叁仟智盒設備作為其中的關鍵一環&#xff0c;正悄然發揮著巨大作用&#xff0c;為城市的智能化轉型注入強大動力。 一、叁仟智盒設備概述 叁仟智盒設備是杭州叁仟智慧城市科技有限公司旗下的重…

晶晨S905L3S/S905L3SB_安卓9.0_10秒開機_通刷-線刷固件包

晶晨S905L3S&#xff0f;S905L3SB_安卓9.0_10秒開機_通刷-線刷固件包 線刷方法&#xff1a;&#xff08;新手參考借鑒一下&#xff09; 使用晶晨刷機工具USB_Burning_Tool進行刷機&#xff1b;請使用Amlogic USB Burning Tool v2.2.5或v2.2.7&#xff08;晶晨線刷燒錄工具v2.2…

VSCode中結合DeepSeek使用Cline插件的感受

前言 聽網上有傳言說AI智能插件Cline非常的好用&#xff0c;而且相對Cursor而言還是免費的&#xff0c;捆綁的大模型選擇也比較的廣泛。所以&#xff0c;特意安裝試用了一下。 我的采用IDE是VSCode&#xff0c;捆綁的大模型是最近比較火的DeepSeek。總體使用下來感覺非常的棒。…

藍橋云客--破譯密碼

5.破譯密碼【算法賽】 - 藍橋云課 問題描述 在近期舉辦的藍橋杯競賽中&#xff0c;誕生了一場激動人心的雙人破譯挑戰。比賽的主辦方準備了N塊神秘的密碼芯片&#xff0c;參賽隊伍需要在這場智力競賽中展示團隊合作的默契與效率。每個隊伍需選出一位破譯者與一位傳輸者&#…

中國移動啟動數字鄉村“五新升級”:年底前,行政村5G覆蓋達95%

大灣區經濟網品牌觀察報道&#xff0c;近日&#xff0c;在國家全面推進鄉村振興的戰略背景下&#xff0c;中國移動近日發布數字鄉村升級行動計劃&#xff0c;以“AI大模型數智化平臺”為核心引擎&#xff0c;圍繞“五新升級”構建“兩個新型”信息服務體系。 一、數字基建筑基&…

智慧節能雙突破 強力巨彩谷亞VK系列刷新LED屏使用體驗

當前全球節能減排趨勢明顯&#xff0c;LED節能屏作為顯示技術的佼佼者&#xff0c;正逐漸成為市場的新寵。強力巨彩谷亞萬境VK系列節能智慧屏憑借三重技術保障、四大智能設計以及大師臻彩畫質&#xff0c;在實現節能效果的同時&#xff0c;更在智慧顯示領域樹立新的標桿。   …