Nmap的介紹及用法

介紹:

Nmap使用原始IP數(shù)據(jù)包來確定網(wǎng)絡(luò)上可用的主機、主機提供的服務(wù)(應(yīng)用程序名稱和版本)、正在運行的操作系統(tǒng)(和OS版本)、包過濾器/防火墻的類型。它旨在快速掃描大型網(wǎng)絡(luò),但可以在單個主機上正常運行。Nmap可在所有主要的計算機操作系統(tǒng)上運行,并且官方二進制程序包可用于Linux,Windows和Mac OSX。

namp說白了就是掃描目標(biāo)主機的各種服務(wù)服務(wù),也可以掃描多個主機,而這些復(fù)雜的操作只需要一條命了就可以完成

基本用法,可以參見官網(wǎng)

Nmap 7.90SVN(https://nmap.org)
用法:nmap [掃描類型] [選項] {目標(biāo)規(guī)范}
目標(biāo)規(guī)格:
  可以傳遞主機名,IP地址,網(wǎng)絡(luò)等。
  例如:scanme.nmap.org,microsoft.com / 24、192.168.0.1;10.0.0-255.1-254
  -iL <inputfilename>:主機/網(wǎng)絡(luò)列表中的輸入
  -iR <num主機>:選擇隨機目標(biāo)
  --exclude <host1 [,host2] [,host3],...>:排除主機/網(wǎng)絡(luò)
  --excludefile <exclude_file>:從文件中排除列表
主機發(fā)現(xiàn):
  -sL:列出掃描-僅列出要掃描的目標(biāo)
  -sn:Ping掃描-禁用端口掃描
  -Pn:將所有主機視為聯(lián)機-跳過主機發(fā)現(xiàn)
  -PS / PA / PU / PY [端口列表]:對給定端口的TCP SYN / ACK,UDP或SCTP發(fā)現(xiàn)
  -PE / PP / PM:ICMP回顯,時間戳和網(wǎng)絡(luò)掩碼請求發(fā)現(xiàn)探針
  -PO [協(xié)議列表]:IP協(xié)議Ping
  -n / -R:從不進行DNS解析/始終解析[默認值:有時]
  --dns-servers <serv1 [,serv2],...>:指定自定義DNS服務(wù)器
  --system-dns:使用操作系統(tǒng)的DNS解析器
  --traceroute:跟蹤到每個主機的躍點路徑
掃描技術(shù):
  -sS / sT / sA / sW / sM:TCP SYN / Connect()/ ACK / Window / Maimon掃描
  -sU:UDP掃描
  -sN / sF / sX:TCP空,F(xiàn)IN和Xmas掃描
  --scanflags <標(biāo)志>:自定義TCP掃描標(biāo)志
  -sI <僵尸主機[:probeport]>:空閑掃描
  -sY / sZ:SCTP INIT / COOKIE-ECHO掃描
  -sO:IP協(xié)議掃描
  -b <FTP中繼主機>:FTP退回掃描
端口規(guī)格和掃描順序:
  -p <端口范圍>:僅掃描指定的端口
    例如:-p22; -p1-65535; -p U:53,111,137,T:21-25,80,139,8080,S:9
  --exclude-ports <端口范圍>:從掃描中排除指定的端口
  -F:快速模式-掃描的端口少于默認掃描的端口
  -r:連續(xù)掃描端口-不要隨機化
  --top-ports <編號>:掃描<編號>最常見的端口
  --port-ratio <比率>:掃描端口比<比率>更常見
服務(wù)/版本檢測:
  -sV:探測打開的端口以確定服務(wù)/版本信息
  --version-intensity <級別>:設(shè)置為0(淺)至9(嘗試所有探針)
  --version-light:限制為最可能的探測(強度2)
  --version-all:嘗試每個探針(強度9)
  --version-trace:顯示詳細的版本掃描活動(用于調(diào)試)
腳本掃描:
  -sC:相當(dāng)于--script = default
  --script = <Lua腳本>:<Lua腳本>是逗號分隔的列表
           目錄,腳本文件或腳本類別
  --script-args = <n1 = v1,[n2 = v2,...]>:提供腳本參數(shù)
  --script-args-file =文件名:在文件中提供NSE腳本args
  --script-trace:顯示所有發(fā)送和接收的數(shù)據(jù)
  --script-updatedb:更新腳本數(shù)據(jù)庫。
  --script-help = <Lua腳本>:顯示有關(guān)腳本的幫助。
           <Lua腳本>是逗號分隔的腳本文件列表,或者
           腳本類別。
操作系統(tǒng)檢測:
  -O:啟用操作系統(tǒng)檢測
  --osscan-limit:將操作系統(tǒng)檢測限制在有希望的目標(biāo)上
  --osscan-guess:更積極地猜測操作系統(tǒng)
時間和性能:
  花費<時間>的選項以秒為單位,或附加“ ms”(毫秒),
  值的“ s”(秒),“ m”(分鐘)或“ h”(小時)(例如30m)。
  -T <0-5>:設(shè)置時間模板(越高速度越快)
  --min-hostgroup / max-hostgroup <大小>:并行主機掃描組大小
  --min-parallelism / max-parallelism <numprobes>:探針并行化
  --min-rtt-timeout / max-rtt-timeout / initial-rtt-timeout <時間>:指定
      探測往返時間。
  --max-retries <tries>:限制端口掃描探針重新傳輸?shù)拇螖?shù)。
  --host-timeout <時間>:在很長一段時間后放棄目標(biāo)
  --scan-delay /-max-scan-delay <時間>:調(diào)整探頭之間的延遲
  --min-rate <number>:每秒發(fā)送數(shù)據(jù)包的速度不低于<number>
  --max-rate <number>:每秒發(fā)送數(shù)據(jù)包的速度不超過<number>
防火墻/標(biāo)識閃避和疏散:
  -F; --mtu <val>:分段數(shù)據(jù)包(可選,帶有給定的MTU)
  -D <decoy1,decoy2 [,ME],...>:用誘餌掩蓋掃描
  -S <IP地址>:欺騙源地址
  -e <iface>:使用指定的接口
  -g /-source-port <端口號>:使用給定的端口號
  --proxies <url1,[url2],...>:通過HTTP / SOCKS4代理中繼連接
  --data <十六進制字符串>:將自定義有效負載附加到發(fā)送的數(shù)據(jù)包
  --data-string <字符串>:將自定義ASCII字符串附加到發(fā)送的數(shù)據(jù)包
  --data-length <num>:將隨機數(shù)據(jù)追加到發(fā)送的數(shù)據(jù)包中
  --ip-options <選項>:發(fā)送具有指定ip選項的數(shù)據(jù)包
  --ttl <val>:設(shè)置IP生存時間字段
  --spoof-mac <mac地址/前綴/供應(yīng)商名稱>:欺騙您的MAC地址
  --badsum:使用偽造的TCP / UDP / SCTP校驗和發(fā)送數(shù)據(jù)包
輸出:
  -oN / -oX / -oS / -oG <文件>:以普通,XML,s | <rIpt kIddi3,
     和Grepable格式分別更改為給定的文件名。
  -oA <basename>:一次以三種主要格式輸出
  -v:提高詳細程度(使用-vv或更高以產(chǎn)生更大的效果)
  -d:提高調(diào)試級別(使用-dd或更多以獲得更大的效果)
  --reason:顯示端口處于特定狀態(tài)的原因
  --open:僅顯示打開(或可能打開)的端口
  --packet-trace:顯示所有發(fā)送和接收的數(shù)據(jù)包
  --iflist:打印主機接口和路由(用于調(diào)試)
  --append-output:追加而不是破壞指定的輸出文件
  --resume <文件名>:恢復(fù)中止的掃描
  --stylesheet <路徑/ URL>:XSL樣式表,可將XML輸出轉(zhuǎn)換為HTML
  --webxml:Nmap.Org的參考樣式表,用于更便攜式的XML
  --no-stylesheet:防止關(guān)聯(lián)帶有XML輸出的XSL樣式表
MISC:
  -6:啟用IPv6掃描
  -A:啟用操作系統(tǒng)檢測,版本檢測,腳本掃描和跟蹤路由
  --datadir <目錄名>:指定自定義Nmap數(shù)據(jù)文件位置
  --send-eth /-send-ip:使用原始以太網(wǎng)幀或IP數(shù)據(jù)包發(fā)送
  --privileged:假設(shè)用戶具有完全特權(quán)
  --unprivileged:假設(shè)用戶缺乏原始套接字特權(quán)
  -V:打印版本號
  -h:打印此幫助摘要頁面。

在繼續(xù)講之前,先介紹一下Nmap可以識別出的6種端口狀態(tài)

開放:工作于開放端口的服務(wù)器端的應(yīng)用程序可以受理TCP連接、接收UDP數(shù)據(jù)包或者響應(yīng)SCTP(流控制傳輸協(xié)議)請求。

關(guān)閉:雖然我們確實可以訪問有關(guān)的端口,但是沒有應(yīng)用程序工作于該端口上。

過濾:Nmap不能確定該端口是否開放。包過濾設(shè)備屏蔽了我們向目標(biāo)發(fā)送的探測包。

未過濾:雖然可以訪問到指定端口,但Nmap不能確定該端口是否處于開放狀態(tài)。 

打開|過濾:Nmap認為指定端口處于開放狀態(tài)或過濾狀態(tài),但是不能確定處于兩者之中的 哪種狀態(tài)。在遇到?jīng)]有響應(yīng)的開放端口時,Nmap會作出這種判斷。這可以是由于防火墻丟 棄數(shù)據(jù)包造成的。

關(guān)閉|過濾:Nmap認為指定端口處于關(guān)閉狀態(tài)或過濾狀態(tài),但是不能確定處于兩者之中的 哪種狀態(tài)。

操作系統(tǒng)探測

  • 可以使用-o(開啟系統(tǒng)檢測)或者-A(同時開啟操作系統(tǒng)檢測和版本檢測)

    • --osscan-limit(針對制定目標(biāo)進行操作系統(tǒng)檢測)如果發(fā)現(xiàn)一個打開和關(guān)閉的TCP端口時,操作系統(tǒng)檢測會更有效。 采用這個選項,Nmap只對滿足這個條件的主機進行操作系統(tǒng)檢測,這樣可以節(jié)約時間。

      這里的操作系統(tǒng)掃描需要root權(quán)限

nmap-1.png

圖片內(nèi)代碼復(fù)制鏈接

輸出

  • -oN [filename] 標(biāo)準輸出,輸出到指定的文件
  • -oX [filename]XML輸出,輸出為XML格式,這個比較常用,后期可以結(jié)合暴力工具進行輸入
nmap-2.png

圖片內(nèi)代碼復(fù)制鏈接

實例

nmap -sV -p 22,53,110,143,4564 198.116.0-255.1-127

掃描 192.116.0.1----192.116.255.127內(nèi)的22、53、110、143、4564端口

這 個測試用于確定系統(tǒng)是否運行了sshd、DNS、imapd或4564端口。如果這些端口 打開,將使用版本檢測來確定哪種應(yīng)用在運行。

nmap -v -A 172.16.52.128

掃描172.16.52.128里面的各個服務(wù)的版本和操作系統(tǒng)

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容