Nmap (“Network MApper(網絡映射器)”) 是一款免費開源多平臺的網絡探測和安全審核的工具。Nmap通過主動發送特定數據包在網絡中進行探測,并識別、分析返回的信息,用以確認網絡中目標主機的相關特征。比如網絡上有哪些主機,這些主機提供什么服務,運行什么操作系統等等。Nmap是網絡管理員常用的軟件之一,用以評估網絡系統安全,比如前文小編介紹了關閉主機一些高危端口可以有效地防御勒索病毒,那么我們就可以通過Nmap去掃描一下局域網查看主機這些端口的關閉情況,Nmap主要作用如下:
- 查看存活主機情況。
- 掃描目標主機開放端口。
- 鑒別安全過濾機制。
- 識別目標主機的操作系統。
- 查看目標主機服務的版本信息。
- 利用腳本掃描漏洞。
Nmap安裝
Nmap工具安裝也非常簡單,打開Nmap官網https://nmap.org,點擊“Download page”。
Nmap提供了多個平臺的最新軟件安裝包,比如windows平臺下載完最新的Nmap安裝包后,默認一路下一步安裝就可以了。
linux平臺可以通過官網提供的以下命令進行安裝:
rpm -vhU https://nmap.org/dist/nmap-7.91-1.x86_64.rpm
Nmap常用操作介紹
1. 掃描單一目標主機。
nmap 192.168.52.141
也可以使用主機名進行掃描。
nmap www.baidu.com
2. 掃描整個子網。
nmap 192.168.52.0/24
3. 掃描多個目標主機。
nmap 192.168.52.131 192.168.52.141 www.baidu.com
4. 掃描一個范圍內的目標主機。
nmap 192.168.52.100-200
5. 導入ip列表進行掃描。
nmap -iL ip.txt
6. 列舉目標地址,但不進行掃描。
nmap -sL 192.168.52.0/24
7. 排除某IP地址進行掃描。
nmap 192.168.52.0/24 -exclude 192.168.52.1
8. 掃描特定主機的特定端口。
nmap -p22,135,137-139,445,3389 192.168.52.141
9. 詳細輸出掃描結果。
nmap -vv 192.168.52.141
10.掃描并進行路由跟蹤。
nmap -traceroute www.baidu.com
11.ping掃描,只掃描主機是否存活。
nmap -sP 192.168.52.141
12. 探測目標主機操作系統類型。
nmap -O 192.168.52.141
13. 綜合掃描,包括端口掃描,操作系統掃描,腳本掃描,路由跟蹤,服務探測。
nmap -A 192.168.52.141
14.TCP SYN半開放掃描,只發送SYN,如果目標主機回復SYN,ACK。證明端口開放,不建立完整連接。
nmap -sS 192.168.52.141
15.使用FIN掃描,有的時候TCP SYN不是最佳的掃描方式,目標主機可能有IDS/IPS系統的存在,防火墻可能會阻斷掉SYN數據包,此時可通過發送設置了FIN標志的數據包,不需要完成TCP的握手,不會在目標主機產生日志。
nmap -sF 192.168.52.141
16.掃描TCP端口,nmap默認掃描方式。
nmap -sT 192.168.52.141
17.掃描UDP端口。
nmap -sT 192.168.52.141
Nmap腳本掃描
Nmap允許用戶自己編寫腳本進行自動化掃描操作,或者擴展Nmap現有的功能腳本,腳本默認放置目錄為: /usr/share/nmap/scripts,里面大概近600個不同分類不同功能的內置腳本。Nmap的腳本功能主要分為以下幾類:
- auth:負責處理鑒權證書(繞開鑒權)的腳本
- broadcast:在局域網內探查更多服務開啟狀況,如dhcp/DNS/sqlserver等服務
- brute:提供暴力**方式,針對常見的應用如http/snmp等
- default:使用-sC或- A選項攔描時候默認的腳本,提供基本腳本掃描能力
- discovery:對網絡進行更多的信息,如SMB枚舉、SNMP查詢等
- dos:用于進行拒絕服務攻擊
- exploit:利用已知的漏洞入侵系統
- external:利用第三方的數據庫或資源,例如進行whois解析
- fuzzer:模糊測試的腳本,發送異常的包到目標機,探測出潛在漏洞
- intrusive:入侵性的腳本,此類腳本可能弓|發對方的IDS/IPS的記錄或屏蔽
- malware:探測目標機是否感染了病毒、開啟了后門等信息
- safe:此類與intrusive相反,屬于安全性腳本
- version:負責增強服務與版本掃描( Version Detection )功能的腳本
- vuln:負責檢查目標機是否有常見的漏洞( Vulnerability ) , 如是否有MS08_ 067
例如:
1.默認腳本掃描,主要掃描各種應用服務的信息。
nmap --script=default 192.168.52.141
2.掃描是否存在常見漏洞.
nmap --script=vuln 192.168.52.141
Telnet密碼爆破
我們使用一個nmap腳本來爆破telnet密碼。
1.查看nmap關于telnet相關腳本,“telnet-brute.nse”就是telnet爆破的腳本。
ls /usr/share/nmap/scripts/ | grep telnet
2. 通過“--script-help”參數可以查看到關于該腳本的官方文檔信息。
3. 打開該網頁,使用的腳本的詳細命令如下,參數userdb是用戶名字典,passdb是密碼字典,timeout是每次連接之間的等待超時時間,target指的是我們的目標主機地址。
4.最后命令如下,設置好這些參數值,默認的用戶名和密碼字典放置在“/usr/share/nmap/nselib/data/”目錄下,這里使用了“--script-trace”開啟了數據的收發開關,等待一會,就可得到爆破結果,獲取到telnet用戶名和密碼。
nmap -p 23 --script=telnet-brute --script-args=userdb=/usr/share/nmap/nselib/data/admin.lst,passdb=/usr/share/nmap/nselib/data/passwords.lst,telnet-brute.timeout=3s --script-trace 192.168.52.100
以上就是網絡掃描神器Nmap的一個介紹了,如需獲取這款工具的朋友也可以加個關注私信回復關鍵字“nmap”就可以咯~