在命令視窗下輸入命令等待,可以用回車來檢視進度
nmap進行探測之前要把域名通過dns伺服器解析為ip地址,我們也可以使用指定的dns伺服器進行解析。
nmap --dns-servers 主機地址 需要掃描的目標地址
對於已經知道主機存活或者防火牆開啟,可以使用-Pn引數來停止探測之前的icmp的請求。已達到觸不到防火牆安全機制
nmap -Pn www.baidu.com
nmap列舉遠端機器開放埠
對於預設埠範圍,並不能滿足日常工作需要。可以使用-p m-n 來指定探測埠範圍為m到n之間的所有埠可以在具體某個範圍用
埠狀態
open、close不解釋了,主要是filtered是過濾狀態
nmap掃描技術檢視
nmap -h檢視幫助資訊
主要幫助裡的SCAN TECHNIQUES
服務指紋
為了確保有一個成功的滲透測試或網路裝置監控,需要我們知道目標系統中服務資訊指紋。服務指紋資訊包含服務埠、服務名和版本等。
通過分析目標往nmap傳送的資料包中的某些協議標記、選項和資料,我們可以推斷這些資料包的作業系統。
nmap通過向目標主機傳送多個udp和tcp資料包並分析響應來進行系統指紋工作。
nmap識別服務指紋
nmap -sV IP地址來自目標機器的服務資訊
就用虛擬機器的kali吧。。。。當實驗吧。。
真的很慢。。。
通過掃描知道我用的是vmware,竟然還有個漏洞埠,445可以通過埠溢位進行攻擊
nmap侵略性探測
nmap -A -v -T4 IP地址
-A表示使用侵略的方式,嗯。。可以理解為英文單詞attack其中包括操做系統識別,埠服務、指紋識別等
-v表示持續輸出返回的解析的詳略程度。
-T4是加速(數字範圍是1到5)
可以掃到目標機器的開機時間,MAC地址,系統版本等。。。
nmap -sC -sV -O(是o不是0) IP地址
sC參數列示使用nmap指令碼進行探測,sV表示探測目標機器上的服務資訊,O表示探測目標機器的作業系統
主機發現
區域網有許多裝置,如何獲取開機狀態
1.ping
2.使用工具批量探測
明白CIDR含義:
無類別域間路由,(class inter-domain routing)可以快速地表示一個網路
舉例:
172.16.1.1/24 表示172.16.1.1到172.16.1.255之間的所有ip地址
nmap主機發現
nmap -sP CIDR
對該網路的所有主機進行ping掃描,以探測主機存活性。掃描中用了tcp syn掃描、icmp echo request 來探測主機存活。
也可以使用
nmap -sn CIDR
對該網路中的所有主機進行ping掃描,以探測主機的存活性。
nmap主機發現輸出結果
nmap -sn CIDR -oX 檔名.xml
對該網路中的所有主機進行ping掃描,以探測主機的存活性。同時結果以檔名.xml輸出,以便後記使用
ps:注意路徑
埠探測技巧
nmap -p80 目標
把網站解析成IP地址,厲害。我們也可以看到狀態是開放的
多個埠以逗號隔開
範圍埠
nmap -p1-100 目標地址
所有埠
nmap -p- 目標地址
指定協議探測埠
nmap -p T:埠,U:埠 目標地址
通過協議名來掃描埠
nmap -p 協議名字 目標地址
這個牛逼
通過名稱範圍掃描
nmap -p s* 目標地址
這裡的s*值得是所有以s開頭的協議
掃描百度會有許多過濾
掃描註冊在nmap中的埠
nmap -p [1-65535] 目標地址
NSE介紹
nse就是nmap script engine )nmap指令碼引擎,內建很多可以用來掃描的、針對特定任務的指令碼。通過nse可以不斷地擴充nmap的掃描策略,加強nmap的功能
nse使用
使用nmap探測web服務的title資訊。
nmap --script http-title 目標主機
nmap --script http-headers 目標主機
可以獲得目標的使用版本資訊等
nse分類使用
對於目標使用多個分類指令碼進行探測,可以更快的找到目標資訊和弱點
nmap -sV --script vuln 目標
不展示。。
使用下面的命令可以發現版本資訊分類進行探測
nmap -sV --script="version,discovery" 目標
使用nmap可以進行篩選掃描檢測
nmap -sV --script="not exploit" 目標
還有更詳細的。。
要使用http*的指令碼,除了http-brute和http-slowers
nmap -sV --script "(http*) and not (http-slowlors and http-brute)" 目標
nse除錯功能的使用
使用nmap中的exploit,但是在與此同時開啟除錯模式。
nmap -sV --script ecploit -d 3 --script-trace 目標
-d(debug範圍0到9)
--script-trace可以隨時看到掃描過程
nse引數的使用
使用nmap的http-title指令碼,並且指定使用對應的user-agent
nmap -sV --script http-title --script-args http.useragent="mozilla 999" 目標
此程式碼使用可以突破某些網站的限制裝置登陸
nse更新
nmap --script-updatedb
nse指令碼分類
在nmap的script的目錄下。
或者官網https://nmap.org/nsedoc/
有具體解釋和內容,不過得翻牆,我進不去。。
nmap指定特定網路卡進行探測
使用場景
這種功能需要網路卡支援混雜模式,或者當計算機上有兩張卡,並且兩張卡對應不同的網路
指定網路卡進行探測
nmap -e 網路卡資訊 CIDR
切換使用特定網路卡進行探測的引數 -e
kali中操作
ndiff
對之前的資料引數進行二次比較,減少了人工的比較,節省大量時間
上我們最愛的百度翻譯
用法:ndiff[option]FILE1 FILE2
比較兩個Nmap XML檔案並顯示它們的差異列表。
不同之處包括主機狀態更改、埠狀態更改和
服務和作業系統檢測。
-h、 --幫助顯示此幫助
-v、 --verbose還顯示未更改的主機和埠。
--文字格式的文字顯示輸出(預設)
--xml格式的xml顯示輸出
指定檔案輸出加侵略性檢視
nmap -A -v -T4 目標地址 -oX 檔案輸出名.xml
然後對kali輸入命令
service apache2 start
來開啟阿帕奇服務
nmap上面的命令
然後用工具nidff
ndiff 檔案 檔案
首行加+表示第二個比較的檔案的不同
-表示第一個檔案的不同
之前開啟服務,apache,所以會有不同。
視覺化nmap的使用
使用zenmap
在配置中設定指令碼,從而在視覺化程式中快速指定配置進行掃描
也可以使用自帶策略
ping scan來驗證主機的存活性
等等等
window下網路卡
通過命令ipconfig /all 與nmap irlist比較知道是哪些網路卡名稱從而進行探測。
不指定網路卡,直接探測也可以,首先依次嘗試這些網路卡傳送資料包,如果連通,才會繼續探測,否則就換下一個網路卡。直到網路卡都被嘗試後,才算結束。