Ettercap使用記錄之二


0x02  Ettercap概述

 

  Ettercap支持四種界面模式,分別是:Text、Curses、GTK2 、Daemonize。

  顧名思義,Text界面相當於我們常說的命令行,換句話說完全可以在字符界面下操作Ettercap,這一點對於滲透測試人員來說極為重要,也非常適用。事實上在很多環境中,很多情況下,通過各種手段和技巧你能得到的僅有的一個shell往往至關重要,你沒有選擇的余地所以只能利用有限的資源去做盡可能多的事,自然不可能去挑剔環境是否允許你有GUI,Ettercap的強大與靈活性就能體現在此。類似的如Arpsniffer也同樣精簡適用,不過,Ettercap的強大也許是前者望塵莫及的。很重要的一點是,基於Arp欺騙的sniffing不需要把執行Ettercap的主機的網卡設置為全收方式,並且支持后台執行。

  在Text模式下,Ettercap啟動參數為-T,通常與之配套的參數有-q代表安靜模式,表示不會顯示抓到數據包的內容。

  Curses和GTK2是圖形化界面,帶有GUI。

  Daemonize也叫做守護模式,可以理解為在后台運行。

http://bnhack.files.wordpress.com/2011/07/etter1.png
  可以將Ettercap的運行方式歸納為UNIFIED和BRIDGED兩種。

  1)UNIFIED的方式是以中間人方式嗅探;

  2)BRIDGED方式是在雙網卡情況下,嗅探兩塊網卡之間的數據包。

  UNIFIED方式的大致原理為同時欺騙A和B,將本要發給對方的數據包發送到第三者C上,然后由C再轉發給目標,C充當了一個中間人的角色。因為數據包會通過C那里,所以C可以對數據包進行分析處理,導致了原本只屬於A和B的信息泄露給了C。UNIFIED方式將完成以上欺騙並對數據包分析。Ettercap劫持的是A和B之間的通信,在Ettercap看來,A和B的關系是對等的。

  如前所述,BRIDGED方式是在雙網卡情況下,嗅探兩網卡設備之間的數據包。在實際應用中不常用,我們最為常用的就是UNIFIED方式,UNIFIED方式的運行參數為-M(M是MITM的首字母,即為中間人攻擊的縮寫)。

 

  對於Ettercap的sniffing工作方式,可以划分為五種:

  1)IPBASED:在基於IP地址的sniffing方式下,Ettercap將根據源IP-PORT和目的IP-PORT來捕獲數據包;

  2)MACBASED:在基於MAC地址的方式下,Ettercap將根據源MAC和目的MAC來捕獲數據包(在捕獲通過網關的數據包時,這種方式很有用);

  3)ARPBASED:在基於Arp欺騙的方式下,Ettercap利用Arp欺騙在交換局域網內監聽兩個主機之間的通信(全雙工);

  4)SMARTARP:在SMARTARP方式下,Ettercap利用Arp欺騙,監聽交換網上某台主機與所有已知的其他主機(存在於主機表中的主機)之間的通信(全雙工);

  5)PUBLICARP:在PUBLICARP 方式下,Ettercap利用Arp欺騙,監聽交換網上某台主機與所有其它主機之間的通信(半雙工)。此方式以廣播方式發送Arp響應,但是如果 Ettercap已經擁有了完整的主機地址表(或在Ettercap啟動時已經對LAN上的主機進行了掃描),Ettercap會自動選取 SMARTARP方式,而且Arp響應會發送給被監聽主機之外的所有主機,以避免在Windows主機上出現IP地址沖突的消息。

 

0x03  Ettercap基礎

 

  根據官方的說明文檔翻譯,可以知道Ettercap的常用功能:

  1)在已有連接中注入數據:你可以在維持原有連接不變的基礎上向服務器或客戶端注入數據,以達到模擬命令或響應的目的。

  2)SSH1支持:你可以捕獲SSH1連接上的User和Pass信息,甚至其他數據。Ettercap是第一個在全雙工的條件下監聽SSH連接的軟件。

  3)HTTPS支持:你可以監聽http SSL連接上加密數據,甚至通過Proxy的連接。

  4)監聽通過GRE通道的遠程通信:你可以通過監聽來自遠程cisco路由器的GRE通道的數據流,並對它進行中間人攻擊。

  5)Plug-in支持:你可以通過Ettercap的API創建自己的Plug-in。

  6)口令收集:你可以收集以下協議的口令信息,TELNET、FTP、POP、RLOGIN、SSH1、ICQ、SMB、MySQL、HTTP、 NNTP、 X11、NAPSTER、IRC、RIP、BGP、SOCK5、IMAP4、VNC、LDAP、NFS、SNMP、HALFLIFE、QUAKE3、 MSNYMSG(不久還會有新的協議獲得支持)。

  7)數據包過濾和丟棄:你可以建立一個查找特定字符串(甚至包括十六近制數)的過濾鏈,根據這個過濾鏈對TCP/UDP數據包進行過濾並用自己的數據替換這些數據包,或丟棄整個數據包。

  8)被動的OS指紋提取:你可以被動地(不必主動發送數據包)獲取局域網上計算機系統的詳細信息,包括操作系統版本、運行的服務、打開的端口、IP地址、MAC地址和網卡的生產廠家等信息。

  9)OS指紋:你可以提取被控主機的OS指紋以及它的網卡信息(利用NMAP Fyodor數據庫)。

  10)殺死一個連接:殺死當前連接表中的連接,甚至所有連接。

  11)數據包生產:你可以創建和發送偽造的數據包。允許你偽造從以太報頭到應用層的所有信息。

  12)把捕獲的數據流綁定到一個本地端口:可以通過一個客戶端軟件連接到該端口上,進行進一步的協議解碼或向其中注入數據(僅適用於基於 ARP的方式)。

 

  對於Ettercap的常用操作,在目標選擇時,Ettercap的目標表達形式為MAC/IPs/PORTs。依照這個規則,可以精確到特定的目標主機和端口上。MAC、IP、和PORT為三個條件,為空代表ANY,即所有。Ettercap針對三個條件同時成立的目標進行嗅探。例如,"//80"即表示對任意MAC、任意IP上的80端口進行嗅探。一般來說,MAC部分我們可以留空,因此,可以只用IP部分來確定目標主機。

  當目標IP有多個時,可用“,”來分隔不同的C段ip,可以用“-”表示連續的ip,可以用“;”分隔不同表達形式的ip。例如:"10.0.0.1-5;10.0.1.33" 表示 ip 10.0.0.1,2,3,4,5和10.0.1.33。端口也可有類似的寫法:"20-25,80,110" 表示 20,21,22,23,24,25,80和110。

在操作Ettercap時,當我們指定了常用的-M參數,即選擇了中間人攻擊模式時,我們可以有以下幾種攻擊方式:

  1)基於Arp毒化的中間人攻擊:Arp毒化的原理可簡單理解為偽造MAC地址與IP的對應關系,導致數據包由中間人截取再轉手發出。Arp毒化有雙向(remote)和單向(oneway)兩種方式。雙向方式將對兩個目標的Arp緩存都進行毒化,對兩者之間的通信進行監聽。而單向方式只會監聽從第一個目標到第二個目標的單向通信內容。一般會選擇使用雙向欺騙的方式來獲取所有的數據包進行嗅探分析。

  如:#Ettercap -M arp:remote /192.168.0.2/ // 表示對192.168.0.2的所有端口的通信進行嗅探,包括其發出的數據包和收到的數據包。

  當然,有時目標主機可能開啟了Arp防火牆,進行直接欺騙會引發報警並且無效果,此時就可應用到單向Arp毒化。只要路由器沒有對IP和MAC進行綁定,我們就可以選擇只欺騙路由器,使從路由器發給目標主機的數據包經過中間人,來達成攻擊。

  2)icmp欺騙:icmp欺騙即基於重定向(redirect)的路由欺騙技術。其基本原理是欺騙其他的主機,將自身偽裝為最近的路由,因此其他主機會將數據包發送進來,然后作為中間人的攻擊者再重新將其轉發到真正的路由器上。於是我們便可以對這些數據包進行監聽。當然,icmp欺騙不適用於交換機的環境,若本機在交換機的環境下則最好選擇arp毒化的方式來進行攻擊。icmp欺騙方式的參數是真實路由器的MAC和IP,參數形式為(MAC/IP)。

  如:#Ettercap -M icmp:00:11:22:33:44:55/192.168.0.1

  3)DHCP spoofing:DHCP欺騙的原理是將攻擊者的本機偽裝成DHCP服務器,代替真實的DHCP服務器給新接入網絡的受害主機動態分配IP。這樣的缺點是可能會與真實的DHCP服務器重復分配IP造成沖突,而且只能針對新接入網段的主機,難以影響到之前的主機。DHCP spoofing方式的參數是可以分配出去的IP地址池、子網掩碼和DNS,參數形式為(ip_pool/netmask/dns)。如:#Ettercap -M dhcp:192.168.0.30,35,50-60/255.255.255.0/192.168.0.1
對應的含義是:將分配192.168.0.30,35,50-60之中的地址,子網掩碼為255.255.255.0,DNS服務器為192.168.0.1。

  4)Port Stealing:此攻擊方式適用的環境為交換機下,且路由器中IP和MAC綁定,造成無法進行Arp欺騙。其基本思想是,既然無法欺騙路由器的IP和MAC對應關系,那么就欺騙交換機,使原本應該通過交換機端口到達目標主機的數據包被傳入了攻擊者的端口。
需要指出的是,由於這個方法只用於交換機環境,且會產生大量的數據包,可能會嚴重影響網絡狀況。

 

  在Ettercap使用中,還存在關於交互模式的問題,如果啟動Ettercap的時候沒有指定參數-N選項,那么就默認自動選擇了交互模式。如果在某些情況下不知到可以做什么,只要鍵入‘H’就可以彈出幫助畫面,可看到可執行命令的消息列表。

  另外,該指出的是,Ettercap並不轉發數據包,轉發數據包的是操作系統,因此,在中間人攻擊時需要啟用操作系統的數據包轉發功能。當然,如果只想用Ettercap做一個中間人而用其他工具來嗅探數據的話,可以加入參數-o (only-mitm)實現。

 

0x04  Ettercap參數及常用操作

 

-I  顯示可用網卡接口設備
-i  選擇接口
-t  協議選擇,tcp/udp/all,默認為all
-p  不進行毒化攻擊,用於嗅探本地數據包
-F  載入過濾器文件
-V  text 將數據包以文本形式顯示在屏幕上
-L  filename 把所有的數據包保存下來(保存后的文件只能用etterlog顯示)

-a,–arpsniff  基於ARP的sniffing

指定監聽交換網的方式,如果你想要采用中間人技術進行攻擊,必須選用這個選項。如果這個參數與靜音方式(-z選項)連用,你必須為ARPBASED方式指 定兩對IP-MAC地址(全雙工),或者為PUBLICARP方式指定一個IP-MAC地址(半雙工)。在PUBLICARP方式下,ARP響應是以廣播 方式發送的,但是,如果Ettercap擁有了完整的主機表(在啟動時對局域網進行了掃描),Etercap會自動選擇SMARTARP方式,ARP響應 會發送給處被控主機以外的所有主機,並建立一個哈希表,以便以后在全雙工條件下的中間人攻擊中可以將數據包從監聽主機發送給以這種方式截獲的客戶。
注釋:如果你采用 SMARTARP方式的Arp欺騙,要在配置文件中設置網關的IP地址(GWIP選項),並通過-e選項加載這個文件。否則這個客戶將無法連接到遠程主 機。需要進行包替換或包丟棄的數據包過濾功能僅僅可以在ARPBASED方式下使用,因為為了保持連接必須調整數據包的TCP序列號。

-s  sniff,基於IP的監聽

這是最早的監聽方式。它適用與HUB環境,但是在交換網下就沒有作用了。你可以僅僅指定源或目的IP地址,可以指定也可以不指定端口,或者干脆什么也不指定,這樣意味着監聽網上的所有主機。可以用“ANY”來表示IP地址,它的意思是來自或去往每一個主機。

-m  macsniff,基於MAC的監聽

適用於監聽遠程的TCP通信。在HUB環境下,如果你想要監聽通過網關的連接,僅僅指定欲監視主機的IP和網關的IP是不行的,因為數據包是從外部主機發 送的,而不是從網關發送的,所以你不能采取指定IP地址的方法。為了達到監視內外通信的目的,你只要指定被監視主機的MAC地址和網關的MAC地址,這樣 就可以監視被監聽主機的所有Internet通信。

-T  readpcapfile,脫機sniffing
如果使能了這個參數,Ettercap將監聽一個pcap兼容文件中存儲的網絡數據包,而不是直接監聽網絡上的數據包。如果你有tcpdump或etereal轉儲的數據文件,並想對這些文件進行分析的時候,這個選項非常合適。

-Y  writepcapfile,把數據包轉儲到一個pcap格式的文件中

如果你必須要在一個交換的局域網上使用主動sniffing(通過Arp欺騙)方式監聽,但是又希望利用tcpdump或etereal對截獲的數據包進 行分析,可以選用這個選項。你可以利用這個選項把監聽到的數據包轉儲在一個文件中,然后加載到適當的應用程序中進行分析。

-N  simple,非交互方式

如果你希望從一個腳本提交Ettercap,或者你已經了解一些目標信息,或者你想要在后台提交Ettercap,讓它收集數據或口令信息(與 -quite 選項連用)的時候,可以采用這個選項。在這種工作方式下,Ettercap的某些功能無法實現,如字符注入等需要交互式處理的功能。但其他功能仍得到全面 支持,如過濾功能。所以可以讓Ettercap對兩個主機進行Arp欺騙(一台被監視主機和它的網關),並過濾它的所有在80端口的連接,並用一些字符串 進行替換,那么它到Internet的所有通信都會按照你的要求而改變。

-z  silent,以靜音方式啟動(在啟動時沒有Arp風暴)

如果你希望以非攻擊方式啟動Ettercap(某些NIDS檢測到過多的Arp請求時會產生報警信息)。若要選用這個選項,你必須了解有關目標系統的所有 必要的信息。例如,如果你要求欺騙兩台主機,你需要知道這兩台主機的IP地址和MAC地址。如果你選擇了IP監聽或MAC監聽,會自動選擇這個選項,因為 你不需要知道局域網上的主機列表。如果你想要了解全部主機信息,使用“ettercao -Nl”選項,需要注意的是,這是帶有攻擊性的方式。

-O  passive,以被動方式收集信息

這種方式不會向網上發送任何數據包,它會將網卡置於全收方式,並查看流經的數據包。它將分析每一個需關注的數據包(SYN和SYN + ACK),並利用這些信息建立完整的局域網主機映射圖。所收集的信息包括:主機的IP和MAC地址、網卡生產廠家、操作系統類型(被動OS指紋)和運行的 服務等。在這個列表中還會包含其他一些信息,如:“GW”,如果該主機是一個網關的話,“NL”,如果這個IP不屬於本網段,以及“RT”,如果該主機發 揮了路由器的功能。如果你需要通過被動方式建立一個完整的主機列表的時候,可以選擇這個選項。當你對所收集的信息感到滿意的時候,可以通過按下“C”鍵, 把收集的信息轉換為主機列表,然后按照通常的方式工作。在下一節中將解釋在sample方式下,本選項的作用。

-b  broadping,在啟動時利用廣播ping,而不是Arp風暴來獲得網絡主機信息

這種方法的可靠性差,准確性也低。有些主機不會響應廣播ping(如windows),所在這種方式下,這些主機是不可見的。如果你想要掃描局域網上的 Linux主機,這個選項是非常有用的。通常你可以把這個選項–list選項連用以便獲得主機列表“ettercap -Nlb”

-D  delay,如果你選擇了Arp欺騙方式,可以利用這個選項來控制Arp響應之間的延遲秒數。如果你希望這種欺騙數據流不要過於集中,這個選項是很有幫助的。在大多數OS中,缺省的Arp緩存有效時間間隔超過一分鍾(在FreeBSD系統中為1200秒),缺省的延遲為30秒。

-Z  stormdelay,指定在Arp風暴開始后Arp請求之間的延遲微秒數。如果你希望掃描不要過於集中可以使用這個選項。許多IDS 對於過於大量的Arp請求會產生報警信息,但是如果你用低一些的速率發送Arp數據包,IDS將不會報告任何異常事件。缺省的延遲時間為1500微秒。

-S  spoof,如果你想欺騙IDS,可以利用一個偽造的IP來進行局域網Arp掃描。但是我們不能偽造源MAC地址,因為良好配置的交換機會阻斷你的請求包。

-H  hosts,指定在啟動是僅掃描這些主機

如果你希望僅對某些IP進行Arp掃描的時候,可以選用這個選項。這樣,你既可以從Arp掃描中獲得好處,又可以盡量保持低攻擊性。甚至在你希望采用 PUBLIC ARP方式,但又想僅僅欺騙某幾個主機的時候,這個選項也是很有用的。由於在擁有主機列表的情況下PUBLIC ARP方式會自動轉換為SMARTARP方式,只有這些主機被欺騙,可以保持其他主機的Arp緩存不受影響。IP地址表的表示法為:點分制表示的IP地 址,地址之間用分號分隔(在它們之間沒有空格),還可以用中橫線表示一個IP地址范圍或一個IP地址表(使用逗號)。
例:
192.168.0.2-25 :從2到25
192.168.0.1,3,5 :主機1、3和5
192.168.0.-3.1-10;192.168.4,5,7 :將要在子網192.168.0,192.168.1,192.168.2,192.168.3中掃描主機1到10,以及在子網192.168.4中掃描主機5和7

-d  dontresolve,在啟動時不解決IP

如果你在啟動程序時遭遇瘋狂的“Resolving n hostnames…”消息時,這個選項會有所幫助。這種情況是由於你的網絡中的DNS非常慢而造成的。

-I  iface,用於所有操作所針對的網絡接口

你甚至可以指定一個網絡別名,以便掃描與你的當前IP不同的子網。

-n  netmask,用於掃描局域網絡的網絡掩碼(以點分制表示)

缺省的網絡掩碼為當前ifconfig中定義的掩碼。但是,如果你的掩碼為,比如255.255.0.0,那么如果你要在啟動時進行arp掃描的話,鼓勵你另外指定一個限制更強的掩碼。

-e  etterconf,使用配置文件,而不是命令行參數

在軟件的tar包中有一個etter.conf文件,其中包含一些配置范例,參考這些范例來了解如何編寫配置文件,在這些例子中給出了所有的指導信息。通 過配置文件,你可以選擇性地禁止某個協議分析或把它轉移到另一個端口。命令行選項和配置文件可以非常靈活地混合使用,需要記住的是配置文件中的選項壓倒命 令行選項,所以,如果在etter.conf指定了IFACE:eth0,並且你在啟動程序的時候指定了“ettercap -i eth1 -e etter.conf”,那么最終的選擇結果是eth0。
注意:“-e etter.conf”選項必須在所有選項的后面出現,也就是說它必須是最后一個選項。

-g  linktype,這個標志有兩個補充功能,因此要注意它

如果這個標志用於交互式方式,它不檢查局域網的類型。另一方面,如果與命令行方式(-N)連用,它要對局域網進行檢查,以了解它是否是一個交換網。有時,如果在局域網內只有兩台主機,這種發現方法有可能失敗。

-j  loadhosts,用於從指定的文件中加載主機表,該文件是通過-k選項創建的

-k  savehosts,把主機列表保存到文件中

當目標網絡中有很多主機,並且你不希望在每一次啟動的時候都做一次arp風暴的時候,這個選項是很有幫助的。你只要指定這個選項,並把列表轉儲到一個文件 中。然后加載這個利用-j選項從文件中加載這些信息。文件名的形式為:“netaddress_neymask.etl”

-v  version,檢查最新的ettercap版本

所有的操作都在你的控制之下。每一個步驟都需要用戶確認。利用這個選項ettercap將連接到 http://ettercap.sourceforge.net:80 web站點,並請求/latest.php,然后分析查詢結果並與你的當前版本進行比較。如果有一個更新的版本可用,ettercap將詢問你是否要需要 wget(必須在路徑中)。如果你想要對所有的問題自動回答yes,增加選項-y。

-h  help,在屏幕上顯示幫助信息,對每一個選項都有一個簡短的描述

-t  proto,僅監聽協議PROTO的數據包(缺省為TCP+UDP)

這個選項僅在simple方式下有用,如果你以交互式方式啟動Ettercap,TCP和UDP數據包都將被監聽。PROTO可以是tcp或udp或all。

-J  onlypoison,這個選項使Ettercap不監聽任何數據流,但僅僅對目標進行欺騙。如果你需要利用Ettercap進行欺騙,而用其他的軟件tcpdump或ethereal進行監聽時,可以利用這個選項(注意在這種方式下要使能IP_forwarding)。

另外一種用法是多目標監聽。正如你所了解的,你可以利用Ettercap監聽兩個目標之間的連接信息(ARPBASED),或某一個目標的進出信息 (SMART ARP)。利用這個選項,你可以同時監聽若干目標(因為同時啟動了多個程序)。啟動第一個程序時選用SMART ARP,並用-H選項限制smart功能僅針對你想要欺騙的主機進行(記住如果在欺騙中涉及了網關,必須在以smart方式運行的實例中指定它)。然后再啟動其他的“Ettercap -J”。

-R  reverse,監聽除選擇的連接以外的所有連接。

如果你在一個遠程主機上使用Ettercap,並且要求監聽除了你自己的從本地到遠程的連接以外的所有其他連接時,可以選擇這個選項。因為如果包含了這樣的連接將會使Ettercap監聽自己的輸出,並不斷迭加上去。

-O  assive

以被動的方式收集信息

在simple方式下,我們可以在許多方式中選擇這個選項。“Ettercap -NO”將以半交互的方式啟動Ettercap,輸入“h”來獲得幫助信息。你可以查看收集的信息,也可以把它們記錄到日志文件中,或簡單地瀏覽分析的數 據包。“Ettercap -NOL”與上面的方式相類似,不過它會自動地把數據記錄到文件中,記錄的時間間隔是5分鍾。“Ettercap -NOLq”使Ettercap每5分鍾把日志寫到文件中。你可以走開,抽支香煙,返回時就會有一個有關局域網的完整報告在等待着你…J

-p  plugin,運行外部插件“NAME”

大多數插件需要一個目標主機,這只要在插件的名字后面指定目標主機就可以了。事實上,命令行上的主機解析中,第一個主機為DEST,SOURCE也同樣。 為了獲得可用的外部插件列表,使用“list”(不包括引號)作為插件的名字。由於ettercap 0.6.2提供了鈎子插件系統,所以一些插件並不是作為獨立的程序運行,它們可以和ettercap交互,可以通過接口或配置文件使能或禁止。有關插件的 詳細信息以及如何編寫自己的插件,可以在README.PLUGING文件中找到。

-l  list,列出局域網中的所有主機,報告每一個MAC地址

通常與-b(ping廣播)選項和-d(不解決主機名)選項連用。

-C  collect,收集在命令行上指定的那些主機的所有用戶和口令信息

在配置文件(etter.conf)中配置口令收集器,如果需要的話,可以有選擇性地禁止它們,或者把它們轉移到另一個端口。如果你不希望收集SSH連接 信息,但收集其他所有協議的數據的時候,這個選項很有用。如果你已知某一台主機在端口4567上提供telnet服務,只要把telnet解碼移動到 4567/tcp就可以了。

-f  fingerprint,對主機進行OS指紋收集

這個選項利用與nmap所使用的相同的方法和數據庫:Fyodor fyodor@insecure.org,所以引用一段其man手冊頁中的一段:這個選項通過TCP/IP指紋來標識遠程主機。換句話說,它通過一套技術來檢測被掃描主機的網絡協議棧的特征。它利用這些信息建立一個指紋,這個指紋將同已知OS指紋庫相比較,從而確定所掃描主機的系統類型。甚至可以向你提供被掃描主機所用的網絡適配器的生產廠家。這些信息被存放在mac-fingerprints數據庫中。

-x  hexview,以十六進制數方式轉儲數據

提示:在監聽的時候,可以改變顯示效果,只要按”x”或”h”鍵就可以實現按16進制數顯示或按Ascii字符顯示。

-L  logtofile,如果這個參數單獨使用的話,會把所有的數據保存到特定的文件中。它會為每一個連接建立一個單獨的文件,在UNIX系統下文件名為YYYYMMDD-P-IP:PORT-IP:PORT.log,在Windows環境下的文件名為P-IP[PORT]-IP[PORT].log。如果與C參數連用,它會創建一個名為YYYYMMDD-collected-pass.log文件,其中記錄了所有監聽到的口令信息。

-q  quiet,如果你希望以后台工作方式記錄所有的數據,可以使用這個選項。這個選項將使Ettercap脫離當前的tty,並把它設置為一個daemon。這個選項必 須與-NL(或-NCL)選項聯合使用,否則的話沒有任何作用。顯然,還需要指定一種監聽方式,因此這個選項還要和一個表示監聽方式的選項相配合。

-w  newcert,為HTTPS中介攻擊方式創建一個新的cert文件

如果你想要利用社會工程方式獲得的信息創建一個cert文件,可以使用這個選項。新創建的文件保存在當前工作目錄下。為了長期替換缺省的cert文件(etter.ssl.crt),必須改寫/usr.local/share/etter.ssl.crt。

-F  filter,從文件FILENAME中加載過濾鏈

過濾鏈文件是用偽XML格式編寫的。你可以通過手工改寫文件或通過Ettercap的用戶界面來讓Ettercap創建這個文件(在連接表界面中按’F’鍵)。如果你很熟悉XML語言分析,可以寫自己的程序來建立過濾鏈文件。

過濾規則很簡單:
如果 協議 源端口 目的端口 數據流 與規則匹配,在過濾器完成了它的響應 之后,跳轉到在 域中定義的過濾器id,否則它跳轉到。如果這些域是空的,鏈就中斷了。如果源端口和目的端口為0,意味着任意端口。在查找串中可一使用通配符(細節見 README)。注意:這個選項使能了過濾器,如果需要禁止它,在監聽過程中按“S”(源)或“D”(目的)。注意:在命令行上,對主機的解析為:ettercap –F etter.filter DEST SOURCE。所以第一個主機被綁定到目的鏈,第二個主機被綁定到源鏈。
重要注意事項:源鏈規則應用到從源發出的數據上,而不是發送到源的數據上,需謹記,對於目的地址也是同樣。

-c  check,檢查你是否被局域網上特定目標中的其他欺騙者所欺騙

對命令行上的目標主機的解析是反向的。第一個主機是DEST,第二個主機是SOURCE。如果你在基於IP的方式下監聽,這個順序沒有關系,因為源和目的都被忽略了。但是如果你在對連接進行過濾,這個順序對於綁定到相關的過濾鏈就很重要了。這個反向的順序是由於與插件的更加靈活接口。因為有些插件需要指定目標主機,那么Ettercap –Np ooze victim這種形式要比Ettercap –Np ooze NOONE victim簡單一些。可以用點分制的格式來輸入目標(192.168.0.1)或者以域名的格式來輸入目標(victim.mynet.org)。只有在-H選項中可以使用通配符

最后還有一點重要的是,靜音方式選項僅可以和-N選項連用。

這里些常用指令操作的例子:

# ettercap -Tzq 
以命令行方式顯示,只嗅探本地數據包,只顯示捕捉到的用戶名和密碼以及其他信息。

# ettercap -T -M arp:remote /192.168.1.1/ /192.168.1.2-10/
嗅探網關192.168.1.1與部分主機192.168.1.2-10之間相互通信的數據包。

# ettercap -Tzq //110
只嗅探本機110端口pop3的信息。

# ettercap -Tzq /192.168.0.11/21,22,23
只嗅探本機與192.168.0.11主機在端口21、22、23上的通信。

# ettercap -i eth0 -Tq -L sniffed_data -F filter.ef -M arp:remote /192.168.0.11/80 //
在eth0網卡上用自己的filter嗅探ip為192.168.0.11主機在80端口上的所有通信,並把所有的數據包保存成文件名為“sniffed_data”的文件。

# ettercap -i eth0 -Tq -L sniffed_data -F filter.ef -M arp:remote /10.1.1.1/ /10.1.1.2/
單向欺騙路由,只劫持路由發向10.1.1.2的數據包。

 

0x05  

to be continued.


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM