Nmap使用
Nmap是主機掃描工具,他的圖形化界面是Zenmap,分佈式框架爲Dnamp。數據庫
Nmap能夠完成如下任務:安全
- 主機探測
- 端口掃描
- 版本檢測
- 系統檢測
- 支持探測腳本的編寫
- Nmap在實際中應用場合以下:
- 經過對設備或者防火牆的探測來審計它的安全性
- 探測目標主機所開放的端口
- 經過識別新的服務器審計網絡的安全性
- 探測網絡上的主機
端口掃描工具,即藉助工具,試圖瞭解所掃描IP提供的計算機網絡服務類型(網絡服務均與端口號相關),從而發現攻擊弱點,常見服務對應端口號:服務器
服務 |
端口號 |
HTTP |
80 |
HTTPS |
443 |
Telnet |
23 |
FTP |
21 |
SSH(安全登陸)、SCP(文件傳輸)、端口重定向 |
22 |
SMTP |
25 |
POP3 |
110 |
WebLogic |
7001 |
TOMCAT |
8080 |
WIN2003遠程登陸 |
3389 |
Oracle數據庫 |
1521 |
MS SQL* SEVER數據庫sever |
1433 |
MySQL 數據庫sever |
3306 |
Nmap進行完整全面的掃描
nmap –T4 –A –v網絡
其中-A選項用於使用進攻性(Aggressive)方式掃描;-T4指定掃描過程使用的時序(Timing),總有6個級別(0-5),級別越高,掃描速度越快,但也容易被防火牆或IDS檢測並屏蔽掉,在網絡通信情況良好的狀況推薦使用T4;-v表示顯示冗餘(verbosity)信息,在掃描過程當中顯示掃描的細節,從而讓用戶瞭解當前的掃描狀態。框架
Nmap用於主機發現的一些用法
-
-
sL: List Scan 列表掃描,僅將指定的目標的IP列舉出來,不進行主機發現。
-
-
-
sn: Ping Scan 只進行主機發現,不進行端口掃描。
-
-
-
Pn: 將全部指定的主機視做開啓的,跳過主機發現的過程。
-
-
-PS
/PA/PU/PY[portlist]: 使用TCPSYN/ACK或SCTP INIT/ECHO方式進行發現。
-
-
-PE
/PP/PM: 使用ICMP echo, timestamp, and netmask 請求包發現主機。-PO[protocollist]: 使用IP協議包探測對方主機是否開啓。
-
-
-n/-
R: -n表示不進行DNS解析;-R表示老是進行DNS解析。
-
-
--dns-servers <serv1[,serv2],...>: 指定DNS服務器。
-
-
--system-
dns: 指定使用系統的DNS服務器
-
-
-
Nmap用於端口掃描的一些用法
一、掃描方式選項分佈式
-
-sS
/sT/sA/sW/sM:指定使用 TCP SYN/Connect()/ACK/Window/Maimon scans的方式來對目標主機進行掃描。
-
-
-
sU: 指定使用UDP掃描方式肯定目標主機的UDP端口情況。
-
-
-sN
/sF/sX: 指定使用TCP Null, FIN, and Xmas scans祕密掃描方式來協助探測對方的TCP端口狀態。
-
-
--scanflags <flags>: 定製TCP包的flags。
-
-
-sI <zombiehost[:probeport]>: 指定使用idle scan方式來掃描目標主機(前提須要找到合適的zombie host)
-
-
-sY
/sZ: 使用SCTP INIT/COOKIE-ECHO來掃描SCTP協議端口的開放的狀況。
-
-
-
sO: 使用IP protocol 掃描肯定目標機支持的協議類型。
-
-
-b <FTP relay host>: 使用FTP bounce scan掃描方式
-
二、 端口參數與掃描順序工具
-
-
-p <port ranges>: 掃描指定的端口
-
-
實例: -p22; -p1
-65535; -p U:53,111,137,T:21-25,80,139,8080,S:9(其中T表明TCP協議、U表明UDP協議、S表明SCTP協議)
-
-
-
F: Fast mode – 快速模式,僅掃描TOP 100的端口
-
-
-
r: 不進行端口隨機打亂的操做(如無該參數,nmap會將要掃描的端口以隨機順序方式掃描,以讓nmap的掃描不易被對方防火牆檢測到)。
-
-
--top-ports <number>:掃描開放機率最高的number個端口(nmap的做者曾經作過大規模地互聯網掃描,以此統計出網絡上各類端口可能開放的機率。以此排列出最有可能開放端口的列表,具體能夠參見文件:nmap-services。默認狀況下,nmap會掃描最有可能的
1000個TCP端口)
-
-
--port-ratio <ratio>: 掃描指定頻率以上的端口。與上述--top-ports相似,這裏以機率做爲參數,讓機率大於--port-ratio的端口才被掃描。顯然參數必須在在
0到1之間,具體範圍機率狀況能夠查看nmap-services文件。
三、 版本偵測的用法測試
-
-
-
-
-
--version-intensity <level>: 指定版本偵測強度(0-9),默認爲7。數值越高,探測出的服務越準確,可是運行時間會比較長。
-
-
--version-light: 指定使用輕量偵測方式 (intensity 2)
-
-
--version-all: 嘗試使用全部的probes進行偵測 (intensity 9)
-
-
--version-trace: 顯示出詳細的版本偵測過程信息。
具體操做演示以下
一、用Nmap掃描特定IP地址
spa
二、用-vv
對結果進行詳細輸出
操作系統
三、自行設置端口範圍進行掃描
![](http://static.javashuo.com/static/loading.gif)
四、指定端口號進行掃描
![](http://static.javashuo.com/static/loading.gif)
五、對目標進行Ping掃描
格式:namp -sP <target ip>
![](http://static.javashuo.com/static/loading.gif)
六、路由跟蹤
nmap -traceroute <target ip>
![](http://static.javashuo.com/static/loading.gif)
七、掃描一個段的主機在線情況
nmap -sP <network address > </CIDR>
![](http://static.javashuo.com/static/loading.gif)
八、操做系統探測
nmap -O <target ip>
![](http://static.javashuo.com/static/loading.gif)
九、萬能開關掃描
nmap -A <target ip>
![](http://static.javashuo.com/static/loading.gif)
十、其餘掃描方式
SYN掃描:利用基本的SYN掃描方式測試其端口開放狀態
namp -sS -T4 <target ip>
FIN掃描:利用FIN掃描方式探測防火牆狀態。FIN掃描方式用於識別端口是否關閉,收到RST回覆說明該端口關閉,不然說明是open或filtered狀態
namp -sF -T4 <target ip>
ACK掃描:利用ACK掃描判斷端口是否被過濾。針對ACK探測包,爲被過濾的端口(不管打開或關閉)會回覆RST包
namp -sA -T4 <target ip>
掃描前不進行Ping掃描測試
nmap -Pn <target ip>
若是有一個ip地址列表,將這個保存爲一個txt文件,和nmap在贊成目錄下,掃描這個txt的全部主機,命令爲
nmap -iL target.txt
版本檢測掃描
nmap -sV <target ip>
![](http://static.javashuo.com/static/loading.gif)
Nmap的幫助文檔
![](http://static.javashuo.com/static/loading.gif)
![](http://static.javashuo.com/static/loading.gif)
參考資料