1. 程式人生 > >【工具學習】Nmap

【工具學習】Nmap

Nmap使用說明

語法:
nmap [掃描型別] [選項] [目標規範]

目標規範

可以傳遞主機名、IP地址、域名等。可以指定單個IP或IP段 eg:192.168.1.0/24、192.168.1.1,2,3-15

  • -iL :從檔案中匯入掃描目標,eg:nmap ip.txt
  • -iR :隨機選擇目標,引數指定Nmap要生成的IP數量,eg:nmap -iR 5
  • –exclude :排除指定引數值的主機,以逗號分隔目標列表
  • –excludefile :從檔案中排除主機

主機發現

  • -sL:列表探測-只列出要掃描的目標
  • -sN:無埠探測-發現主機存活後禁止埠掃描
  • -Pn:禁ping探測-跳過主機發現
  • -PS:TCP SYN Ping探測-向目標傳送建立連線請求,如果埠關閉則返回RST,如果埠開啟,則響應SYN/ACK資料包。該掃描將完成三次握手建立完整連線,類似Telnet請求。
  • -PA:TCP ACK Ping探測-和SYN掃描型別,差別在於設定TCP ACK標誌而不是SYN標誌,故為半開連線。可利用此掃描繞過防火牆。
  • -PU:UDP Ping探測
  • -PY:SCTP INIT Ping探測-傳送最小INIT塊的SCTP資料包。
  • -PE;-PP;-PM:ICMP Ping探測
  • -P0:IP協議Ping探測
  • -PR:ARP Ping探測
  • -n / -R:不進行DNS解析/始終解析DNS
  • –dns-server :指定自定義DNS伺服器
  • –system-dns:使用系統DNS解析器
  • –traceroute:跟蹤路由跳轉路徑

埠掃描技術

埠狀態:open(開啟)、closed(關閉)、filtered(過濾:有防火牆)、unfiltered(未經過濾:可以訪問埠但無法判斷是否開啟)、open/filtered(開放|過濾:無法判斷埠是開啟還是已過濾)、closed|filtered(關閉|過濾:無法判斷埠是關閉還是已過濾)

  • -sS:TCP SYN掃描(半開掃描)-nmap預設掃描項,不建立完整連線
  • -sT:TCP連線掃描-完整連線掃描,和telent埠類似
  • -sU:UDP掃描
  • -sY:SCTP INIT掃描-SCTP是TCP和UDP相對較新的替代方案,結合了TCP和UDP大多數特性,是TCP SYN掃描的SCTP等效物。
  • -sN;-sF;-sX:空掃描、FIN掃描、Xmas掃描
  • -sA:TCP ACK掃描
  • -sW:TCP視窗掃描
  • -sM:TCP Maimom掃描
  • -sO:IP協議掃描-探測目標支援哪些IP協議

埠設定及掃描順序

預設情況下,nmap會掃描每個協議的最常見的1000個埠

  • -p :指定掃描的埠範圍
  • –exclude-ports :從掃描中排除指定的埠
  • -F:快速模式-掃描比預設掃描更少的埠,減少到100個埠
  • -r:連續掃描埠-不要隨機化

服務版本檢測

  • -sV:版本探測-探測開放埠的版本資訊
  • –version-intensity :設定版本掃描強度,範圍為0-9,數字越大,正確性越高,但時間更長,預設為7。
  • –version-trace:跟蹤版本掃描活動-會列印掃描版本的大量除錯資訊

作業系統檢測

  • -O:啟用OS檢測

指令碼引擎NSE

  • -sC:使用預設指令碼執行指令碼掃描-相當於--script=default
  • –script=:以逗號分隔的列表目錄、指令碼
  • –script-args = <n1 = v1,[n2 = v2,…]>:為指令碼提供引數
  • –script-args-file = filename:在檔案中提供NSE指令碼args
  • –script-trace:顯示傳送和接受的所有資料
  • –script-updatedb:更新指令碼資料庫
  • –script-help=:顯示有關指令碼的幫助

時間和效能

  • -T <0-5>:設定時序模板(越高越快)-建議-T4(禁止TCP埠動態掃描超過10ms),-T5(mns)。-T1和-T2用來躲避IDS報警。

輸出

  • -oN :正常輸出
  • -oX :XML輸出
  • -oA:輸出所有格式
  • -v :設定詳細程度- -v1 -v2 -v3
  • -d :設定除錯級別- -d1到-d9
  • –reason:顯示主機和埠狀態原因- 此選項顯示確定埠或主機狀態的資料包的型別
  • –open:僅顯示開啟(可能開啟)的埠
  • –packet-trace:顯示傳送和接收的所有資料包
  • –resum :恢復中止掃描

雜項

  • -A:啟用作業系統檢測,版本檢測,指令碼掃描和跟蹤路由
  • -6:啟用IPv6掃描
  • -V:顯示版本資訊
  • -h:顯示幫助資訊