nmap在信息收集中起着很大的作用,今天我來總結一些nmap常用的一些命令
常用探測主機存活方式
1.-sP:進行ping掃描
打印出對ping掃描做出響應的主機,不做進一步測試(如端口掃描或者操作系統探測)
下面去掃描192.168.43.0/24這個網段的的主機
nmap -sP 192.168.43.0/24
2.-sn:ping探測掃描主機,若對方丟包,依然可以檢測
Ping Scan - disable port scan #ping探測掃描主機, 不進行端口掃描 (測試過對方主機把icmp包都丟棄掉,依然能檢測到對方開機狀態)
nmap -sn 192.168.43.0/24
3.-sA:發送tcp的ack包進行探測,可以探測主機是否存活
nmap -sA 192.168.43.0/24
端口掃描的高級用法
1.-sS:半開放掃描(非3次握手的tcp掃描)
使用頻率最高的掃描選項:SYN掃描,又稱為半開放掃描,它不打開一個完全的TCP連接,執行得很快,效率高
(一個完整的tcp連接需要3次握手,而-sS選項不需要3次握手)
Tcp SYN Scan (sS) 它被稱為半開放掃描
優點:Nmap發送SYN包到遠程主機,但是它不會產生任何會話,目標主機幾乎不會把連接記入系統日志。(防止對方判斷為掃描攻擊),掃描速度快,效率高,在工作中使用頻率最高
缺點:它需要root/administrator權限執行
nmap -sS -p- 192.168.43.131
ps:-p-是對全端口進行掃描
2.sT:3次握手方式tcp掃描
Tcp connect() scan (sT)和上面的Tcp SYN 對應,TCP connect()掃描就是默認的掃描模式.
不同於Tcp SYN掃描,Tcp connect()掃描需要完成三次握手,並且要求調用系統的connect().
優點:你勿需root權限。普通用戶也可以使用。
缺點:這種掃描很容易被檢測到,在目標主機的日志中會記錄大批的連接請求以及錯誤信息,由於它要完成3次握手,效率低,速度慢,建議使用-sS
nmap -sT 192.168.43.131
它等同於nmap 192.168.43.131
3.sU:udp端口掃描
Udp scan(sU) 顧名思義,這種掃描技術用來尋找目標主機打開的UDP端口.它不需要發送任何的SYN包,因為這種技術是針對UDP端口的。UDP掃描發送UDP數據包到目標主機,並等待響應,
如果返回ICMP不可達的錯誤消息,說明端口是關閉的,如果得到正確的適當的回應,說明端口是開放的.udp端口掃描速度比較慢
nmap -sU 192.168.43.131
4.sF:也是tcp掃描的一種,發送一個FIN標志的數據包
FIN scan(sF)
有時候TcpSYN掃描不是最佳的掃描模式,因為有防火牆的存在.目標主機有時候可能有IDS和IPS系統的存在,防火牆會阻止掉SYN數據包。發送一個設置了FIN標志的數據包並不需要完成TCP的握手.
和sS掃描效果差不多,比sT速度快
nmap -sF 192.168.43.131
5.sV:版本檢測
版本檢測是用來掃描目標主機和端口上運行的軟件的版本,如下掃描,多出了ssh的版本信息
nmap -sV 192.168.43.131
nmap其他用法
1.-S:可以偽裝源地址進行掃描,這樣好處在於不會被對方發現自己的真實IP
如果你使用-S偽裝自己源地址進行掃描的話,你必須另外使用-e 指定網卡和-Pn參數才能偽裝
把自己源地址偽裝成10.0.1.167掃描A機器
nmap -e eth0 192.168.43.131 -S 192.168.43.221 -Pn
nmap常用參數
常用的參數(具體細節可以在上圖進行對照):
- -sS 半開掃描(TCP SYN掃描),執行速度快,不容易被注意到,可以避免被記入目標系統的日志,需要root權限。它常常被稱為半開放掃描, 因為它不打開一個完全的TCP連接。它發送一個SYN報文, 就像您真的要打開一個連接,然后等待響應。
- -sT 當SYN掃描不能用時,TCP Connect()掃描就是默認的TCP掃描。會在⽬標主機的⽇志中記錄⼤批連接請求和錯誤信息,但是由於是tcp connect()掃描,容易被記錄。當SYN掃描可用時,它通常是更好的選擇
- -sP ping掃描,Nmap在掃描端⼜時,默認都會使⽤ping掃描,只有主機存活,Nmap才會繼續掃描。
- -sU UDP掃描,但UDP掃描是不可靠的,速度也比較慢
- -sA 這種掃描與目前為止討論的其它掃描的不同之處在於 它不能確定open(開放的)或者 open|filtered(開放或者過濾的))端口。 它用於發現防火牆規則,確定它們是有狀態的還是無狀態的,哪些端口是被過濾的。
- -sV 探測端⼜服務版本
- -Pn 掃描之前不需要⽤ping命令,有些防⽕牆禁⽌ping命令。可以使⽤此選項進⾏掃描
- -v 顯⽰掃描過程,推薦使⽤
- -p 指定端⼜,如“1-65535、1433、135、22、80”等
- -O 啟⽤遠程操作系統檢測,存在誤報
- -O --osscan-limit 針對指定的目標進行操作系統檢測
- -O --osscan-guess 當Nmap無法確定所檢測的操作系統時,會盡可能地提供最相近的匹配,Nmap默認 進行這種匹配
- -A 全⾯系統檢測、啟⽤腳本檢測、掃描等
- -oN/-oX/-oG 將報告寫⼊⽂件,分別是正常、XML、grepable 三種格式
- -iL 讀取主機列表,例如,-iL “C:\ip.txt”
參考:https://www.cnblogs.com/nmap/p/6232969.html
https://blog.csdn.net/zz_Caleb/article/details/95335060