<span id="7ztzv"></span>
<sub id="7ztzv"></sub>

<span id="7ztzv"></span><form id="7ztzv"></form>

<span id="7ztzv"></span>

        <address id="7ztzv"></address>

            原文地址:http://drops.wooyun.org/tips/4333

            From:http://highon.coffee/docs/nmap/

            0x00:說明


            只是一個快速查詢手冊,理論的東西都沒有補充,歡迎大家積極在評論區補充自己常用的參數,O(∩_∩)O

            0x01:nmap功能介紹


            1.主機存活檢測
            2.端口探測
            3.服務識別
            4.操作系統識別
            5.硬件地址檢測
            6.服務版本識別
            7.漏洞掃描,使用nmap自帶腳本
            

            0x02:簡單示例


            使用ping檢測10.0.0.0/24這個網段

            #!bash
            nmap -sP 10.0.0.0/24 
            

            使用SYN的方法對全端口進行掃描,在aggressive(4)的時間模板下,同時對開放的端口進行端口識別

            #!bash
            nmap -p1-65535 -sV -sS -T4 target 
            

            PS: -T代表的是掃描的時候,一些控制選項(TCP的延遲時間,探測報文之間的間隔等)的集合,具體的man nmap一下就知道了

            使用SYN掃描,在aggressive(4)的時間模板下,探測操作系統的類型和版本,還有顯示traceroute的結果,結果輸出較為詳細

            #!bash
            nmap -v -sS -A -T4 target 
            

            使用SYN掃描,在insane(5)的時間模板下,探測操作系統的類型和版本,還有顯示traceroute的結果,結果輸出較為詳細

            #!bash
            nmap -v -sS -A -T5 target 
            

            使用SYN掃描,在insane(5)的時間模板下,探測操作系統的類型,還有顯示traceroute的結果,操作系統的類型,結果輸出較為詳細

            #!bash
            nmap -v -sV -O -sS -T5 target 
            

            使用SYN的方法對全端口進行掃描,同時對開放的端口進行端口識別,在aggressive(4)的時間模板下,探測操作系統的類型還有顯示traceroute的結果,結果輸出較為詳細

            #!bash
            nmap -v -p 1-65535 -sV -O -sS -T4 target 
            

            用SYN的方法對全端口進行掃描,同時對開放的端口進行端口識別,在insane(5)的時間模板下,探測操作系統的類型,還有顯示traceroute的結果,結果輸出較為詳細

            #!bash
            nmap -v -p 1-65535 -sV -O -sS -T5 target
            

            從文件中讀取需要掃描的IP列表

            #!bash
            nmap -iL ip-address.txt
            

            Nmap輸出格式

            掃描的結果輸出到屏幕,同時會存儲一份到grep-output.txt

            #!bash
            nmap -sV -p 139,445 -oG grep-output.txt 10.0.1.0/24 
            

            掃描結果輸出為html

            #!bash
            nmap -sS -sV -T5 10.0.1.99 --webxml -oX - | xsltproc --output file.html 
            

            Nmap掃描Netbios

            在子網中發現開放netbios的IP

            #!bash
            nmap -sV -v -p139,445 10.0.0.1/24 
            

            掃描指定netbios的名稱

            #!bash
            nmap -sU --script nbstat.nse -p 137 target 
            

            掃描指定的目標,同時檢測相關漏洞

            #!bash
            nmap --script-args=unsafe=1 --script smb-check-vulns.nse -p 445 target
            

            將nmap的80端口的掃描結果,通過管道交給nikto進行掃描

            #!bash
            Nmap Nikto Scan nmap -p80 10.0.1.0/24 -oG - | nikto.pl -h -
            

            將nmap的80,443端口的掃描結果,通過管道交給nikto進行掃描

            #!bash
            nmap -p80,443 10.0.1.0/24 -oG - | nikto.pl -h -
            

            0x03:Nmap參數詳解


            Nmap支持主機名,ip,網段的表示方式

            例如:blah.highon.coffee, namp.org/24, 192.168.0.1;10.0.0-25.1-254

            #!bash
            -iL filename                    從文件中讀取待檢測的目標,文件中的表示方法支持機名,ip,網段
            -iR hostnum                     隨機選取,進行掃描.如果-iR指定為0,則是無休止的掃描
            --exclude host1[, host2]        從掃描任務中需要排除的主機           
            --exculdefile exclude_file      排除文件中的IP,格式和-iL指定掃描文件的格式相同
            

            主機發現

            #!bash
            -sL                     僅僅是顯示,掃描的IP數目,不會進行任何掃描
            -sn                     ping掃描,即主機發現
            -Pn                     不檢測主機存活
            -PS/PA/PU/PY[portlist]  TCP SYN Ping/TCP ACK Ping/UDP Ping發現
            -PE/PP/PM               使用ICMP?echo,?timestamp and?netmask?請求包發現主機
            -PO[prococol list]      使用IP協議包探測對方主機是否開啟   
            -n/-R                   不對IP進行域名反向解析/為所有的IP都進行域名的反響解析
            

            掃描技巧

            #!bash
            -sS/sT/sA/sW/sM                 TCP SYN/TCP connect()/ACK/TCP窗口掃描/TCP Maimon掃描
            -sU                             UDP掃描
            -sN/sF/sX                       TCP Null,FIN,and Xmas掃描
            --scanflags                     自定義TCP包中的flags
            -sI zombie host[:probeport]     Idlescan
            -sY/sZ                          SCTP INIT/COOKIE-ECHO 掃描
            -sO                             使用IP?protocol?掃描確定目標機支持的協議類型
            -b “FTP relay host”             使用FTP bounce scan
            

            指定端口和掃描順序

            #!bash
            -p                      特定的端口 -p80,443 或者 -p1-65535
            -p U:PORT               掃描udp的某個端口, -p U:53
            -F                      快速掃描模式,比默認的掃描端口還少
            -r                      不隨機掃描端口,默認是隨機掃描的
            --top-ports "number"    掃描開放概率最高的number個端口,出現的概率需要參考nmap-services文件,ubuntu中該文件位于/usr/share/nmap.nmap默認掃前1000個
            --port-ratio "ratio"    掃描指定頻率以上的端口
            

            服務版本識別

            #!bash
            -sV                             開放版本探測,可以直接使用-A同時打開操作系統探測和版本探測
            --version-intensity "level"     設置版本掃描強度,強度水平說明了應該使用哪些探測報文。數值越高,服務越有可能被正確識別。默認是7
            --version-light                 打開輕量級模式,為--version-intensity 2的別名
            --version-all                   嘗試所有探測,為--version-intensity 9的別名
            --version-trace                 顯示出詳細的版本偵測過程信息
            

            腳本掃描

            #!bash
            -sC                             根據端口識別的服務,調用默認腳本
            --script=”Lua scripts”          調用的腳本名
            --script-args=n1=v1,[n2=v2]     調用的腳本傳遞的參數
            --script-args-file=filename     使用文本傳遞參數
            --script-trace                  顯示所有發送和接收到的數據
            --script-updatedb               更新腳本的數據庫
            --script-help=”Lua script”      顯示指定腳本的幫助
            

            OS識別

            #!bash
            -O              啟用操作系統檢測,-A來同時啟用操作系統檢測和版本檢測
            --osscan-limit  針對指定的目標進行操作系統檢測(至少需確知該主機分別有一個open和closed的端口)
            --osscan-guess  推測操作系統檢測結果,當Nmap無法確定所檢測的操作系統時,會盡可能地提供最相近的匹配,Nmap默認進行這種匹配
            

            防火墻/IDS躲避和哄騙

            #!bash
            -f; --mtu value                 指定使用分片、指定數據包的MTU.
            -D decoy1,decoy2,ME             使用誘餌隱蔽掃描
            -S IP-ADDRESS                   源地址欺騙
            -e interface                    使用指定的接口
            -g/ --source-port PROTNUM       使用指定源端口??
            --proxies url1,[url2],...       使用HTTP或者SOCKS4的代理?
            
            --data-length NUM               填充隨機數據讓數據包長度達到NUM
            --ip-options OPTIONS            使用指定的IP選項來發送數據包
            --ttl VALUE                     設置IP time-to-live域
            --spoof-mac ADDR/PREFIX/VEBDOR  MAC地址偽裝
            --badsum                        使用錯誤的checksum來發送數據包
            

            Nmap 輸出

            #!bash
            -oN                     將標準輸出直接寫入指定的文件
            -oX                     輸出xml文件
            -oS                     將所有的輸出都改為大寫
            -oG                     輸出便于通過bash或者perl處理的格式,非xml
            -oA BASENAME            可將掃描結果以標準格式、XML格式和Grep格式一次性輸出
            -v                      提高輸出信息的詳細度
            -d level                設置debug級別,最高是9
            --reason                顯示端口處于帶確認狀態的原因
            --open                  只輸出端口狀態為open的端口
            --packet-trace          顯示所有發送或者接收到的數據包
            --iflist                顯示路由信息和接口,便于調試
            --log-errors            把日志等級為errors/warings的日志輸出
            --append-output         追加到指定的文件
            --resume FILENAME       恢復已停止的掃描
            --stylesheet PATH/URL   設置XSL樣式表,轉換XML輸出
            --webxml                從namp.org得到XML的樣式
            --no-sytlesheet         忽略XML聲明的XSL樣式表
            

            其他nmap選項

            #!bash
            -6                      開啟IPv6
            -A                      OS識別,版本探測,腳本掃描和traceroute
            --datedir DIRNAME       說明用戶Nmap數據文件位置
            --send-eth / --send-ip  使用原以太網幀發送/在原IP層發送
            --privileged            假定用戶具有全部權限
            --unprovoleged          假定用戶不具有全部權限,創建原始套接字需要root權限
            -V                      打印版本信息
            -h                      輸出幫助
            

            0x04:例子


            整個子網檢測的Netbios

            #!bash
            Nmap -sV -v -p 139,445 10.0.1.0/24
            Starting Nmap 6.47 ( http://nmap.org ) at 2014-12-11 21:26 GMT
            Nmap scan report for nas.decepticons 10.0.1.12
            Host is up (0.014s latency).
            
            PORT STATE SERVICE VERSION
            139/tcp open netbios-ssn Samba smbd 3.X (workgroup: MEGATRON)
            445/tcp open netbios-ssn Samba smbd 3.X (workgroup: MEGATRON)
            
            Service detection performed. Please report any incorrect results at http://nmap.org/submit/ .
            
            Nmap done: 256 IP addresses (1 hosts up) scanned in 28.74 seconds
            

            Nmap 查找Netbios名稱

            #!bash
            nmap -sU --script nbstat.nse -p 137 10.0.1.12
            Starting Nmap 6.47 ( http://nmap.org ) at 2014-12-11 21:26 GMT
            Nmap scan report for nas.decepticons 10.0.1.12
            Host is up (0.014s latency).
            
            PORT STATE SERVICE VERSION
            137/udp open netbios-ns
            
            Host script results:
            |_nbstat: NetBIOS name: STARSCREAM, NetBIOS user: unknown, NetBIOS MAC: unknown (unknown)?
            Nmap done: 256 IP addresses (1 hosts up) scanned in 28.74 seconds
            

            如果開啟Netbios服務,檢查是否存在漏洞

            #!bash
            nmap --script-args=unsafe=1 --script smb-check-vulns.nse -p 445?10.0.0.1
            
            Nmap scan report for ie6winxp.decepticons (10.0.1.1)
            Host is up (0.00026s latency).
            PORT STATE SERVICE
            445/tcp open microsoft-ds
            Host script results:
            | smb-check-vulns:
            | MS08-067: VULNERABLE
            | Conficker: Likely CLEAN
            | regsvc DoS: NOT VULNERABLE
            | SMBv2 DoS (CVE-2009-3103): NOT VULNERABLE
            |_ MS07-029: NO SERVICE (the Dns Server RPC service is inactive)
            Nmap done: 1 IP address (1 host up) scanned in 5.45 seconds
            

            根據掃描結果,發現存在MS08-067漏洞

            0x05參考


            原文

            http://highon.coffee/docs/nmap/

            Namp官網的完整手冊

            https://svn.nmap.org/nmap/docs/nmap.usage.txt

            Nmap官方的中文手冊

            http://nmap.org/man/zh/

            國內的一篇講Nmap的,寫的挺不錯的

            http://blog.csdn.net/aspirationflow/article/details/7694274

            終極必殺:

            man nmap

            <span id="7ztzv"></span>
            <sub id="7ztzv"></sub>

            <span id="7ztzv"></span><form id="7ztzv"></form>

            <span id="7ztzv"></span>

                  <address id="7ztzv"></address>

                      亚洲欧美在线