自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

專家技巧:Linux黑客必備工具之nmap

系統(tǒng) Linux
nmap是一個(gè)網(wǎng)絡(luò)探測和安全掃描程序,系統(tǒng)管理者和個(gè)人可以使用這個(gè)軟件掃描大型的網(wǎng)絡(luò),獲取被掃描主機(jī)正在運(yùn)行以及提供什么服務(wù)等信息。

nmap是一個(gè)網(wǎng)絡(luò)探測和安全掃描程序,系統(tǒng)管理者和個(gè)人可以使用這個(gè)軟件掃描大型的網(wǎng)絡(luò),獲取被掃描主機(jī)正在運(yùn)行以及提供什么服務(wù)等信息。nmap支持很多掃描技術(shù),例如:UDP、TCP connect()、TCP SYN(半開掃描)、ftp代理(bounce攻擊)、反向標(biāo)志、ICMP、FIN、ACK掃描、圣誕樹(Xmas Tree)、SYN掃描和null掃描。從掃描類型一節(jié)可以得到細(xì)節(jié)。nmap還提供了一些高級(jí)的特征,例如:通過TCP/IP協(xié)議棧特征探測操作系統(tǒng)類 型,秘密掃描,動(dòng)態(tài)延時(shí)和重傳計(jì)算,并行掃描,通過并行ping掃描探測關(guān)閉的主機(jī),誘餌掃描,避開端口過濾檢測,直接RPC掃描(無須端口影射),碎片 掃描,以及靈活的目標(biāo)和端口設(shè)定。本文詳細(xì)介紹了NMap的詳細(xì)使用選項(xiàng),并給出了幾個(gè)實(shí)用實(shí)例,nmap是入侵和網(wǎng)絡(luò)安全檢測的必備工具。

(一)選擇程序安裝包

首先到官方網(wǎng)站上去下載nmap,下載地址為http://nmap.org/download.html,下載相關(guān)操作系統(tǒng)下的nmap軟件,比如我的是FC10_64的操作系統(tǒng),我就下載如圖1所示的軟件包.

  1

  圖1選擇所需要安裝的包

(二)安裝Gcc編譯器

當(dāng)然,我們也可以選擇源碼安裝,源碼安裝的前提是首先安裝了Gcc編譯器,我們可以使用 yum -y install Gcc來網(wǎng)絡(luò)安裝Gcc編譯器.

在確保安裝了Gcc的情況下,進(jìn)入源碼存放的文件夾,解壓縮源碼文件如圖2所示.

  1

  圖2解壓縮相關(guān)源碼文件

(三)測試運(yùn)行環(huán)境和安裝nmap

  解壓完畢后,進(jìn)入解壓縮后的文件夾,使用./confgure 、 make來測試運(yùn)行環(huán)境。如圖3

  1

  圖3 ./configure和make測試環(huán)境

  之后以管理員身份登錄安裝nmap,并測試可用性,如圖4所示。

  1

  圖4 安裝nmap 并測試其可用性

  nmap的安裝到此結(jié)束,下面將著重介紹一下nmap的使用方法。

  (四)Nmap的用法

  可以使用 man nmap 來查看一下nmap是使用方法。為了提高nmap在non-root狀態(tài)下的性能,軟件的設(shè)計(jì)者付出了很大的努力。很不幸,一些內(nèi)核界面(例如raw socket)需要在root狀態(tài)下使用。所以應(yīng)該盡可能在root使用nmap。

  nmap運(yùn)行通常會(huì)得到被掃描主機(jī)端口的列表。nmap總會(huì)給出well known(知名)端口的服務(wù)名(如果可能)、端口號(hào)、狀態(tài)和協(xié)議等信息。每個(gè)端口的狀態(tài)有:open、filtered、unfiltered。open狀態(tài)意味著目標(biāo)主機(jī)能夠在這個(gè)端口使用accept()系統(tǒng)調(diào)用接受連接。filtered狀態(tài)表示:防火墻、包過濾和其它的網(wǎng)絡(luò)安全軟件掩蓋了這個(gè)端口,禁止 nmap探測其是否打開。unfiltered表示:這個(gè)端口關(guān)閉,并且沒有防火墻/包過濾軟件來隔離nmap的探測企圖。通常情況下,端口的狀態(tài)基本都 是unfiltered狀態(tài),只有在大多數(shù)被掃描的端口處于filtered狀態(tài)下,才會(huì)顯示處于unfiltered狀態(tài)的端口。根據(jù)使用的功能選項(xiàng),nmap也可以報(bào)告遠(yuǎn)程主機(jī)的下列特征:使用的操作系統(tǒng)、TCP序列、運(yùn)行綁定到每個(gè)端口上的應(yīng)用程序的用戶名、DNS名、主機(jī)地址是否是欺騙地址、以及其它一些東西。

  1.功能選項(xiàng)

  功能選項(xiàng)可以組合使用。一些功能選項(xiàng)只能夠在某種掃描模式下使用。nmap會(huì)自動(dòng)識(shí)別無效或者不支持的功能選項(xiàng)組合,并向用戶發(fā)出警告信息。

  如果你是有經(jīng)驗(yàn)的用戶,可以略過結(jié)尾的示例一節(jié)??梢允褂胣map -h快速列出功能選項(xiàng)列表如圖5。

  1

  圖5 快速列出功能選項(xiàng)

#p#2.掃描類型

-sT

TCP connect()掃描:這是最基本的TCP掃描方式。connect()是一種系統(tǒng)調(diào)用,由操作系統(tǒng)提供,用來打開一個(gè)連接。如果目標(biāo)端口有程序監(jiān)聽, connect()就會(huì)成功返回,否則這個(gè)端口是不可達(dá)的。這項(xiàng)技術(shù)最大的優(yōu)點(diǎn)是,你勿需root權(quán)限。任何UNIX用戶都可以自由使用這個(gè)系統(tǒng)調(diào)用。這 種掃描很容易被檢測到,在目標(biāo)主機(jī)的日志中會(huì)記錄大批的連接請(qǐng)求以及錯(cuò)誤信息。

-sS

TCP同步掃描(TCP SYN):因?yàn)椴槐厝看蜷_一個(gè)TCP連接,所以這項(xiàng)技術(shù)通常稱為半開掃描(half-open)。你可以發(fā)出一個(gè)TCP同步包(SYN),然后等待回 應(yīng)。如果對(duì)方返回SYN|ACK(響應(yīng))包就表示目標(biāo)端口正在監(jiān)聽;如果返回RST數(shù)據(jù)包,就表示目標(biāo)端口沒有監(jiān)聽程序;如果收到一個(gè)SYN|ACK包, 源主機(jī)就會(huì)馬上發(fā)出一個(gè)RST(復(fù)位)數(shù)據(jù)包斷開和目標(biāo)主機(jī)的連接,這實(shí)際上有我們的操作系統(tǒng)內(nèi)核自動(dòng)完成的。這項(xiàng)技術(shù)最大的好處是,很少有系統(tǒng)能夠把這 記入系統(tǒng)日志。不過,你需要root權(quán)限來定制SYN數(shù)據(jù)包。

-sF -sF -sN

秘密FIN數(shù)據(jù)包掃描、圣誕樹(Xmas Tree)、空(Null)掃描模式:即使SYN掃描都無法確定的情況下使用。一些防火墻和包過濾軟件能夠?qū)Πl(fā)送到被限制端口的SYN數(shù)據(jù)包進(jìn)行監(jiān)視,而 且有些程序比如synlogger和courtney能夠檢測那些掃描。這些高級(jí)的掃描方式可以逃過這些干擾。這些掃描方式的理論依據(jù)是:關(guān)閉的端口需要 對(duì)你的探測包回應(yīng)RST包,而打開的端口必需忽略有問題的包(參考RFC 793第64頁)。FIN掃描使用暴露的FIN數(shù)據(jù)包來探測,而圣誕樹掃描打開數(shù)據(jù)包的FIN、URG和PUSH標(biāo)志。不幸的是,微軟決定完全忽略這個(gè)標(biāo) 準(zhǔn),另起爐灶。所以這種掃描方式對(duì)Windows95/NT無效。不過,從另外的角度講,可以使用這種方式來分別兩種不同的平臺(tái)。如果使用這種掃描方式可 以發(fā)現(xiàn)打開的端口,你就可以確定目標(biāo)注意運(yùn)行的不是Windows系統(tǒng)。如果使用-sF、-sX或者-sN掃描顯示所有的端口都是關(guān)閉的,而使用SYN掃 描顯示有打開的端口,你可以確定目標(biāo)主機(jī)可能運(yùn)行的是Windwos系統(tǒng)。現(xiàn)在這種方式?jīng)]有什么太大的用處,因?yàn)閚map有內(nèi)嵌的操作系統(tǒng)檢測功能。還有 其它幾個(gè)系統(tǒng)使用和windows同樣的處理方式,包括Cisco、BSDI、HP/UX、MYS、IRIX。在應(yīng)該拋棄數(shù)據(jù)包時(shí),以上這些系統(tǒng)都會(huì)從打 開的端口發(fā)出復(fù)位數(shù)據(jù)包。

-sP

ping掃描:有時(shí)你只是想知道此時(shí)網(wǎng)絡(luò)上哪些主機(jī)正在運(yùn)行。通過向你指定的網(wǎng)絡(luò)內(nèi)的每個(gè)IP地 址發(fā)送ICMP echo請(qǐng)求數(shù)據(jù)包,nmap就可以完成這項(xiàng)任務(wù)。如果主機(jī)正在運(yùn)行就會(huì)作出響應(yīng)。不幸的是,一些站點(diǎn)例如:microsoft.com阻塞ICMP echo請(qǐng)求數(shù)據(jù)包。然而,在默認(rèn)的情況下nmap也能夠向80端口發(fā)送TCP ack包,如果你收到一個(gè)RST包,就表示主機(jī)正在運(yùn)行。nmap使用的第三種技術(shù)是:發(fā)送一個(gè)SYN包,然后等待一個(gè)RST或者SYN/ACK包。對(duì)于 非root用戶,nmap使用connect()方法。

在默認(rèn)的情況下(root用戶),nmap并行使用ICMP和ACK技術(shù)。

注意,nmap在任何情況下都會(huì)進(jìn)行ping掃描,只有目標(biāo)主機(jī)處于運(yùn)行狀態(tài),才會(huì)進(jìn)行后續(xù)的掃描。如果你只是想知道目標(biāo)主機(jī)是否運(yùn)行,而不想進(jìn)行其它掃描,才會(huì)用到這個(gè)選項(xiàng)。

-sU

UDP掃描:如果你想知道在某臺(tái)主機(jī)上提供哪些UDP(用戶數(shù)據(jù)報(bào)協(xié)議,RFC768)服務(wù),可以使用這種掃描方法。nmap首先向目標(biāo)主機(jī)的每個(gè)端口發(fā)出一個(gè)0字節(jié)的UDP包,如果我們收到端口不可達(dá)的ICMP消息,端口就是關(guān)閉的,否則我們就假設(shè)它是打開的。

有些人可能會(huì)想U(xiǎn)DP掃描是沒有什么意思的。但是,我經(jīng)常會(huì)想到以前出現(xiàn)的solaris rpcbind缺陷。rpcbind隱藏在一個(gè)未公開的UDP端口上,這個(gè)端口號(hào)大于32770。所以即使端口111(portmap的眾所周知端口號(hào)) 被防火墻阻塞有關(guān)系。但是你能發(fā)現(xiàn)大于30000的哪個(gè)端口上有程序正在監(jiān)聽嗎?使用UDP掃描就能!cDc Back Orifice的后門程序就隱藏在Windows主機(jī)的一個(gè)可配置的UDP端口中。不考慮一些通常的安全缺陷,一些服務(wù)例如:snmp、tftp、NFS 使用UDP協(xié)議。不幸的是,UDP掃描有時(shí)非常緩慢,因?yàn)榇蠖鄶?shù)主機(jī)限制ICMP錯(cuò)誤信息的比例(在RFC1812中的建議)。例如,在Linux內(nèi)核中 (在net/ipv4/icmp.h文件中)限制每4秒鐘只能出現(xiàn)80條目標(biāo)不可達(dá)的ICMP消息,如果超過這個(gè)比例,就會(huì)給1/4秒鐘的處罰。 solaris的限制更加嚴(yán)格,每秒鐘只允許出現(xiàn)大約2條ICMP不可達(dá)消息,這樣,使掃描更加緩慢。nmap會(huì)檢測這個(gè)限制的比例,減緩發(fā)送速度,而不 是發(fā)送大量的將被目標(biāo)主機(jī)丟棄的無用數(shù)據(jù)包。

不過Microsoft忽略了RFC1812的這個(gè)建議,不對(duì)這個(gè)比例做任何的限制。所以我們可以能夠快速掃描運(yùn)行Win95/NT的主機(jī)上的所有65K個(gè)端口。

-sA

ACK掃描:這項(xiàng)高級(jí)的掃描方法通常用來穿過防火墻的規(guī)則集。通常情況下,這有助于確定一個(gè)防火墻是功能比較完善的或者是一個(gè)簡單的包過濾程序,只是阻塞進(jìn)入的SYN包。

這種掃描是向特定的端口發(fā)送ACK包(使用隨機(jī)的應(yīng)答/序列號(hào))。如果返回一個(gè)RST包,這個(gè)端口就標(biāo)記為unfiltered狀態(tài)。如果什么都沒有返 回,或者返回一個(gè)不可達(dá)ICMP消息,這個(gè)端口就歸入filtered類。注意,nmap通常不輸出unfiltered的端口,所以在輸出中通常不顯示 所有被探測的端口。顯然,這種掃描方式不能找出處于打開狀態(tài)的端口。

-sW

對(duì)滑動(dòng)窗口的掃描:這項(xiàng)高級(jí)掃描技術(shù)非常類似于ACK 掃描,除了它有時(shí)可以檢測到處于打開狀態(tài)的端口,因?yàn)榛瑒?dòng)窗口的大小是不規(guī)則的,有些操作系統(tǒng)可以報(bào)告其大小。這些系統(tǒng)至少包括:某些版本的AIX、 Amiga、BeOS、BSDI、Cray、Tru64 UNIX、DG/UX、OpenVMS、Digital UNIX、OpenBSD、OpenStep、QNX、Rhapsody、SunOS 4.x、Ultrix、VAX、VXWORKS。從nmap-hackers郵件3列表的文檔中可以得到完整的列表。

-sR

RPC掃描。這種方法和nmap的其它不同的端口掃描方法結(jié)合使用。選擇所有處于打開狀態(tài)的端口向它們發(fā)出SunRPC程序的NULL命令,以確定它們是 否是RPC端口,如果是,就確定是哪種軟件及其版本號(hào)。因此你能夠獲得防火墻的一些信息。誘餌掃描現(xiàn)在還不能和RPC掃描結(jié)合使用。

-b

FTP反彈攻擊(bounce attack):FTP協(xié)議(RFC 959)有一個(gè)很有意思的特征,它支持代理FTP連接。也就是說,我能夠從evil.com連接到FTP服務(wù)器target.com,并且可以要求這臺(tái) FTP服務(wù)器為自己發(fā)送Internet上任何地方的文件!1985年,RFC959完成時(shí),這個(gè)特征就能很好地工作了。然而,在今天的Internet 中,我們不能讓人們劫持FTP服務(wù)器,讓它向Internet上的任意節(jié)點(diǎn)發(fā)送數(shù)據(jù)。如同Hobbit在1995年寫的文章中所說的,這個(gè)協(xié)議"能夠用來 做投遞虛擬的不可達(dá)郵件和新聞,進(jìn)入各種站點(diǎn)的服務(wù)器,填滿硬盤,跳過防火墻,以及其它的騷擾活動(dòng),而且很難進(jìn)行追蹤"。我們可以使用這個(gè)特征,在一臺(tái)代 理FTP服務(wù)器掃描TCP端口。因此,你需要連接到防火墻后面的一臺(tái)FTP服務(wù)器,接著進(jìn)行端口掃描。如果在這臺(tái)FTP服務(wù)器中有可讀寫的目錄,你還可以 向目標(biāo)端口任意發(fā)送數(shù)據(jù)(不過nmap不能為你做這些)。

傳遞給-b功能選項(xiàng)的參數(shù)是你要作為代理的FTP服務(wù)器。語法格式為:

-b username:password@server:port。

2 通用選項(xiàng)

這些內(nèi)容不是必需的,但是很有用。

-P0

在掃描之前,不必ping主機(jī)。有些網(wǎng)絡(luò)的防火墻不允許ICMP echo請(qǐng)求穿過,使用這個(gè)選項(xiàng)可以對(duì)這些網(wǎng)絡(luò)進(jìn)行掃描。microsoft.com就是一個(gè)例子,因此在掃描這個(gè)站點(diǎn)時(shí),你應(yīng)該一直使用-P0或者-PT 80選項(xiàng)。

-PT

掃描之前,使用TCP ping確定哪些主機(jī)正在運(yùn)行。nmap不是通過發(fā)送ICMP echo請(qǐng)求包然后等待響應(yīng)來實(shí)現(xiàn)這種功能,而是向目標(biāo)網(wǎng)絡(luò)(或者單一主機(jī))發(fā)出TCP ACK包然后等待回應(yīng)。如果主機(jī)正在運(yùn)行就會(huì)返回RST包。只有在目標(biāo)網(wǎng)絡(luò)/主機(jī)阻塞了ping包,而仍舊允許你對(duì)其進(jìn)行掃描時(shí),這個(gè)選項(xiàng)才有效。對(duì)于非 root用戶,我們使用connect()系統(tǒng)調(diào)用來實(shí)現(xiàn)這項(xiàng)功能。使用-PT <端口號(hào)>來設(shè)定目標(biāo)端口。默認(rèn)的端口號(hào)是80,因?yàn)檫@個(gè)端口通常不會(huì)被過濾。

-PS

對(duì)于root用戶,這個(gè)選項(xiàng)讓nmap使用SYN包而不是ACK包來對(duì)目標(biāo)主機(jī)進(jìn)行掃描。如果主機(jī)正在運(yùn)行就返回一個(gè)RST包(或者一個(gè)SYN/ACK包)。

-PI

設(shè)置這個(gè)選項(xiàng),讓nmap使用真正的ping(ICMP echo請(qǐng)求)來掃描目標(biāo)主機(jī)是否正在運(yùn)行。使用這個(gè)選項(xiàng)讓nmap發(fā)現(xiàn)正在運(yùn)行的主機(jī)的同時(shí),nmap也會(huì)對(duì)你的直接子網(wǎng)廣播地址進(jìn)行觀察。直接子網(wǎng)廣 播地址一些外部可達(dá)的IP地址,把外部的包轉(zhuǎn)換為一個(gè)內(nèi)向的IP廣播包,向一個(gè)計(jì)算機(jī)子網(wǎng)發(fā)送。這些IP廣播包應(yīng)該刪除,因?yàn)闀?huì)造成拒絕服務(wù)攻擊(例如 smurf)。

-PB

這是默認(rèn)的ping掃描選項(xiàng)。它使用ACK(-PT)和ICMP(-PI)兩種掃描類型并行掃描。如果防火墻能夠過濾其中一種包,使用這種方法,你就能夠穿過防火墻。

-O

這個(gè)選項(xiàng)激活對(duì)TCP/IP指紋特征(fingerprinting)的掃描,獲得遠(yuǎn)程主機(jī)的標(biāo)志。換句話說,nmap使用一些技術(shù)檢測目標(biāo)主機(jī)操作系 統(tǒng)網(wǎng)絡(luò)協(xié)議棧的特征。nmap使用這些信息建立遠(yuǎn)程主機(jī)的指紋特征,把它和已知的操作系統(tǒng)指紋特征數(shù)據(jù)庫做比較,就可以知道目標(biāo)主機(jī)操作系統(tǒng)的類型。

-I

這個(gè)選項(xiàng)打開nmap的反向標(biāo)志掃描功能。Dave Goldsmith 1996年向bugtap發(fā)出的郵件注意到這個(gè)協(xié)議,ident協(xié)議(rfc 1413)允許使用TCP連接給出任何進(jìn)程擁有者的用戶名,即使這個(gè)進(jìn)程并沒有初始化連接。例如,你可以連接到HTTP端口,接著使用identd確定這 個(gè)服務(wù)器是否由root用戶運(yùn)行。這種掃描只能在同目標(biāo)端口建立完全的TCP連接時(shí)(例如:-sT掃描選項(xiàng))才能成功。使用-I選項(xiàng)是,遠(yuǎn)程主機(jī)的 identd精靈進(jìn)程就會(huì)查詢在每個(gè)打開的端口上監(jiān)聽的進(jìn)程的擁有者。顯然,如果遠(yuǎn)程主機(jī)沒有運(yùn)行identd程序,這種掃描方法無效。

-f

這個(gè)選項(xiàng)使nmap使用碎片IP數(shù)據(jù)包發(fā)送SYN、FIN、XMAS、NULL。使用碎片數(shù)據(jù)包增加包過濾、入侵檢測系統(tǒng)的難度,使其無法知道你的企 圖。不過,要慎重使用這個(gè)選項(xiàng)!有些程序在處理這些碎片包時(shí)會(huì)有麻煩,我最喜歡的嗅探器在接受到碎片包的頭36個(gè)字節(jié)時(shí),就會(huì)發(fā)生 segmentation faulted。因此,在nmap中使用了24個(gè)字節(jié)的碎片數(shù)據(jù)包。雖然包過濾器和防火墻不能防這種方法,但是有很多網(wǎng)絡(luò)出于性能上的考慮,禁止數(shù)據(jù)包的 分片。

注意這個(gè)選項(xiàng)不能在所有的平臺(tái)上使用。它在Linux、FreeBSD、OpenBSD以及其它一些UNIX系統(tǒng)能夠很好工作。

-v

冗余模式。強(qiáng)烈推薦使用這個(gè)選項(xiàng),它會(huì)給出掃描過程中的詳細(xì)信息。使用這個(gè)選項(xiàng),你可以得到事半功倍的效果。使用-d選項(xiàng)可以得到更加詳細(xì)的信息。

-h

快速參考選項(xiàng)。

-oN

把掃描結(jié)果重定向到一個(gè)可讀的文件logfilename中。

-oM

把掃描結(jié)果重定向到logfilename文件中,這個(gè)文件使用主機(jī)可以解析的語法。你可以使用-oM -來代替logfilename,這樣輸出就被重定向到標(biāo)準(zhǔn)輸出stdout。在這種情況下,正常的輸出將被覆蓋,錯(cuò)誤信息荏苒可以輸出到標(biāo)準(zhǔn)錯(cuò)誤 stderr。要注意,如果同時(shí)使用了-v選項(xiàng),在屏幕上會(huì)打印出其它的信息。

-resume

某個(gè)網(wǎng)絡(luò)掃描可能由于control-C或者網(wǎng)絡(luò)損失等原因被中斷,使用這個(gè)選項(xiàng)可以使掃描接著以前的掃描進(jìn)行。logfilename是被取消掃描的 日志文件,它必須是可讀形式或者機(jī)器可以解析的形式。而且接著進(jìn)行的掃描不能增加新的選項(xiàng),只能使用與被中斷的掃描相同的選項(xiàng)。nmap會(huì)接著日志文件中 的最后一次成功掃描進(jìn)行新的掃描。

-iL

從inputfilename文件中讀取掃描的目標(biāo)。在這個(gè)文件中要有一個(gè)主機(jī)或者網(wǎng)絡(luò)的列表,由空格鍵、制表鍵或者回車鍵作為分割符。如果使用-iL -,nmap就會(huì)從標(biāo)準(zhǔn)輸入stdin讀取主機(jī)名字。你可以從指定目標(biāo)一節(jié)得到更加詳細(xì)的信息。

-iR

讓nmap自己隨機(jī)挑選主機(jī)進(jìn)行掃描。

-p <端口范圍>

這個(gè)選項(xiàng)讓你選擇要進(jìn)行掃描的端口號(hào)的范圍。例如,-p 23表示:只掃描目標(biāo)主機(jī)的23號(hào)端口。-p 20-30,139,60000-表示:掃描20到30號(hào)端口,139號(hào)端口以及所有大于60000的端口。在默認(rèn)情況下,nmap掃描從1到1024號(hào) 以及nmap-services文件(如果使用RPM軟件包,一般在/usr/share/nmap/目錄中)中定義的端口列表。

-F

快速掃描模式,只掃描在nmap-services文件中列出的端口。顯然比掃描所有65535個(gè)端口要快。

-D

使用誘餌掃描方法對(duì)目標(biāo)網(wǎng)絡(luò)/主機(jī)進(jìn)行掃描。如果nmap使用這種方法對(duì)目標(biāo)網(wǎng)絡(luò)進(jìn)行掃描,那么從目標(biāo)主機(jī)/網(wǎng)絡(luò)的角度來看,掃描就象從其它主機(jī) (decoy1,等)發(fā)出的。從而,即使目標(biāo)主機(jī)的IDS(入侵檢測系統(tǒng))對(duì)端口掃描發(fā)出報(bào)警,它們也不可能知道哪個(gè)是真正發(fā)起掃描的地址,哪個(gè)是無辜 的。這種掃描方法可以有效地對(duì)付例如路由跟蹤、response-dropping等積極的防御機(jī)制,能夠很好地隱藏你的IP地址。

每個(gè)誘餌 主機(jī)名使用逗號(hào)分割開,你也可以使用ME選項(xiàng),它代表你自己的主機(jī),和誘餌主機(jī)名混雜在一起。如果你把ME放在第六或者更靠后的位置,一些端口掃描檢測軟 件幾乎根本不會(huì)顯示你的IP地址。如果你不使用ME選項(xiàng),nmap會(huì)把你的IP地址隨機(jī)夾雜在誘餌主機(jī)之中。

注意:你用來作為誘餌的主機(jī)應(yīng)該 正在運(yùn)行或者你只是偶爾向目標(biāo)發(fā)送SYN數(shù)據(jù)包。很顯然,如果在網(wǎng)絡(luò)上只有一臺(tái)主機(jī)運(yùn)行,目標(biāo)將很輕松就會(huì)確定是哪臺(tái)主機(jī)進(jìn)行的掃描?;蛟S,你還要直接使 用誘餌的IP地址而不是其域名,這樣誘餌網(wǎng)絡(luò)的域名服務(wù)器的日志上就不會(huì)留下關(guān)于你的記錄。

還要注意:一些愚蠢的端口掃描檢測軟件會(huì)拒絕路由試圖進(jìn)行端口掃描的主機(jī)。因而,你需要讓目標(biāo)主機(jī)和一些誘餌斷開連接。如果誘餌是目標(biāo)主機(jī)的網(wǎng)關(guān)或者就是其自己時(shí),會(huì)給目標(biāo)主機(jī)造成很大問題。所以你需要慎重使用這個(gè)選項(xiàng)。

誘餌掃描既可以在起始的ping掃描也可以在真正的掃描狀態(tài)下使用。它也可以和-O選項(xiàng)組合使用。

使用太多的誘餌掃描能夠減緩你的掃描速度甚至可能造成掃描結(jié)果不正確。同時(shí),有些ISP會(huì)把你的欺騙包過濾掉。雖然現(xiàn)在大多數(shù)的ISP不會(huì)對(duì)此進(jìn)行限制。

-S

在一些情況下,nmap可能無法確定你的源地址(nmap會(huì)告訴你)。在這種情況下,可以使用這個(gè)選項(xiàng)給出你的IP地址。

在欺騙掃描時(shí),也使用這個(gè)選項(xiàng)。使用這個(gè)選項(xiàng)可以讓目標(biāo)認(rèn)為是其它的主機(jī)對(duì)自己進(jìn)行掃描。

-e

告訴nmap使用哪個(gè)接口發(fā)送和接受數(shù)據(jù)包。nmap能夠自動(dòng)對(duì)此接口進(jìn)行檢測,如果無效就會(huì)告訴你。

-g

設(shè)置掃描的源端口。一些天真的防火墻和包過濾器的規(guī)則集允許源端口為DNS(53)或者FTP-DATA(20)的包通過和實(shí)現(xiàn)連接。顯然,如果攻擊者 把源端口修改為20或者53,就可以摧毀防火墻的防護(hù)。在使用UDP掃描時(shí),先使用53號(hào)端口;使用TCP掃描時(shí),先使用20號(hào)端口。注意只有在能夠使用 這個(gè)端口進(jìn)行掃描時(shí),nmap才會(huì)使用這個(gè)端口。例如,如果你無法進(jìn)行TCP掃描,nmap會(huì)自動(dòng)改變源端口,即使你使用了-g選項(xiàng)。

對(duì)于一些掃描,使用這個(gè)選項(xiàng)會(huì)造成性能上的微小損失,因?yàn)槲矣袝r(shí)會(huì)保存關(guān)于特定源端口的一些有用的信息。

-r

告訴nmap不要打亂被掃描端口的順序。

--randomize_hosts

使nmap在掃描之前,打亂每組掃描中的主機(jī)順序,nmap每組可以掃描最多2048臺(tái)主機(jī)。這樣,可以使掃描更不容易被網(wǎng)絡(luò)監(jiān)視器發(fā)現(xiàn),尤其和--scan_delay 選項(xiàng)組合使用,更能有效避免被發(fā)現(xiàn)。

-M

設(shè)置進(jìn)行TCP connect()掃描時(shí),最多使用多少個(gè)套接字進(jìn)行并行的掃描。使用這個(gè)選項(xiàng)可以降低掃描速度,避免遠(yuǎn)程目標(biāo)宕機(jī)。
#p#3 適時(shí)選項(xiàng)

通常,nmap在運(yùn)行時(shí),能夠很好地根據(jù)網(wǎng)絡(luò)特點(diǎn)進(jìn)行調(diào)整。掃描時(shí),nmap會(huì)盡量減少被目標(biāo)檢測到的機(jī)會(huì),同時(shí)盡可能加快掃描速度。然而,nmap默認(rèn)的適時(shí)策略有時(shí)候不太適合你的目標(biāo)。使用下面這些選項(xiàng),可以控制nmap的掃描timing:

-T

設(shè)置nmap的適時(shí)策略。Paranoid:為了避開IDS的檢測使掃 描速度極慢,nmap串行所有的掃描,每隔至少5分鐘發(fā)送一個(gè)包; Sneaky:也差不多,只是數(shù)據(jù)包的發(fā)送間隔是15秒;Polite:不增加太大的網(wǎng)絡(luò)負(fù)載,避免宕掉目標(biāo)主機(jī),串行每個(gè)探測,并且使每個(gè)探測有0.4 秒種的間隔;Normal:nmap默認(rèn)的選項(xiàng),在不是網(wǎng)絡(luò)過載或者主機(jī)/端口丟失的情況下盡可能快速地掃描;Aggressive:設(shè)置5分鐘的超時(shí)限 制,使對(duì)每臺(tái)主機(jī)的掃描時(shí)間不超過5分鐘,并且使對(duì)每次探測回應(yīng)的等待時(shí)間不超過1.5秒鐘;b>Insane:只適合快速的網(wǎng)絡(luò)或者你不在意丟失 某些信息,每臺(tái)主機(jī)的超時(shí)限制是75秒,對(duì)每次探測只等待0.3秒鐘。你也可是使用數(shù)字來代替這些模式,例如:-T 0等于-T Paranoid,-T 5等于-T Insane。

這些適時(shí)模式不能下面的適時(shí)選項(xiàng)組合使用。

--host_timeout

設(shè)置掃描一臺(tái)主機(jī)的時(shí)間,以毫秒為單位。默認(rèn)的情況下,沒有超時(shí)限制。

--max_rtt_timeout

設(shè)置對(duì)每次探測的等待時(shí)間,以毫秒為單位。如果超過這個(gè)時(shí)間限制就重傳或者超時(shí)。默認(rèn)值是大約9000毫秒。

--min_rtt_timeout

當(dāng)目標(biāo)主機(jī)的響應(yīng)很快時(shí),nmap就縮短每次探測的超時(shí)時(shí)間。這樣會(huì)提高掃描的速度,但是可能丟失某些響應(yīng)時(shí)間比較長的包。使用這個(gè)選項(xiàng),可以讓nmap對(duì)每次探測至少等待你指定的時(shí)間,以毫秒為單位。

--initial_rtt_timeout

設(shè)置初始探測的超時(shí)值。一般這個(gè)選項(xiàng)只在使用-P0選項(xiàng)掃描有防火墻保護(hù)的主機(jī)才有用。默認(rèn)值是6000毫秒。

--max_parallelism

設(shè)置最大的并行掃描數(shù)量。--max_parallelism 1表示同時(shí)只掃描一個(gè)端口。這個(gè)選項(xiàng)對(duì)其它的并行掃描也有效,例如ping sweep, RPC scan。

--scan_delay

設(shè)置在兩次探測之間,nmap必須等待的時(shí)間。這個(gè)選項(xiàng)主要用于降低網(wǎng)絡(luò)的負(fù)載。

4.目標(biāo)設(shè)定

在nmap的所有參數(shù)中,只有目標(biāo)參數(shù)是必須給出的。其最簡單的形式是在命令行直接輸入一個(gè)主機(jī)名或者一個(gè)IP地址。如果你希望掃描某個(gè)IP地址的一個(gè)子網(wǎng),你可以在主機(jī)名或者IP地址的后面加上/掩碼。掩碼在0(掃描整個(gè)網(wǎng)絡(luò))到 32(只掃描這個(gè)主機(jī))。使用/24掃描C類地址,/16掃描B類地址。

除此之外,nmap還有更加強(qiáng)大的表示方式讓你更加靈活地指定IP地址。例如,如果 要掃描這個(gè)B類網(wǎng)絡(luò)128.210.*.*,你可以使用下面三種方式來指定這些地址:128.210.*.*、128.21-.0-255.0-255或 者128.210.0.0/16這三種形式是等價(jià)的。

(五)掃描實(shí)例

1.掃描主機(jī)端口。

使用“nmap -v xxx.com”掃描主機(jī)XXX.com的所有TCP端口。-v打開冗余模式。如圖6所示。

  1

  圖6 掃描XXX站點(diǎn)TCP開放狀況

2.掃描主機(jī)XXX.com的所有TCP端口

使用“nmap -v -A xxx.com” 命令掃描目標(biāo)的操作系統(tǒng)、開放端口以及路由等相關(guān)信息,如圖7所示。

  1

  圖7顯示掃描目標(biāo)的操作系統(tǒng)的開放端口以及路由等相關(guān)信息

3.掃描指定網(wǎng)段制定端口

使用“nmap -sX -p 22,53,80, 192.168.*.1-255”命令 掃描192.168網(wǎng)段是否開啟了22.53,80端口如圖7所示。

  1

  圖7掃描特定網(wǎng)段的制定端口開放情況

工具無所謂好壞,這正如刀無所謂善惡.而在于人,這也正是我寫這篇文章的初衷,只是簡單的介紹了一下nmap這個(gè)掃描工具的一些功能,然用它來干什么完全在乎于你!

【編輯推薦】

  1. Linux下查看用戶登陸后的操作記錄
  2. 專家指導(dǎo):Linux操作系統(tǒng)密碼恢復(fù)方法
  3. Linux系統(tǒng)下手動(dòng)分析病毒樣本技巧
責(zé)任編輯:趙寧寧 來源: 比特網(wǎng)
相關(guān)推薦

2011-03-24 11:08:37

2018-11-12 08:04:15

2011-06-14 14:32:46

性能優(yōu)化

2009-12-24 11:13:21

2025-04-10 09:00:00

開源網(wǎng)絡(luò)安全安全工具

2010-06-04 09:29:55

安裝Hadoop教程

2015-08-21 09:07:52

LinuxNMAP安全

2020-07-07 11:01:04

Linux工具命令

2009-03-25 17:10:50

Linux視頻轉(zhuǎn)換

2011-06-14 13:48:07

性能優(yōu)化工具

2010-07-27 10:56:22

2014-05-15 10:07:29

2019-11-26 14:52:40

Linux工具寫作者

2014-08-14 15:38:33

linux集群

2012-12-10 11:02:46

2018-11-30 09:18:36

2010-02-01 14:28:50

黑客產(chǎn)業(yè)鏈

2013-04-07 09:53:24

Windows系統(tǒng)優(yōu)化

2019-11-22 10:10:46

IT工具技術(shù)

2010-12-02 14:29:07

nmap
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)