NMap,也就是Network Mapper,用來掃描網(wǎng)絡(luò)上計(jì)算機(jī)開放的網(wǎng)絡(luò)連接端口。網(wǎng)絡(luò)管理員用該軟件評(píng)估網(wǎng)絡(luò)系統(tǒng)的安全,也可來探測(cè)工作環(huán)境中未經(jīng)批準(zhǔn)使用的服務(wù)器。但是黑客可以用來搜集目標(biāo)電腦的網(wǎng)絡(luò)設(shè)定從而計(jì)劃攻擊
掃描原理
- 全連接掃描(TCP Connect掃描),通過調(diào)用socket函數(shù)connect()連接到目標(biāo)計(jì)算機(jī)上,完成一次完整的三次握手過程。如果端口處于偵聽狀態(tài),那么connect()就能成功返回。否則,這個(gè)端口不可用,即沒有提供服務(wù)。優(yōu)點(diǎn)是穩(wěn)定可靠,不需要特殊的權(quán)限。缺點(diǎn)是掃描方式不隱蔽,服務(wù)器日志會(huì)記錄下大量密集的連接和錯(cuò)誤記錄,并容易被防火墻發(fā)現(xiàn)和屏蔽
- 半連接掃描(TCP SYN 掃描),掃描器向目標(biāo)主機(jī)端口發(fā)送SYN包。如果應(yīng)答是RST包,那么說明端口是關(guān)閉的;如果應(yīng)答中包含SYN和ACK包,說明目標(biāo)端口處于監(jiān)聽狀態(tài),再傳送一個(gè)RST包給目標(biāo)機(jī)從而停止建立連接。由于在SYN掃描時(shí),全連接尚未建立,所以這種技術(shù)通常被稱為半連接掃描。優(yōu)點(diǎn)是隱蔽性較全連接掃描好,一般系統(tǒng)對(duì)這種半掃描很少記錄。缺點(diǎn)是通常構(gòu)造SYN數(shù)據(jù)包需要超級(jí)用戶或授權(quán)用戶訪問專門的系統(tǒng)調(diào)用
-
隱蔽掃描技術(shù)
隱蔽掃描時(shí)指在網(wǎng)絡(luò)端口掃描過程中隱蔽自身的技術(shù)。具體來講就是能夠不被目標(biāo)系統(tǒng)的日志機(jī)制,掃描監(jiān)測(cè)系統(tǒng)和入侵檢測(cè)系統(tǒng)捕獲,繞過防火墻而偵測(cè)到目標(biāo)主機(jī)運(yùn)行服務(wù)的掃描技術(shù)。NMap下的相關(guān)掃描有TCP FIN掃描,TCP NULL掃描和TCP Xmax掃描
Xmax掃描打開FIN,URG,PUSH標(biāo)記
NULL掃描關(guān)閉所有標(biāo)記
這些組合的目的是為了通過對(duì)FIN標(biāo)記數(shù)據(jù)包的過濾。當(dāng)一個(gè)這種數(shù)據(jù)包到達(dá)一個(gè)關(guān)閉的端口,數(shù)據(jù)包會(huì)被丟掉,并返回一個(gè)RST數(shù)據(jù)包。否則若是打開的端口,數(shù)據(jù)包只是簡(jiǎn)單的丟掉(不返回RST)。優(yōu)點(diǎn)是隱蔽性好,缺點(diǎn)是通常適用Unix主機(jī),不適用Windows
NMap相關(guān)命令的簡(jiǎn)單介紹
| 掃描單機(jī)端口 | nmap 192.168.1.12 | j變化情況 | k變化情況 |
|---|---|---|---|
| 掃描IP段端口 | nmap 192.168.1.12-200 | 3 | 6 |
| 掃描指定端口 | nmap -p 21,80,3389 192.168.1.12 | 2 | 5 |
| 掃描端口段 | nmap -p 1-65535 192.168.1.12 | 2 | 4 |
| 半開連接掃描 | nmap -sS 192.168.1.12 | 2 | 3 |
| 全連接掃描 | nmap -sT 192.168.1.12 | 1 | 2 |
| 顯示banner信息 | nmap -sV 192.168.1.12 | 1 | 1 |
| TCP FIN 掃描Unix系統(tǒng) | nmap -sF 192.168.1.12 | 0 | 1 |
| TCP NULL 掃描Unix系統(tǒng) | nmap -sN 192.168.1.12 | -1 | 0 |
| TCP Xmax 掃描Unix系統(tǒng) | nmap -sX 192.168.1.12 | -1 | 0 |