iT邦幫忙

2021 iThome 鐵人賽

DAY 5
1
Security

Kali Linux 工具筆記系列 第 5

Day 5 情報收集 - Information Gathering (IDS/IPS Identification)

與正文無關的前言

昨天壓死線撐過了第四天,發現瀏覽數目比前幾天要多了一些,看來某些些關鍵字還是有比較高的吸引力,但就不知道內容是否有符合期待,所以其實也希望能得到一些建議或是回饋,有機會一定把前面沒填的坑都補上,如果是符合這主題的核心目標,那我一定會盡快補上,其他有興趣的議題也許之後也可以另外開篇章來深入探討,在此也先謝謝願意看完文章的每一個人,這系列到此結束謝謝

正文開始

今天繼續來看Kali還有什麼工具,當進度條走到同樣隸屬於01 - Information Gathering下的IDS/IPS Identification,不難猜測這分類下的工具都會是用來判斷目標是否有IDS或是IPS。

IDS縮寫來自Intrusion Detection System,入侵偵測系統,精隨來自偵測,這個系統主要功能是負責監聽網路封包,讓系統維護人員可以依據事先設定的安全策略,來對網路或是系統整體的運行狀況進行監測,可以在發現有任何異常時,記錄各種痕跡、行為,並且自動發出警報給管理人員,讓管理者可以依此判斷出遭受的攻擊類型或者是意圖。

而IPS全名Intrusion Prevention System,入侵防護系統,所以可以算是進階版的IDS,化被動為主動,除了能偵測到行為之外,也可自動採取必要的措施,像是阻斷來源IP,讓不良流量無法進一步的移動到較重要的系統內部。

所以Kali這分類的工具其實就是用來判斷目標主機是否擁有IPS/IDS應該具備的機制。

工具介紹

  1. lbd
    lbd (Load Balancing Detector) 是用來檢測目標網域是否有使用DNS或HTTP的負載平衡,通常一些流量很大的網站都會使用負載平衡器,簡單說就是用多台伺服器來提供單一服務,從而降低伺服器的負載量,但也就是說即使你從同一入口進,但實際上真正提供服務的可能是其他伺服器。這邊我們以google.com這個一定需要負載平衡的網站來看。

lbd可以直接給定一個域名

lbd google.com

然後lbd就會給出類似下列的結果,從結果可以觀察到它可能是利用比較date、response header,去判斷目標主機是否有做負載平衡,這邊我們看到了google.com是有負載平衡的,但這種判斷方式不一定準確,但可以提供一定的參考性。

lbd - load balancing detector 0.4 - Checks if a given domain uses load-balancing.
                                    Written by Stefan Behte (http://ge.mine.nu)
                                    Proof-of-concept! Might give false positives.

Checking for DNS-Loadbalancing: NOT FOUND
Checking for HTTP-Loadbalancing [Server]: 
 gws
 NOT FOUND

Checking for HTTP-Loadbalancing [Date]: 08:05:27, 08:05:28, 08:05:28, 08:05:28, 08:05:28, 08:05:28, 08:05:28, 08:05:28, 08:05:28, 08:05:29, 08:05:29, 08:05:29, 08:05:29, 08:05:29, 08:05:29, 08:05:29, 08:05:29, 08:05:30, 08:05:30, 08:05:30, 08:05:30, 08:05:30, 08:05:31, 08:05:31, 08:05:31, 08:05:31, 08:05:31, 08:05:31, 08:05:31, 08:05:31, 08:05:32, 08:05:32, 08:05:32, 08:05:32, 08:05:32, 08:05:32, 08:05:32, 08:05:33, 08:05:33, 08:05:33, 08:05:33, 08:05:33, 08:05:33, 08:05:33, 08:05:34, 08:05:34, 08:05:34, 08:05:34, 08:05:34, 08:05:34, NOT FOUND

Checking for HTTP-Loadbalancing [Diff]: FOUND
< Expires: Wed, 20 Oct 2021 08:05:34 GMT
> Expires: Wed, 20 Oct 2021 08:05:35 GMT

google.com.tw does Load-balancing. Found via Methods: HTTP[Diff]
  1. wafw00f
    接著介紹的是同一分類下的wafw00f,先來拆解一下工具名稱,我很喜歡拆解工具名稱,因為實際了解過名稱由來的話,在對工具的記憶上能帶來一些幫助,像是我們一般在linux上操作ls (list)、cd (change directory),當然這些常用指令不用理解也不會忘記,但很多工具如果沒有一些記憶方式的話,因為不常用而導致需要時需要額外輸入一些關鍵字去搜尋它。扯遠了,回到wafw00f,從名字可以看到有WAF,所以合理懷疑它可能跟WAF (Web Application Firewall)相關。

先直接執行工具

wafw00f

可以看到出現了一隻動物,所以它可能用意是偵測到有WAF它就woof(吠),但我實在是沒懂英文字母o用數字0替代是什麼涵義...,好在有waf當記憶點便足夠了。


                ______
               /      \
              (  W00f! )                                                                                                                                                     
               \  ____/                                                                                                                                                      
               ,,    __            404 Hack Not Found                                                                                                                        
           |`-.__   / /                      __     __                                                                                                                       
           /"  _/  /_/                       \ \   / /                                                                                                                       
          *===*    /                          \ \_/ /  405 Not Allowed                                                                                                       
         /     )__//                           \   /                                                                                                                         
    /|  /     /---`                        403 Forbidden                                                                                                                     
    \\/`   \ |                                 / _ \                                                                                                                         
    `\    /_\\_              502 Bad Gateway  / / \ \  500 Internal Error                                                                                                    
      `_____``-`                             /_/   \_\                                                                                                                       
                                                                                                                                                                             
                        ~ WAFW00F : v2.1.0 ~                                                                                                                                 
        The Web Application Firewall Fingerprinting Toolkit       

工具本身介紹寫著The Web Application Firewall Fingerprinting Tool.,說明了它的確是個WAF識別工具,而WAF一般做的事情有

  • 支援IP白名單/黑名單功能,來限制來源IP的存取行為。
  • 支援URL白名單,或是定義指定時間內的訪問次數。
  • 支援User-Agent/Cookie等等的過濾。
  • 支援日誌記錄,紀錄所有拒絕的操作。

而wafw00f主要做了下列事情來測試目標使否存在WAF

  • 發送一般的HTTP請求並分析回應,看是否存在WAF
  • 發送惡意的HTTP請求並分析回應,並用簡單的邏輯來判斷屬於何種WAF

使用-l參數來看能偵測那些WAF

wafw00f -l

節錄一些結果,可以看到製造商提供的防火牆系統清單

[+] Can test for these WAFs:

  WAF Name                        Manufacturer
  --------                        ------------                                                                                                                               
                                                                                                                                                                             
  ACE XML Gateway                  Cisco                                                                                                                                     
  aeSecure                         aeSecure                         
  AireeCDN                         Airee                            
  Airlock                          Phion/Ergon                      
  Alert Logic                      Alert Logic                      
  AliYunDun                        Alibaba Cloud Computing   

接著測試一下實際測試https://example.org當作目標

wafw00f https://example.org

可以看到兩道請求就測試出是屬於Edgecast的防火牆系統

[*] Checking https://example.org
[+] The site https://example.org is behind Edgecast (Verizon Digital Media) WAF.
[~] Number of requests: 2

結語

今天實際體驗了lbdwafw00f兩個工具,透過前者我們能夠發現目標是否有負載平衡的機制,而後者提供了一些簡易的測試,找到目標的防火牆系統,讓後續在訂立策略時能縮小範圍,讓執行計畫更加明確。


上一篇
Day 4 情報收集 - Information Gathering (DNS analysis)
下一篇
Day 6 情報收集 - Information Gathering (Live Host Identification)
系列文
Kali Linux 工具筆記31

尚未有邦友留言

立即登入留言