nmap
NMap,也就是Network?Mapper,是Linux下的網絡掃描和嗅探工?具包,其基本功能有三個,一是探測一組主機是否在線;其次是掃描主機端口,嗅探所提供的網絡服務;還可以推斷主機所用的操作系統?。Nmap可用于掃描僅有兩個節點的LAN,直至500個節點以上的網絡。Nmap?還允許用戶定制掃描技巧。通常,一個簡單的使用ICMP協議的ping操?作可以滿足一般需求;也可以深入探測UDP或者TCP端口,直至主機所使用的操作系統;還可以將所有探測結果記錄到各種格式的日志中,?供進一步分析操作。
??進行ping掃描,打印出對掃描做出響應的主機,不做進一步測試(如端口掃描或者操作系統探測):
nmap?-sP?192.168.1.0/24
僅列出指定網絡上的每臺主機,不發送任何報文到目標主機:
nmap?-sL?192.168.1.0/24
探測目標主機開放的端口,可以指定一個以逗號分隔的端口列表(如-PS22,23,25,80):
nmap?-PS?192.168.1.234
使用UDP?ping探測主機:
nmap?-PU?192.168.1.0/24
使用頻率最高的掃描選項:SYN掃描,又稱為半開放掃描,它不打開一個完全的TCP連接,執行得很快:
nmap?-sS?192.168.1.0/24
當SYN掃描不能用時,TCP?Connect()掃描就是默認的TCP掃描:
nmap?-sT?192.168.1.0/24
UDP掃描用-sU選項,UDP掃描發送空的(沒有數據)UDP報頭到每個目標端口:
nmap?-sU?192.168.1.0/24
確定目標機支持哪些IP協議?(TCP,ICMP,IGMP等):
nmap?-sO?192.168.1.19
探測目標主機的操作系統:
nmap?-O?192.168.1.19
nmap?-A?192.168.1.19
另外,nmap官方文檔中的例子:
nmap?-v?scanme.nmap.org
這個選項掃描主機scanme.nmap.org中?所有的保留TCP端口。選項-v啟用細節模式。
nmap?-sS?-O?scanme.nmap.org/24
進行秘密SYN掃描,對象為主機Saznme所在的“C類”網段?的255臺主機。同時嘗試確定每臺工作主機的操作系統類型。因為進行SYN掃描?和操作系統檢測,這個掃描需要有根權限。
nmap?-sV?-p?22,53,110,143,4564?198.116.0-255.1-127
進行主機列舉和TCP掃描,對象為B類188.116網段中255個8位子網。這?個測試用于確定系統是否運行了sshd、DNS、imapd或4564端口。如果這些端口?打開,將使用版本檢測來確定哪種應用在運行。
nmap?-v?-iR?100000?-P0?-p?80
隨機選擇100000臺主機掃描是否運行Web服務器(80端口)。由起始階段?發送探測報文來確定主機是否工作非常浪費時間,而且只需探測主機的一個端口,因?此使用-P0禁止對主機列表。
nmap?-P0?-p80?-oX?logs/pb-port80scan.xml?-oG?logs/pb-port80scan.gnmap?216.163.128.20/20
掃描4096個IP地址,查找Web服務器(不ping),將結果以Grep和XML格式保存。
host?-l?company.com?|?cut?-d?-f?4?|?nmap?-v?-iL?-
進行DNS區域傳輸,以發現company.com中的主機,然后將IP地址提供給?Nmap。上述命令用于GNU/Linux?--?其它系統進行區域傳輸時有不同的命令。
其他選項:
-p?<port?ranges>?(只掃描指定的端口)
單個端口和用連字符表示的端口范?圍(如?1-1023)都可以。當既掃描TCP端口又掃描UDP端口時,可以通過在端口號前加上T:?或者U:指定協議。?協議限定符一直有效直到指定另一個。?例如,參數?-p?U:53,111,137,T:21-25,80,139,8080?將掃描UDP?端口53,111,和137,同時掃描列出的TCP端口。
-F?(快速?(有限的端口)?掃描)
NMap,也就是Network?Mapper,是Linux下的網絡掃描和嗅探工?具包,其基本功能有三個,一是探測一組主機是否在線;其次是掃描主機端口,嗅探所提供的網絡服務;還可以推斷主機所用的操作系統?。Nmap可用于掃描僅有兩個節點的LAN,直至500個節點以上的網絡。Nmap?還允許用戶定制掃描技巧。通常,一個簡單的使用ICMP協議的ping操?作可以滿足一般需求;也可以深入探測UDP或者TCP端口,直至主機所使用的操作系統;還可以將所有探測結果記錄到各種格式的日志中,?供進一步分析操作。
??進行ping掃描,打印出對掃描做出響應的主機,不做進一步測試(如端口掃描或者操作系統探測):
nmap?-sP?192.168.1.0/24
僅列出指定網絡上的每臺主機,不發送任何報文到目標主機:
nmap?-sL?192.168.1.0/24
探測目標主機開放的端口,可以指定一個以逗號分隔的端口列表(如-PS22,23,25,80):
nmap?-PS?192.168.1.234
使用UDP?ping探測主機:
nmap?-PU?192.168.1.0/24
使用頻率最高的掃描選項:SYN掃描,又稱為半開放掃描,它不打開一個完全的TCP連接,執行得很快:
nmap?-sS?192.168.1.0/24
當SYN掃描不能用時,TCP?Connect()掃描就是默認的TCP掃描:
nmap?-sT?192.168.1.0/24
UDP掃描用-sU選項,UDP掃描發送空的(沒有數據)UDP報頭到每個目標端口:
nmap?-sU?192.168.1.0/24
確定目標機支持哪些IP協議?(TCP,ICMP,IGMP等):
nmap?-sO?192.168.1.19
探測目標主機的操作系統:
nmap?-O?192.168.1.19
nmap?-A?192.168.1.19
另外,nmap官方文檔中的例子:
nmap?-v?scanme.nmap.org
這個選項掃描主機scanme.nmap.org中?所有的保留TCP端口。選項-v啟用細節模式。
nmap?-sS?-O?scanme.nmap.org/24
進行秘密SYN掃描,對象為主機Saznme所在的“C類”網段?的255臺主機。同時嘗試確定每臺工作主機的操作系統類型。因為進行SYN掃描?和操作系統檢測,這個掃描需要有根權限。
nmap?-sV?-p?22,53,110,143,4564?198.116.0-255.1-127
進行主機列舉和TCP掃描,對象為B類188.116網段中255個8位子網。這?個測試用于確定系統是否運行了sshd、DNS、imapd或4564端口。如果這些端口?打開,將使用版本檢測來確定哪種應用在運行。
nmap?-v?-iR?100000?-P0?-p?80
隨機選擇100000臺主機掃描是否運行Web服務器(80端口)。由起始階段?發送探測報文來確定主機是否工作非常浪費時間,而且只需探測主機的一個端口,因?此使用-P0禁止對主機列表。
nmap?-P0?-p80?-oX?logs/pb-port80scan.xml?-oG?logs/pb-port80scan.gnmap?216.163.128.20/20
掃描4096個IP地址,查找Web服務器(不ping),將結果以Grep和XML格式保存。
host?-l?company.com?|?cut?-d?-f?4?|?nmap?-v?-iL?-
進行DNS區域傳輸,以發現company.com中的主機,然后將IP地址提供給?Nmap。上述命令用于GNU/Linux?--?其它系統進行區域傳輸時有不同的命令。
其他選項:
-p?<port?ranges>?(只掃描指定的端口)
單個端口和用連字符表示的端口范?圍(如?1-1023)都可以。當既掃描TCP端口又掃描UDP端口時,可以通過在端口號前加上T:?或者U:指定協議。?協議限定符一直有效直到指定另一個。?例如,參數?-p?U:53,111,137,T:21-25,80,139,8080?將掃描UDP?端口53,111,和137,同時掃描列出的TCP端口。
-F?(快速?(有限的端口)?掃描)