Ⅰ 如何在linux上使用Nmap安全掃描工具
Nmap命令的格式為:
Nmap [ 掃描類型 … ] [ 通用選項 ] { 掃描目標說明 }
下面對Nmap命令的參數按分類進行說明:
1. 掃描類型
-sT TCP connect()掃描,這是最基本的TCP掃描方式。這種掃描很容易被檢測到,在目標主機的日誌中會記錄大批的連接請求以及錯誤信息。
-sS TCP同步掃描(TCP SYN),因為不必全部打開一個TCP連接,所以這項技術通常稱為半開掃描(half-open)。這項技術最大的好處是,很少有系統能夠把這記入系統日誌。不過,你需要root許可權來定製SYN數據包。
-sF,-sX,-sN 秘密FIN數據包掃描、聖誕樹(Xmas Tree)、空(Null)掃描模式。這些掃描方式的理論依據是:關閉的埠需要對你的探測包回應RST包,而打開的埠必需忽略有問題的包(參考RFC 793第64頁)。
-sP ping掃描,用ping方式檢查網路上哪些主機正在運行。當主機阻塞ICMP echo請求包是ping掃描是無效的。nmap在任何情況下都會進行ping掃描,只有目標主機處於運行狀態,才會進行後續的掃描。
-sU 如果你想知道在某台主機上提供哪些UDP(用戶數據報協議,RFC768)服務,可以使用此選項。
-sA ACK掃描,這項高級的掃描方法通常可以用來穿過防火牆。
-sW 滑動窗口掃描,非常類似於ACK的掃描。
-sR RPC掃描,和其它不同的埠掃描方法結合使用。
-b FTP反彈攻擊(bounce attack),連接到防火牆後面的一台FTP伺服器做代理,接著進行埠掃描。
2. 通用選項
-P0 在掃描之前,不ping主機。
-PT 掃描之前,使用TCP ping確定哪些主機正在運行。
-PS 對於root用戶,這個選項讓nmap使用SYN包而不是ACK包來對目標主機進行掃描。
-PI 設置這個選項,讓nmap使用真正的ping(ICMP echo請求)來掃描目標主機是否正在運行。
-PB 這是默認的ping掃描選項。它使用ACK(-PT)和ICMP(-PI)兩種掃描類型並行掃描。如果防火牆能夠過濾其中一種包,使用這種方法,你就能夠穿過防火牆。
-O 這個選項激活對TCP/IP指紋特徵(fingerprinting)的掃描,獲得遠程主機的標志,也就是操作系統類型。
-I 打開nmap的反向標志掃描功能。
-f 使用碎片IP數據包發送SYN、FIN、XMAS、NULL。包增加包過濾、入侵檢測系統的難度,使其無法知道你的企圖。
-v 冗餘模式。強烈推薦使用這個選項,它會給出掃描過程中的詳細信息。
-S <IP> 在一些情況下,nmap可能無法確定你的源地址(nmap會告訴你)。在這種情況使用這個選項給出你的IP地址。
-g port 設置掃描的源埠。一些天真的防火牆和包過濾器的規則集允許源埠為DNS(53)或者FTP-DATA(20)的包通過和實現連接。顯然,如果攻擊者把源埠修改為20或者53,就可以摧毀防火牆的防護。
-oN 把掃描結果重定向到一個可讀的文件logfilename中。
-oS 掃描結果輸出到標准輸出。
–host_timeout 設置掃描一台主機的時間,以毫秒為單位。默認的情況下,沒有超時限制。
–max_rtt_timeout 設置對每次探測的等待時間,以毫秒為單位。如果超過這個時間限制就重傳或者超時。默認值是大約9000毫秒。
–min_rtt_timeout 設置nmap對每次探測至少等待你指定的時間,以毫秒為單位。
-M count 置進行TCP connect()掃描時,最多使用多少個套接字進行並行的掃描。
3. 掃描目標
目標地址 可以為IP地址,CIRD地址等。如192.168.1.2,222.247.54.5/24
-iL filename 從filename文件中讀取掃描的目標。
-iR 讓nmap自己隨機挑選主機進行掃描。
-p 埠 這個選項讓你選擇要進行掃描的埠號的范圍。如:-p 20-30,139,60000。
-exclude 排除指定主機。
-excludefile 排除指定文件中的主機。
舉例:
復制代碼
代碼如下:
nmap -v www.hao123.com nmap -sS -O 192.168.1.23/24
nmap -sX -p 22,53,110,143,4564 128.210.*.1-127
nmap -v –randomize_hosts -p 80 *.*.2.3-5
host -l company.com | cut -d -f 4 | ./nmap -v -iL –
Ⅱ nmap掃描工具的使用二 網路探測
Nmap的6種埠狀態:
Open:開放狀態
Closed:關閉狀態
Filtered: 過濾狀態(可能被過濾,可能網路阻塞)
Unfiltered:未被過濾狀態(可以訪問,但未知埠處於開放還是關閉狀態)
Open|Filtered:開放還是過濾的
Closed|Filtered:不能確定埠事關閉還是被過濾的
-T 時序選項
-p|-F|-r 常用掃描方式
-sS TCP SYN掃描:(需要root許可權)
-sT TCP連接掃描:完整三次握手,最基礎最穩定的掃描方式
-sU UDP掃描(速度非常慢,一般用-p指定埠范圍以節約時間)
-sN/sF/sX 隱蔽掃描
-sA TCP ACK掃描
-sW TCP窗口掃描
-sM TCP Maimon掃描
–scanflags 自定義TCP掃描
-sI 空閑掃描
-sO IP協議掃描
-b * FTP Bounce掃描
時序選項:
-T0(偏執的):非常慢的掃描,用於IDS逃避
-T1(鬼祟的):緩慢的掃描,用於IDS逃避
-T2(文雅的):降低速度以降低對帶寬的消耗,一般不同
-T3(普通的):默認,根據目標的反應自動調整時間
-T4(野蠻的):快速掃描,常用,需要在很好的網路環境下進行掃描,請求可能會淹沒目標
-T5(瘋狂的):極速掃描,以犧牲准確度來提升掃描速度
例子:
(1)指定埠掃描:
nmap -p 80 192.168.20.16
如圖,直接輸入nmap -p 80 192.168.20.16的時候提示Host seems down。我們可以通過ping命令來確定網路的連通性,此處使用的命令是ping 192.168.20.16,發現可以ping通,即網路是通的, 使用Ctrl+z停止執行ping命令。 再使用nmap -p 80 192.168.20.16命令的時候就可以出現正確的結果了。
ping 192.168.20.16(使用Ctrl+z停止執行ping命令)
nmap -p 80-1000 192.168.20.16
(2)TCP SYN掃描:
ping 192.168.20.16(使用Ctrl+z停止執行ping命令)
nmap -sS 192.168.20.16
又稱為半開放(需要root許可權),常見掃描方式,掃描速度較快,由於未進行TCP連接,比較隱蔽,很難背防火牆或管理員發現
(3)隱蔽掃描
ping 192.168.20.16(使用Ctrl+z停止執行ping命令)
nmap -sN 192.168.20.16
-sN是Null掃描
ping 192.168.20.16(使用Ctrl+z停止執行ping命令)
nmap -sF 192.168.20.16
-sF是Fin掃描(發送FIN包)
ping 192.168.20.16(使用Ctrl+z停止執行ping命令)
nmap -sX 192.168.20.16
-sX是Xmas掃描(將數據包的FIN/PSH/URG都標記為1)
(4)TCP ACK掃描
ping 192.168.20.16(使用Ctrl+z停止執行ping命令)
nmap -sA 192.168.20.16
致命缺點:無法確定埠是否開放還是被過濾
Ⅲ nmap掃描埠命令
nmap掃描埠的命令是:nmap -PS ip地址。
使用該命令可以掃描目標地址所開放的埠地址,nmap 掃描器主要基本功能有三個,一是探測一組主機是否在線,其次是掃描主機埠,嗅探所提供的網路服務,還可以推斷主機所用的操作系統。也可以深入探測 UDP 或者 TCP 埠,直至主機所使用的操作系統;還可以將所有探測結果記錄到各種格式的日誌中, 供進一步分析操作。
以下是一些 nmap 常用的命令:
查看當前開放的埠:nmap localhost。
查看主機埠(1024-65535)中開放的埠:nmap -p 1024-65535 localhost。
探測目標主機開放的埠:nmap -PS ip 地址。
探測所列出的目標主機埠:nmap -p22,80,3306 ip 地址。
探測目標主機操作系統類型、埠服務名稱、版本信息:nmap -sV -O localhost。
Ⅳ Home Assistant系列 -- nmap 掃描小米路由器
1.什麼是nmap ?
nmap是一個網路連接端掃描軟體,用來掃描網上電腦開放的網路連接端。確定哪些服務運行在哪些連接端,並且推斷計算機運行哪個操作系統(這是亦稱 fingerprinting)。它是網路管理員必用的軟體之一,以及用以評估網路系統安全。
正如大多數被用於網路安全的工具,nmap 也是不少黑客及駭客(又稱腳本小子)愛用的工具 。系統管理員可以利用nmap來探測工作環境中未經批准使用的伺服器,但是黑客會利用nmap來搜集目標電腦的網路設定,從而計劃攻擊的方法。nmap 以隱秘的手法,避開闖入檢測系統的監視,並盡可能不影響目標系統的日常操作。其基本功能有三個:
Nmap可用於掃描僅有兩個節點的LAN,直至500個節點以上的網路。Nmap 還允許用戶定製掃描技巧。通常,一個簡單的使用ICMP協議的ping操作可以滿足一般需求;也可以深入探測UDP或者TCP埠,直至主機所 使用的操作系統;還可以將所有探測結果記錄到各種格式的日誌中, 供進一步分析操作。
2.在樹莓派上安裝nmap網路掃描器
在樹莓派終端,使用以下命令安裝:
安裝完成後使用 man nmap 命令查看一下nmap 的幫助文檔。運行nmap可以探測樹莓派上開放的埠和網路。
3.HA配置
在HA中配置nmap可以探測指定網路中存在哪些設備,打開HA的主配置文件configuration.yaml,在其中加入以下配置:
192.168.1.1 這個IP是無線路由器的,所有要排除在外。添加完成以後,重啟HA系統,就可以在界面中觀察了。如果你熟悉nmap 也可以在配置文件中指定掃描參數。針對區域網中的設備,最方便與准確的方式是直接到無線路由器上獲得它連接的設備的列表。在小米路由器中可用如下配置:
host為小米路由器的ip地址,password為它的登錄密碼。配置完以後重啟HA 系統,這時 你就可以在界面上看到所有連接設備。HA還支持其他廠商的路由器設備,需要的同學可以去HA的官網查詢。
Ⅳ 想用nmap掃描主機開放埠的命令是什麼
nmap命令
1. 各種代碼舉例。掃描單一的一個主機:#nmap nxadmin.com#nmap 192.168.1.2,掃描整個子網:#nmap 192.168.1.1/24,掃描多個目標:#nmap 192.168.1.2 192.168.1.5, 掃描一個范圍內的目標:#nmap 192.168.1.1-100 。
Ⅵ nmap十條自帶命令的作用分別是什麼啊剛學求大神指點!
1、Intense scan nmap -T4 -A -v:作用強烈的掃描。
2、Intensescan plus UDP:強烈的掃描,加上udp協議掃描。
3、Intense scan, all TCP ports:對目標的所有埠進行強烈的掃描。
4、.Intensescan, no ping:對目標進行強烈的掃描,不進行主機發現。
5、Ping scan :在發現主機後,不進行埠掃描。
6、Quick scan:快速掃描。
7、Quick traceroute:快速掃描,不掃埠返回每一跳的主機ip。
8、Quickscan plus:更快速的掃描。
9、Slow comprehensive scan:慢速綜合性掃描。
10、Regular scan:常規掃描。
Ⅶ nmap使用求助
Nmap是一款網路掃描和主機檢測的非常有用的工具。Nmap是不局限於僅僅收集信息和枚舉,同時可以用來作為一個漏洞探測器或安全掃描器。它可以適用於winodws,linux,mac等操作系統
Nmap是一款非常強大的實用工具,可用於:檢測活在網路上的主機(主機發現)檢測主機上開放的埠(埠發現或枚舉)檢測到相應的埠(服務發現)的軟體和版本檢測操作系統,硬體地址,以及軟體版本檢測脆弱性的漏洞(Nmap的腳本)Nmap是一個非常普遍的工具,它有命令行界面和圖形用戶界面。本人包括以下方面的內容:介紹Nmap掃描中的重要參數操作系統檢測Nmap使用教程Nmap使用不同的技術來執行掃描,包括:TCP的connect()掃描,TCP反向的ident掃描,FTP反彈掃描等。所有這些掃描的類型有自己的優點和缺點,我們接下來將討論這些問題。 Nmap的使用取決於目標主機,因為有一個簡單的(基本)掃描和預先掃描之間的差異。我們需要使用一些先進的技術來繞過防火牆和入侵檢測/防禦系統,以獲得正確的結果。下面是一些基本的命令和它們的用法的例子:掃描單一的一個主機,命令如下:
代碼如下:
#nmap nxadmin.com#nmap 192.168.1.2
掃描整個子網,命令如下:
代碼如下:
#nmap 192.168.1.1/24
掃描多個目標,命令如下:
代碼如下:
#nmap 192.168.1.2 192.168.1.5
掃描一個范圍內的目標,如下:
代碼如下:
#nmap 192.168.1.1-100 (掃描IP地址為192.168.1.1-192.168.1.100內的所有主機)
如果你有一個ip地址列表,將這個保存為一個txt文件,和namp在同一目錄下,掃描這個txt內的所有主機,命令如下:
代碼如下:
#nmap -iL target.txt
如果你想看到你掃描的所有主機的列表,用以下命令:
代碼如下:
#nmap -sL 192.168.1.1/24
掃描除過某一個ip外的所有子網主機,命令:
代碼如下:
#nmap192.168.1.1/24-exclude192.168.1.1
掃描除過某一個文件中的ip外的子網主機命令
代碼如下:
#nmap192.168.1.1/24-excludefilexxx.txt(xxx.txt中的文件將會從掃描的主機中排除)
掃描特定主機上的80,21,23埠,命令如下
代碼如下:
#nmap-p80,21,23192.168.1.1
從上面我們已經了解了Nmap的基礎知識,下面我們深入的探討一下Nmap的掃描技術
Tcp SYN Scan (sS) 這是一個基本的掃描方式,它被稱為半開放掃描,因為這種技術使得Nmap不需要通過完整的握手,就能獲得遠程主機的信息。Nmap發送SYN包到遠程主機,但是它不會產生任何會話.因此不會在目標主機上產生任何日誌記錄,因為沒有形成會話。這個就是SYN掃描的優勢.如果Nmap命令中沒有指出掃描類型,默認的就是Tcp SYN.但是它需要root/administrator許可權.
代碼如下:
#nmap -sS 192.168.1.1
Tcp connect() scan(sT)如果不選擇SYN掃描,TCP connect()掃描就是默認的掃描模式.不同於Tcp SYN掃描,Tcp connect()掃描需要完成三次握手,並且要求調用系統的connect().Tcp connect()掃描技術只適用於找出TCP和UDP埠.
代碼如下:
#nmap -sT 192.168.1.1
Udp scan(sU)顧名思義,這種掃描技術用來尋找目標主機打開的UDP埠.它不需要發送任何的SYN包,因為這種技術是針對UDP埠的。UDP掃描發送UDP數據包到目標主機,並等待響應,如果返回ICMP不可達的錯誤消息,說明埠是關閉的,如果得到正確的適當的回應,說明埠是開放的.
代碼如下:
#nmap -sU 192.168.1.1
FINscan(sF)
有時候TcpSYN掃描不是最佳的掃描模式,因為有防火牆的存在.目標主機有時候可能有IDS和IPS系統的存在,防火牆會阻止掉SYN數據包。發送一個設置了FIN標志的數據包並不需要完成TCP的握手.
代碼如下:
<a href="mailto:root@bt:~#nmap-sF192.168.1.8">root@bt:~#nmap-sF192.168.1.8</a></p> <p>StartingNmap5.51at2012-07-0819:21PKTNmapscanreportfor192.168.1.8Hostisup(0.000026slatency).Notshown:/tcpopen|filteredrpcbind
FIN掃描也不會在目標主機上創建日誌(FIN掃描的優勢之一).個類型的掃描都是具有差異性的,FIN掃描發送的包只包含FIN標識,NULL掃描不發送數據包上的任何位元組,XMAS掃描發送FIN、PSH和URG標識的數據包.
PINGScan(sP)
PING掃描不同於其它的掃描方式,因為它只用於找出主機是否是存在在網路中的.它不是用來發現是否開放埠的.PING掃描需要ROOT許可權,如果用戶沒有ROOT許可權,PING掃描將會使用connect()調用.
代碼如下:
#nmap-sP192.168.1.1
版本檢測(sV)
版本檢測是用來掃描目標主機和埠上運行的軟體的版本.它不同於其它的掃描技術,它不是用來掃描目標主機上開放的埠,不過它需要從開放的埠獲取信息來判斷軟體的版本.使用版本檢測掃描之前需要先用TCPSYN掃描開放了哪些埠.
代碼如下:
#nmap-sV192.168.1.1
Idlescan(sL)
Idlescan是一種先進的掃描技術,它不是用你真實的主機Ip發送數據包,而是使用另外一個目標網路的主機發送數據包.
代碼如下:
#nmap-sL192.168.1.6192.168.1.1
Idlescan是一種理想的匿名掃描技術,通過目標網路中的192.168.1.6向主機192.168.1.1發送數據,來獲取192.168.1.1開放的埠
有需要其它的掃描技術,如FTPbounce(FTP反彈),fragmentationscan(碎片掃描),IPprotocolscan(IP協議掃描),以上討論的是幾種最主要的掃描方式.
Nmap的OS檢測(O)
Nmap最重要的特點之一是能夠遠程檢測操作系統和軟體,Nmap的OS檢測技術在滲透測試中用來了解遠程主機的操作系統和軟體是非常有用的,通過獲取的信息你可以知道已知的漏洞。Nmap有一個名為的nmap-OS-DB資料庫,該資料庫包含超過2600操作系統的信息。Nmap把TCP和UDP數據包發送到目標機器上,然後檢查結果和資料庫對照。
代碼如下:
InitiatingSYNStealthScanat10:21Scanninglocalhost(127.0.0.1)[1000ports]Discoveredopenport111/tcpon127.0.0.1CompletedSYNStealthScanat10:21,0.08selapsed(1000totalports)InitiatingOSdetection(try#1)againstlocalhost(127.0.0.1)RetryingOSdetection(try#2)againstlocalhost(127.0.0.1)
上面的例子清楚地表明,Nmap的首次發現開放的埠,然後發送數據包發現遠程操作系統。操作系統檢測參數是O(大寫O)
Nmap的操作系統指紋識別技術:
設備類型(路由器,工作組等)運行(運行的操作系統)操作系統的詳細信息(操作系統的名稱和版本)網路距離(目標和攻擊者之間的距離跳)
如果遠程主機有防火牆,IDS和IPS系統,你可以使用-PN命令來確保不ping遠程主機,因為有時候防火牆會組織掉ping請求.-PN命令告訴Nmap不用ping遠程主機。
代碼如下:
#nmap-O-PN192.168.1.1/24
以上命令告訴發信主機遠程主機是存活在網路上的,所以沒有必要發送ping請求,使用-PN參數可以繞過PING命令,但是不影響主機的系統的發現.
Nmap的操作系統檢測的基礎是有開放和關閉的埠,如果OSscan無法檢測到至少一個開放或者關閉的埠,會返回以下錯誤:
代碼如下:
Warning:dport
OSScan的結果是不可靠的,因為沒有發現至少一個開放或者關閉的埠
這種情況是非常不理想的,應該是遠程主機做了針對操作系統檢測的防範。如果Nmap不能檢測到遠程操作系統類型,那麼就沒有必要使用-osscan_limit檢測。
想好通過Nmap准確的檢測到遠程操作系統是比較困難的,需要使用到Nmap的猜測功能選項,–osscan-guess猜測認為最接近目標的匹配操作系統類型。
代碼如下:
#nmap-O--osscan-guess192.168.1.1
下面是掃描類型說明
-sTTCPconnect()掃描:這是最基本的TCP掃描方式。connect()是一種系統調用,由操作系統提供,用來打開一個連接。如果目標埠有程序監聽,connect()就會成功返回,否則這個埠是不可達的。這項技術最大的優點是,你勿需root許可權。任何UNIX用戶都可以自由使用這個系統調用。這種掃描很容易被檢測到,在目標主機的日誌中會記錄大批的連接請求以及錯誤信息。
-sSTCP同步掃描(TCPSYN):因為不必全部打開一個TCP連接,所以這項技術通常稱為半開掃描(half-open)。你可以發出一個TCP同步包(SYN),然後等待回應。如果對方返回SYN|ACK(響應)包就表示目標埠正在監聽;如果返回RST數據包,就表示目標埠沒有監聽程序;如果收到一個SYN|ACK包,源主機就會馬上發出一個RST(復位)數據包斷開和目標主機的連接,這實際上有我們的操作系統內核自動完成的。這項技術最大的好處是,很少有系統能夠把這記入系統日誌。不過,你需要root許可權來定製SYN數據包。
-sF-sX-sN秘密FIN數據包掃描、聖誕樹(XmasTree)、空(Null)掃描模式:即使SYN掃描都無法確定的情況下使用。一些防火牆和包過濾軟體能夠對發送到被限制埠的SYN數據包進行監視,而且有些程序比如synlogger和courtney能夠檢測那些掃描。這些高級的掃描方式可以逃過這些干擾。些掃描方式的理論依據是:關閉的埠需要對你的探測包回應RST包,而打開的埠必需忽略有問題的包(參考RFC793第64頁)。FIN掃描使用暴露的FIN數據包來探測,而聖誕樹掃描打開數據包的FIN、URG和PUSH標志。不幸的是,微軟決定完全忽略這個標准,另起爐灶。所以這種掃描方式對Windows95/NT無效。不過,從另外的角度講,可以使用這種方式來分別兩種不同的平台。如果使用這種掃描方式可以發現打開的埠,你就可以確定目標注意運行的不是Windows系統。如果使用-sF、-sX或者-sN掃描顯示所有的埠都是關閉的,而使用SYN掃描顯示有打開的埠,你可以確定目標主機可能運行的是Windwos系統。現在這種方式沒有什麼太大的用處,因為nmap有內嵌的操作系統檢測功能。還有其它幾個系統使用和windows同樣的處理方式,包括Cisco、BSDI、HP/UX、MYS、IRIX。在應該拋棄數據包時,以上這些系統都會從打開的埠發出復位數據包。
-sPping掃描:有時你只是想知道此時網路上哪些主機正在運行。通過向你指定的網路內的每個IP地址發送ICMPecho請求數據包,nmap就可以完成這項任務。如果主機正在運行就會作出響應。不幸的是,一些站點例如:microsoft.com阻塞ICMPecho請求數據包。然而,在默認的情況下nmap也能夠向80埠發送TCPack包,如果你收到一個RST包,就表示主機正在運行。nmap使用的第三種技術是:發送一個SYN包,然後等待一個RST或者SYN/ACK包。對於非root用戶,nmap使用connect()方法。在默認的情況下(root用戶),nmap並行使用ICMP和ACK技術。注意,nmap在任何情況下都會進行ping掃描,只有目標主機處於運行狀態,才會進行後續的掃描。如果你只是想知道目標主機是否運行,而不想進行其它掃描,才會用到這個選項。
-sUUDP掃描:如果你想知道在某台主機上提供哪些UDP(用戶數據報協議,RFC768)服務,可以使用這種掃描方法。nmap首先向目標主機的每個埠發出一個0位元組的UDP包,如果我們收到埠不可達的ICMP消息,埠就是關閉的,否則我們就假設它是打開的。有些人可能會想UDP掃描是沒有什麼意思的。但是,我經常會想到最近出現的solarisrpcbind缺陷。rpcbind隱藏在一個未公開的UDP埠上,這個埠號大於32770。所以即使埠111(portmap的眾所周知埠號)被防火牆阻塞有關系。但是你能發現大於30000的哪個埠上有程序正在監聽嗎?使用UDP掃描就能!cDcBackOrifice的後門程序就隱藏在Windows主機的一個可配置的UDP埠中。不考慮一些通常的安全缺陷,一些服務例如:snmp、tftp、NFS使用UDP協議。不幸的是,UDP掃描有時非常緩慢,因為大多數主機限制ICMP錯誤信息的比例(在RFC1812中的建議)。例如,在Linux內核中(在net/ipv4/icmp.h文件中)限制每4秒鍾只能出現80條目標豢紗鐧腎CMP消息,如果超過這個比例,就會給1/4秒鍾的處罰。solaris的限制更加嚴格,每秒鍾只允許出現大約2條ICMP不可達消息,這樣,使掃描更加緩慢。nmap會檢測這個限制的比例,減緩發送速度,而不是發送大量的將被目標主機丟棄的無用數據包。不過Micro$oft忽略了RFC1812的這個建議,不對這個比例做任何的限制。所以我們可以能夠快速掃描運行Win95/NT的主機上的所有65K個埠。
-sAACK掃描:這項高級的掃描方法通常用來穿過防火牆的規則集。通常情況下,這有助於確定一個防火牆是功能比較完善的或者是一個簡單的包過濾程序,只是阻塞進入的SYN包。這種掃描是向特定的埠發送ACK包(使用隨機的應答/序列號)。如果返回一個RST包,這個埠就標記為unfiltered狀態。如果什麼都沒有返回,或者返回一個不可達ICMP消息,這個埠就歸入filtered類。注意,nmap通常不輸出unfiltered的埠,所以在輸出中通常不顯示所有被探測的埠。顯然,這種掃描方式不能找出處於打開狀態的埠。
-sW對滑動窗口的掃描:這項高級掃描技術非常類似於ACK掃描,除了它有時可以檢測到處於打開狀態的埠,因為滑動窗口的大小是不規則的,有些操作系統可以報告其大小。這些系統至少包括:某些版本的AIX、Amiga、BeOS、BSDI、Cray、Tru64UNIX、DG/UX、OpenVMS、DigitalUNIX、OpenBSD、OpenStep、QNX、Rhapsody、SunOS4.x、Ultrix、VAX、VXWORKS。從nmap-hackers郵件3列表的文檔中可以得到完整的列表。
-sRRPC掃描。這種方法和nmap的其它不同的埠掃描方法結合使用。選擇所有處於打開狀態的埠向它們發出SunRPC程序的NULL命令,以確定它們是否是RPC埠,如果是,就確定是哪種軟體及其版本號。因此你能夠獲得防火牆的一些信息。誘餌掃描現在還不能和RPC掃描結合使用。
-bFTP反彈攻擊(bounceattack):FTP協議(RFC959)有一個很有意思的特徵,它支持代理FTP連接。也就是說,我能夠從evil.com連接到FTP伺服器target.com,並且可以要求這台FTP伺服器為自己發送Internet上任何地方的文件!1985年,RFC959完成時,這個特徵就能很好地工作了。然而,在今天的Internet中,我們不能讓人們劫持FTP伺服器,讓它向Internet上的任意節點發送數據。如同Hobbit在1995年寫的文章中所說的,這個協議"能夠用來做投遞虛擬的不可達郵件和新聞,進入各種站點的伺服器,填滿硬碟,跳過防火牆,以及其它的騷擾活動,而且很難進行追蹤"。我們可以使用這個特徵,在一台代理FTP伺服器掃描TCP埠。因此,你需要連接到防火牆後面的一台FTP伺服器,接著進行埠掃描。如果在這台FTP伺服器中有可讀寫的目錄,你還可以向目標埠任意發送數據(不過nmap不能為你做這些)。傳遞給-b功能選項的參數是你要作為代理的FTP伺服器。語法格式為:-busername:password@server:port。除了server以外,其餘都是可選的。如果你想知道什麼伺服器有這種缺陷,可以參考我在Phrack51發表的文章。還可以在nmap的站點得到這篇文章的最新版本。
通用選項這些內容不是必需的,但是很有用。
-P0在掃描之前,不必ping主機。有些網路的防火牆不允許ICMPecho請求穿過,使用這個選項可以對這些網路進行掃描。microsoft.com就是一個例子,因此在掃描這個站點時,你應該一直使用-P0或者-PT80選項。
-PT掃描之前,使用TCPping確定哪些主機正在運行。nmap不是通過發送ICMPecho請求包然後等待響應來實現這種功能,而是向目標網路(或者單一主機)發出TCPACK包然後等待回應。如果主機正在運行就會返回RST包。只有在目標網路/主機阻塞了ping包,而仍舊允許你對其進行掃描時,這個選項才有效。對於非root用戶,我們使用connect()系統調用來實現這項功能。使用-PT來設定目標埠。默認的埠號是80,因為這個埠通常不會被過濾。
-PS對於root用戶,這個選項讓nmap使用SYN包而不是ACK包來對目標主機進行掃描。如果主機正在運行就返回一個RST包(或者一個SYN/ACK包)。
-PI設置這個選項,讓nmap使用真正的ping(ICMPecho請求)來掃描目標主機是否正在運行。使用這個選項讓nmap發現正在運行的主機的同時,nmap也會對你的直接子網廣播地址進行觀察。直接子網廣播地址一些外部可達的IP地址,把外部的包轉換為一個內向的IP廣播包,向一個計算機子網發送。這些IP廣播包應該刪除,因為會造成拒絕服務攻擊(例如smurf)。
Ⅷ 掃描器之王nmap中全面掃描的命令是什麼
掃描器之王nmap中全面掃描的命令是nmap-T4-A-vtargethost。全面的掃描:對主機進行完整全面的掃描,使用nmap內置的-A選項。使用該選項,nmap對主機進行主機發現、埠掃描、應用程序與版本偵測、操作系統偵測及調用默認NSE腳本掃描。命令形式:nmap-T4-A-vtargethost。
Ⅸ 【工具使用】常見的NMAP命令總結
總結了一下常見的NMAP的使用命令,用來快速查看的,覺得有用的小夥伴可以收藏一下。
nmap -v 詳細信息輸出
nmap -p 指定埠
nmap -iL 掃描文件中的ip
nmap -exclude 不掃描某些ip
nmap -Pn 使用ping掃描,顯式地關閉埠掃描,用於主機發現
nmap -sn 使用ping掃描,進行埠掃描,假設主機都是up的
nmap -sS 使用SYN掃描,不需要完成三次握手
nmap -sT TCP connect掃描,需要完成三次握手,只適用於找出TCP和UDP埠
nmap -sU 掃描UDP埠
nmap -sF FIN掃描,用於探測防火牆狀態,識別埠是否關閉,容易漏掃
nmap -sV 掃描目標主機的埠和軟體版本
nmap -O 遠程檢測操作系統和軟體
nmap -O --osscan-guess 猜測目標操作系統版本
nmap -traceroute 路由跟蹤
nmap -A 綜合掃描,包含1-10000的埠ping掃描,操作系統掃描,腳本掃描,路由跟蹤,服務探測
nmap -oN result.txt 將標准輸出寫入到指定文件中
nmap -oX result.xml 將輸入寫成xml的形式
nmap -oS result.txt 將輸出寫成特殊符號的形式,內容跟-oN是一樣的,只是字體變了而已
nmap -oG result.txt 將輸出寫成特殊格式
nmap -oA 將輸出所有格式,有三種 .xml/ .gnmap/ .nmap
nmap -T[0-5] 時間參數模板
-T0 用於躲避IDS,時間很長
-T1 用於躲避IDS,時間很長
-T2 降低了掃描速度,使用更小的帶寬和目標主機資源對目標靶機進行掃描
-T3 默認模式,未做優化
-T4 假設用戶具有合適及可靠的網路而加速對目標靶機的掃描
-T5 假設用戶具有更好的網路或者願意犧牲准確性而加速掃描
nmap -sC 根據埠識別服務自動調用默認腳本
nmap --script