nmap

nmap(Network exploration tool and security scanner)
http://insecure.org/nmap/
http://nmap.org/man/zh/index.html

主要用途:掃描主機的資訊
ex:查localhost的資訊

nmap localhost

.................................................
用法
nmap [Scan Types掃瞄類型] [Options掃瞄參數] {target specification指定目標}

target specification(指定目標):
多台單一機器用空格分開 ex192.168.0.155 192.168.0.177
-表示範圍ex 192.168.1-200.50-100
星號表示範圍ex 192.168.*.155(意思就是 192.168.0.155,192.168.1.155⋯192.168.2.255⋯)
netmask表示範圍ex192.168.0.0/24 203.71.166/24
-iL :掃描檔案中指定的目標
-iR : 隨機選擇被掃描的主機數量
--exclude : 要排除的目標
--excludefile : 排除文件中目標
ps:指定的文件格式大致如下
192.168.0.*
203.71.166.20-80
www.xxx.com
www.yyy.com/24
20.0-20.50-100.*

............

HOST DISCOVERY(偵測目標方式):
-sL: 只列出要掃描的主機列表,不做真正的掃描
-sP: 使用ping和ack掃描,預設選項
-P0: 不偵測目標主機狀態,直接進行掃描
-PS [portlist]: 利用TCP SYN ping
-PA [portlist]: 利用TCP ACK ping
-PU [portlist]: 利用UDP ping
-PE/PP/PM: 使用ICMP ping類型,分別為echo, timestamp,netmask request
-PR : 利用ARP ping
-n :不對ip進行dns解析
-R: 對ip進行dns解析
ps:預設是有時會執行-R選項
ex:
使用ping掃瞄子網路內的所有IP,並列出有回應的IP,但不作進一步測試
nmap -sP 192.168.1.0/24
列出子網路所有IP及對應的主機名稱,但不作ping 及通訊埠偵測
nmap -sL 192.168.1.0/24
利用tcp syn ping偵測遠端主機是否已開啟22,23,80,25通訊埠
nmap -PS22,23,80,25 192.168.1.1
使用UDP協定ping 遠端的主機
nmap -PU 192.168.1.0/24

-sP畫面大致如下:
Host 10.1.2.7 appears to be up.
MAC Address: 00:01:3C:D0:A9:8A (TIW Systems)
Host 10.1.2.9 appears to be up.
MAC Address: 00:11:6B:97:18:22 (Accton Technology)
Nmap finished: 256 IP addresses (2 hosts up) scanned in 16.455 seconds 

...............

SCAN TECHNIQUES(掃描方式):
-sS 使用tcp syn掃描,此為半開放的掃瞄方式,速度較快也較常被用,並可列出有回應的遠端主機已開啟的網路服務埠
-sU 使用udp掃描
-sT 使用tcp Connect()掃描,若-sS掃瞄無效會自動改用此掃描方式
-sA 使用tcp ACK掃描
-sW 使用tcp windows掃描
-sM 使用tcp Maimon掃描
-sN 使用TCP Null掃描
-sF 使用TCP FIN掃描
-sX 使用TCP Xmas掃描
--scanflags : 自訂TCP flags掃描,flags有syn,ack,psh,urg,fin,rst
-sI : 匿名掃描
-sO: 使用IP protocol掃描
-b : 利用遠端ftp主機掃描
ex:
使用TCP SYN掃瞄遠端主機群
nmap -sS 192.168.1.0/24
用UDP協定掃瞄遠端主機群
nmap -sU 192.168.1.0/24
偵測遠端主機已開啟哪些通訊協定 TCP,UDP,ICMP,...
nmap -sO 192.168.1.19

執行-sO時,目標主機tcpdump會類似以下
20:18:01.016785 IP 10.1.2.26 > 10.1.2.25: ip-proto-245 0
20:18:02.018842 IP 10.1.2.26 > 10.1.2.25: pnni 0
20:18:03.020868 IP 10.1.2.26 > 10.1.2.25: stp 0
20:18:04.022906 IP 10.1.2.26 > 10.1.2.25: ip-proto-249 0
20:18:05.024947 IP 10.1.2.26 > 10.1.2.25: idpr-cmtp 0
20:18:06.026991 IP 10.1.2.26 > 10.1.2.25: ip-proto-239 0

............

PORT SPECIFICATION AND SCAN ORDER(指定port及掃描順序):
預設會掃描1-1024間的所有port,和nmap-services文件指定的port
-p : 指定要掃描的port
ex: -p 22; -p 1-65535; -p U:53,111,137,T:21-25,80,139,8080
ps: -p 1024- 是大於1024的意思
-F: 根據nmap-services文件指定的port掃描
-r: 有順序的掃描port,預設是無順序

.............

SERVICE/VERSION DETECTION(偵測服務版本):
-sV: 啟用伺服器服務版本偵測功能
--version-light: 僅提供少數訊息
--version-all: 顯示全部訊息
--version-trace: 顯示詳細訊息
OS DETECTION(偵測作業系統):
-O: 啟動作業系統偵測
--osscan-limit: 只偵測指定目標
--osscan-guess: 推測作業系統類型

TIMING AND PERFORMANCE(時間和效能):
-T <0-6> 設定timing template(速度調整模板),預設是3,0是最慢但最不容易被發現
--min-hostgroup/max-hostgroup : Parallel host scan group sizes
--min-parallelism/max-parallelism : Probe parallelization
--min_rtt_timeout/max-rtt-timeout/initial-rtt-timeout : Specifies
probe round trip time.
--host-timeout : Give up on target after this long
--scan-delay/--max_scan-delay : Adjust delay between probes

FIREWALL/IDS EVASION AND SPOOFING:
-f; --mtu : fragment packets (optionally w/given MTU)
-D : Cloak a scan with decoys
-S : Spoof source address
-e : Use specified interface
-g/--source-port : Use given port number
--data-length : Append random data to sent packets
--ttl : Set IP time-to-live field
--spoof-mac : Spoof your MAC address

OUTPUT(輸出結果):
-oN 將輸出直接寫在指定的文件上
-oX 輸出成XML格式
-oS 輸出成s|
-oG 輸出成grep格式
-oA : 輸出成以上四種格式
-v:提高輸出結果的詳細度
-d[level]: 設定debug時輸出的詳細度
--open :僅顯示state為open的主機
--packet-trace: 顯示所有傳送和接收的封包
--iflist: 顯示主機介面或路由
--append-output: 將本次掃描結果寫入另一個掃描結果文件後面,不支援xml
--resume : 繼續上次被中斷的掃描,不支援xml
--stylesheet : 指定xsl樣式將xml轉換成html
--no_stylesheet: 不要將xml轉換成html

MISC:
-6: 啟用ipv6掃描
-A: 執行全部選項,包括作業系統和伺服器服務偵測
--datadir :指定nmap參數檔位置
--send-eth 要求使用訊框傳送
--send-ip: 要求使用封包傳送
--privileged: Assume that the user is fully privileged
-V: 顯示版本
-h: 顯示簡短操作說明

...........................................................

網路上的其他範例

偵測遠端主機的作業系統類型
nmap -O 192.168.1.19
nmap -A 192.168.1.19

nmap -v scanme.nmap.org
掃瞄遠端主機,並列出相關詳細的資訊。

以SYN秘密掃瞄網域為scanme.nmap.org所屬 C 子網段的所有存在的主機作業系統類型。
nmap -sS -O scanme.nmap.org/24

進行主機列表及TCP掃瞄特定網路服務,遠端主機的網路含括 198.116.(0-255).(1-127) 網段下。
nmap -sV -p 22,53,110,143,4564 198.116.0-255.1-127

隨機選擇100000台主機,偵測是否開啟 Web 服務,由於此掃瞄較耗時,所以加上-P0 不作主機列表。
nmap -v -iR 100000 -P0 -p 80

對 www.target.com 底下所屬網域進行 TCP Stealth Scan ,掃描的 port 僅限於 FTP,SSH,TELNET,SMTP,POP3
nmap -sS -p 21,22,23,25,110 www.target.com/24

掃描 tcp 與 udp port ,範圍從 1-65535,目標是www.example.com,注意, 如果該機器有防火牆保護著或是微軟主機,這項掃描將會失敗
nmap -sF -sU -p 1-65535 www.example.com


2009-10-17 21:45:43發表 2012-12-16 18:42:18修改   

數據分析
程式開發
計算機組織與結構
資料結構與演算法
Database and MySql
manage tool

windows
unix-like
linux service
network
network layer3
network layer2
network WAN
network service
作業系統
數位鑑識
資訊安全解決方案
資訊安全威脅
Cisco security
Cisco network
Cisco layer3
Cisco layer2



  登入      [牛的大腦] | [單字我朋友] Powered by systw.net