亚洲日本免费-啊轻点灬太粗太长了三男一女-麻豆av电影在线观看-日韩一级片毛片|www.grbbt.com

Nmap高級用法與典型場景

  Nmap高級用法與典型場景目錄:

  Nmap高級選項

  查看本地路由與接口

  指定網口與IP地址

  定制探測包

  掃描防火墻

  掃描路由器

  掃描思科路由器

  掃描路由器TFTP

  掃描路由器操作系統

  掃描互聯網

  發現互聯網上web服務器

  統計互聯網主機基本數據

  掃描Web站點

  Nmap提供了四項基本功能(主機發現、端口掃描、服務與版本偵測、OS偵測)及豐富的腳本庫。Nmap既能應用于簡單的網絡信息掃描,也能用在高級、復雜、特定的環境中:例如掃描互聯網上大量的主機;繞開防火墻/IDS/IPS;掃描Web站點;掃描路由器等等。

  簡要回顧Nmap簡單的掃描方式:

  全面掃描:nmap-T4 -A targetip

  主機發現:nmap-T4 -sn targetip

  端口掃描:nmap-T4 targetip

  服務掃描:nmap-T4 -sV targetip

  操作系統掃描:nmap-T4 -O targetip

  上述的掃描方式能滿足一般的信息搜集需求。而若想利用Nmap探索出特定的場景中更詳細的信息,則需仔細地設計Nmap命令行參數,以便精確地控制Nmap的掃描行為。

  下面列舉比較實用的高級應用場景和技巧。

  1     Nmap高級選項

  1.1  查看本地路由與接口

  Nmap中提供了–iflist選項來查看本地主機的接口信息與路由信息。當遇到無法達到目標主機或想選擇從多塊網卡中某一特定網卡訪問目標主機時,可以查看nmap –iflist中提供的網絡接口信息。

  nmap –iflist

Nmap高級用法與典型場景

 

  1.2  指定網口與IP地址

  在Nmap可指定用哪個網口發送數據,-e 選項。接口的詳細信息可以參考–iflist選項輸出結果。

  示例:

  nmap -e eth0 targetip

  Nmap也可以顯式地指定發送的源端IP地址。使用-S 選項,nmap將用指定的spoofip作為源端IP來發送探測包。

  另外可以使用Decoy(誘騙)方式來掩蓋真實的掃描地址,例如-D ip1,ip2,ip3,ip4,ME,這樣就會產生多個虛假的ip同時對目標機進行探測,其中ME代表本機的真實地址,這樣對方的防火墻不容易識別出是掃描者的身份。

  nmap -T4 -F -n -Pn -D192.168.1.100,192.168.1.101,192.168.1.102,ME 192.168.1.1

  1.3  定制探測包

  Nmap提供–scanflags選項,用戶可以對需要發送的TCP探測包的標志位進行完全的控制。可以使用數字或符號指定TCP標志位:URG, ACK, PSH,RST, SYN,and FIN。

  例如,

  nmap -sX -T4 –scanflags URGACKPSHRSTSYNFINtargetip

  此命令設置全部的TCP標志位為1,可以用于某些特殊場景的探測。

  另外使用–ip-options可以定制IP包的options字段。

  使用-S指定虛假的IP地址,-D指定一組誘騙IP地址(ME代表真實地址)。-e指定發送探測包的網絡接口,-g(–source-port)指定源端口,-f指定使用IP分片方式發送探測包,–spoof-mac指定使用欺騙的MAC地址。–ttl指定生存時間。

  2     掃描防火墻

  防火墻在今天網絡安全中扮演著重要的角色,如果能對防火墻系統進行詳細的探測,那么繞開防火墻或滲透防火墻就更加容易。所以,此處講解利用Nmap獲取防火墻基本信息典型的用法。

  為了獲取防火墻全面的信息,需盡可能多地結合不同掃描方式來探測其狀態。在設計命令行參數時,可以綜合網絡環境來微調時序參數,以便加快掃描速度。

  SYN掃描

  首先可以利用基本的SYN掃描方式探測其端口開放狀態。

  nmap -sS -T4 www.2cto.com

  掃描輸出為:

  All 997 ports are filtered

  PORT    STATE  SERVICE

  80/tcp  open   http

  113/tcp closed auth

  507/tcp open   crs

  我們可以看到SYN方式探測到3個端口開放,而有997個端口被過濾。Nmap默認掃描只掃描1000個最可能開放的端口,如果想掃描全部的端口,使用命令nmap -sS -T4-p- www.fakefirewall.com

  FIN掃描

  然后可以利用FIN掃描方式探測防火墻狀態。FIN掃描方式用于識別端口是否關閉,收到RST回復說明該端口關閉,否則說明是open或filtered狀態。

  nmap -sF -T4 www.fakefirewall.com

  掃描輸出為:

  PORT      STATE         SERVICE

  7/tcp     open|filtered echo

  9/tcp     open|filtered discard

  11/tcp    open|filtered systat

  13/tcp    open|filtered daytime

  23/tcp    open|filtered telnet

  25/tcp    open|filtered smtp

  37/tcp    open|filtered time

  79/tcp    open|filtered finger

  80/tcp    open|filtered http

  更多端口,此處省略

  ACK掃描

  然后利用ACK掃描判斷端口是否被過濾。針對ACK探測包,未被過濾的端口(無論打開、關閉)會回復RST包。

  nmap -sA -T4 www.fakefirewall.com

  Not shown: 997 unfiltered ports

  PORT      STATE    SERVICE

  135/tcp   filtered msrpc

  1434/tcp  filtered ms-sql-m

  32777/tcp filtered sometimes-rpc17

  從結果可以997個端口是未被過濾的(unfiltered),而3個(135/1434/32777)被過濾了。所以,將ACK與FIN掃描的結果結合分析,我們可以找到很多開放的端口。例如7號端口,FIN中得出的狀態是:open或filtered,從ACK中得出的狀態是unfiltered,那么該端口只能是open的。

  Window掃描

  當然也可以利用Window掃描方式,得出一些端口信息,可以與之前掃描分析的結果相互補充。Window掃描方式只對某些TCPIP協議棧才有效。

  window掃描原理與ACK類似,發送ACK包探測目標端口,對回復的RST包中的Window size進行解析。在某些TCPIP協議棧實現中,關閉的端口在RST中會將Window size設置為0;而開放的端口將Window size設置成非0的值。

  nmap -sW -p- -T4 docsrv.caldera.com

  輸出結果:

  PORT      STATE    SERVICE

  7/tcp     open     echo

  9/tcp     open     discard

  11/tcp    open     systat

  13/tcp    open     daytime

  更多端口,此處省略

  在采用多種方式獲取出防火墻狀態后,可以進一步進行應用程序與版本偵測及OS偵測。

  此處不再贅述!

  3     掃描路由器

  Nmap內部維護了一份系統與設備的數據庫(nmap-os-db),能夠識別數千種不同系統與設備。所以,可以用來掃描主流的路由器設備。

  3.1  掃描思科路由器

  nmap -p1-25,80,512-515,2001,4001,6001,9001 10.20.0.1/16

  思科路由器會在上述端口中運行了常見的服務。列舉出上述端口開放的主機,可以定位到路由器設備可能的IP地址及端口狀態。

  3.2  掃描路由器TFTP

  nmap –sU –p69 –nvv target

  大多數的路由器都支持TFTP協議(簡單文件傳輸協議),該協議常用于備份和恢復路由器的配置文件,運行在UDP 69端口上。使用上述命令可以探測出路由器是否開放TFTP。

  3.3  掃描路由器操作系統

  與通用PC掃描方式類似,使用-O選項掃描路由器的操作系統。-F用于快速掃描最可能開放的100個端口,并根據端口掃描結果進一步做OS的指紋分析。

  nmap -O -F -n 192.168.1.1

Nmap高級用法與典型場景

 

  4     掃描互聯網

  Nmap內部的設計非常強大靈活,既能掃描單個主機、小型的局域網,也可以掃描成千上萬臺主機從中發掘用戶關注的信息。掃描大量主機,需要對掃描時序等參數進行仔細的優化。

  4.1  發現互聯網上web服務器

  nmap -iR 100000 -sS -PS80 -p 80 -oG nmap.txt

  隨機地產生10萬個IP地址,對其80端口進行掃描。將掃描結果以greppable(可用grep命令提取)格式輸出到nmap.txt文件。

  可以使用grep命令從輸出文件提取關心的細節信息。

  4.2  統計互聯網主機基本數據

  Nmap的創始人Fyodor在2008年的Black Hat大會發表一篇演講,講的是如何使用Nmap來掃描互聯網(Nmap: Scanning the Internet),資料地址:http://nmap.org/presentations/BHDC08/。

  Fyodor進行互聯網掃描的初衷是統計出網絡經驗數據并用之優化Nmap的性能。例如,根據統計出每個端口開放的概率,優先掃描常見端口,以節省用戶的時間。

  產生隨機IP地址

  產生100萬個隨機的IP地址,并將之保存到文件中,方便后續掃描時作為參數輸入。

  nmap -iR 1200000 -sL -n | grep "not scanned" | awk '{print $2}' | sort -n | uniq >! tp; head -25000000 tp >! tcp-allports-1M-IPs; rm tp

  上述命令含義:隨機生成1200000個IP地址(-iR 120000),并進行列表掃描(-sL,列舉出IP地址,不進行真正的掃描),不進行dns解析操作(-n),這樣將產生Nmap列表掃描的結果。在此結果中搜出未掃描的行(grep “not scanned”),打印出每一行的第二列內容(awk ‘{print $2}’,也就是IP地址),然后對獲取到的IP地址進行排序(sort -n),然后剔除重復IP地址,將結果保存到臨時文件tp,再取出前1000000個IP地址保存到tcp-allports-1M-IPs文件中,刪除臨時文件。 www.2cto.com

  總之,此處產生了1000000個隨機IP地址存放在tcp-allports-1M-IPs文件中。

  優化主機發現

  nmap -sP -PE -PP -PS21,22,23,25,80,113,31339-PA80,113,443,10042 –source-port 53 -T4 -iL tcp-allports-1M-IPs

  上述命令進行主機發現:使用產生的IP地址(-iL tcp-allports-1M-IPs),指定發送包的源端口為53(–source-port 53,該端口是DNS查詢端口,一般的防火墻都允許來自此端口的數據包),時序級別為4(-T4,探測速度比較快),以TCP SYN包方式探測目標機的21,22,23,25,80,113,31339端口,以TCP ACK包方式探測對方80,113,443,10042端口,另外也發送ICMP ECHO/ICMP TIMESTAMP包探測對方主機。只要上述的探測包中得到一個回復,就可以證明目標主機在線。

  完整的掃描命令

  在準備了必要的IP地址文件,并對主機發現參數優化后,我們就得到最終的掃描命令:

  nmap -S [srcip] -d –max-scan-delay 10 -oAlogs/tcp-allports-%T-%D -iL tcp-allports-1M-IPs –max-retries 1–randomize-hosts -p- -PS21,22,23,25,53,80,443 -T4 –min-hostgroup 256 –min-rate175 –max-rate 300

  上述命令用于掃描互聯網上100萬臺主機全部的TCP端口的開放情況。

  使用包含100萬個IP地址的文件(-iL tcp-allports-1M-IPs),源端IP地址設置為srcip(指定一個IP地址,保證該IP地址位于統一局域網中,否則無法收到目標機的回復包),主機發現過程使用TCP SYN包探測目標機的21,22,23,25,53,80,443,掃描過程將隨機打亂主機順序(–randomize-hosts,因為文件中的IP已經排序,這里將之打亂,避免被防火墻檢查出),端口掃描過程檢查全部的TCP端口(-p-,端口1到65535),使用時序級別為4(-T4,速度比較快),將結果以XML/grepable/普通格式輸出到文件中(-oA logs/tcp-allports-%T-%D,其中%T表示掃描時間,%D表示掃描日期)。

  -d表示打印調試出信息。

  –max-scan-delay 10表示發包最多延時10秒,防止特殊情景下等待過長的時間。

  –max-retries 1,表示端口掃描探測包最多被重傳一次,防止Nmap在沒有收到回復的情況下多次重傳探測包,當然這樣也會降低探測的準確性。

  –min-host-group 256表示進行端口掃描與版本偵測時,同時進行探測的主機的數量,這里至少256個主機一組來進行掃描,可以加快掃描速度。

  –min-rate 175和–max-rate 300,表示發包速率介于175和300之間,保證掃描速度不會太慢,也不會因為速率過高引起目標機的警覺。

  掃描結果

  Fyodor組織的此次掃描得出很多重要結論,統計出了互聯網最有可能開放的10個TCP端口。

  80 (http)

  23 (telnet)

  22 (ssh)

  443 (https)

  3389 (ms-term-serv)

  445 (microsoft-ds)

  139 (netbios-ssn)

  21 (ftp)

  135 (msrpc)

  25 (smtp)

  最有可能開放的10個UDP端口。

  137 (netbios-ns)

  161 (snmp)

  1434 (ms-sql-m)

  123 (ntp)

  138 (netbios-dgm)

  445 (microsoft-ds)

  135 (msrpc)

  67 (dhcps)

  139 (netbios-ssn)

  53 (domain)

  5  掃描Web站點

  Web是互聯網上最廣泛的應用,而且越來越多的服務傾向于以Web形式提供出來,所以對Web安全監管也越來越重要。目前安全領域有很多專門的Web掃描軟件(如AppScan、WebInspect、W3AF),能夠提供端口掃描、漏洞掃描、漏洞利用、分析報表等諸多功能。而Nmap作為一款開源的端口掃描器,對Web掃描方面支持也越來越強大,可以完成Web基本的信息探測:服務器版本、支持的Method、是否包含典型漏洞。功能已經遠遠超過同領域的其他開源軟件,如HTTPrint、Httsquash。

  目前Nmap中對Web的支持主要通過Lua腳本來實現,NSE腳本庫中共有50多個HTTP相關的腳本。

  掃描實例:

  nmap -sV -p 80 -T4 –script http*,defaultscanme.nmap.org

Nmap高級用法與典型場景

  上面以掃描scanme.nmap.org的Web應用展示Nmap提供Web掃描能力,從圖中可以看到掃描結果中提供了比較豐富的信息。

  首先是應用程序及版本:Apachehttpd 2.2.14 ((Ubuntu))

  然后搜出了該站點的affiliate-id:該ID可用于識別同一擁有者的不同頁面。

  然后輸出HTTP-headers信息,從中查看到基本配置信息。

  從http-title中,可以看到網頁標題。某些網頁標題可能會泄漏重要信息,所以這里也應對其檢查。

    文章來源:http://2042617.blog.51cto.com/2032617/1602640

上一篇:安卓防火墻 PS DroidWall

下一篇:ASA 5520 ASDM 配置