<menu id="guoca"></menu>
<nav id="guoca"></nav><xmp id="guoca">
  • <xmp id="guoca">
  • <nav id="guoca"><code id="guoca"></code></nav>
  • <nav id="guoca"><code id="guoca"></code></nav>

    6.6 Burp Suite 比較網站地圖

    您可以使用此功能比較兩個站點地圖并突出顯示差異。可以通過多種方式使用此功能,以幫助查找不同類型的訪問控制漏洞,并確定大型應用程序的哪些區域需要手動檢查。此功能的一些典型用例如下:

    • 您可以使用具有不同特權級別的帳戶來映射應用程序,并比較結果以識別一個用戶可見的功能,而另一用戶看不到。

    • 您可以使用高特權帳戶映射應用程序,然后使用低特權帳戶重新請求整個站點地圖,以識別是否正確控制了對特權功能的訪問。

    • 您可以使用兩個相同類型的不同帳戶來映射應用程序,以識別使用特定于用戶的標識符訪問敏感資源的情況,并確定是否正確隔離了每個用戶的數據。

    您可以使用主站點地圖上的上下文菜單訪問“比較站點地圖”功能。這將打開一個向導,該向導可讓您配置要比較的站點地圖的源,如何在站點地圖之間匹配請求以及如何進行響應比較。然后Burp進行比較并顯示結果供您查看。

    網站地圖來源

    要執行站點地圖比較,您需要選擇要比較的站點地圖的來源。提供以下選項:

    • Burp的“目標”選項卡中顯示的當前站點地圖。
    • 從先前保存的Burp項目文件或狀態文件加載的站點地圖。當您已經使用具有不同特權級別的帳戶映射應用程序時,此選項很有用。
    • 以上兩種情況均在不同的會話上下文中重新請求。當您使用高特權帳戶映射了應用程序,并希望使用低特權帳戶重新請求整個站點地圖時,此選項很有用,以識別是否正確控制了對特權功能的訪問。

    您可以選擇包括站點地圖的所有內容,也可以只限于所選或范圍內的項目。

    如果您在其他會話上下文中重新請求站點地圖,則應注意以下幾點:

    • 您必須首先創建合適的會話處理規則,以便在比較期間發出的請求在所需的會話上下文內發生。必須將這些規則配置為適用于“ 目標”工具發出的請求。在最簡單的情況下,您可以使用會話處理規則,使用Burp的cookie jar中的cookie 更新來自Target工具的請求,并在執行比較之前使用瀏覽器獲取所需的會話上下文。在其他情況下,您可能需要創建更復雜的會話處理規則以驗證當前會話上下文并在需要時再次登錄。
    • 通常希望從比較中排除任何可能破壞會話上下文的請求(例如,登錄,注銷,用戶模擬功能等)。您可以使用選項將比較限制在選定的范圍內或將其限制在以下范圍內:范圍項目。

    請求匹配

    為了進行比較,Burp處理第一個站點地圖中的每個請求,并將其與第二個站點地圖中的請求進行匹配,反之亦然。您可以配置如何完成請求匹配的詳細信息,以使其適合目標應用程序的功能。

    您可以選擇以下哪些項用于匹配請求:

    • URL文件路徑 -必須始終將其包含在匹配過程中,并且是確定兩個請求相等的最小基礎。
    • HTTP方法 -通常應包括此方法,因為在大多數情況下,應用程序出于不同目的使用對同一URL的GET和POST請求。
    • URL查詢字符串 -通常應包括該字符串,因為具有不同URL參數的請求通常用于不同的應用程序功能。匹配參數名稱的子選項僅使Burp匹配具有相同參數名稱但值不同的查詢字符串。這通常是理想的(例如,如果參數值包含用戶特定或臨時數據),但是,例如,如果參數名稱用于標識正在執行的應用程序功能,則應禁用此選項(例如action=CreateUser)。忽略這些參數的子選項使您可以指定匹配查詢字符串時應完全忽略的參數。
    • 請求主體 -通常應包括在內,因為具有不同主體參數的請求通常用于不同的應用程序功能。可以使用與URL查詢字符串參數相同的子選項。
    • 請求標頭 -此選項導致第一行之后具有不同HTTP標頭的請求不匹配。這種行為通常是不希望的,因為由于多種原因,瀏覽器可能會在不同的請求中修改標頭,而這些標頭與應用程序級功能無關。但是,例如,如果應用程序將腳本生成的請求與用于標識請求功能的自定義HTTP標頭一起使用,則可以啟用此選項。

    默認選項在大多數情況下都能很好地工作,并且將根據URL文件路徑,HTTP方法以及查詢字符串和消息正文中的參數名稱來匹配請求。

    響應比較

    比較對匹配請求的響應以識別任何差異。您可以配置如何完成響應比較的詳細信息,以使其適合目標應用程序的功能。

    提供以下選項:

    • 響應標頭 -您可以選擇包括所有標頭(特定排除除外),或僅包含特定標頭。通常希望包括響應標頭,其值反映應用程序功能和狀態的各個方面(例如Set-Cookie)。
    • 表單字段值 -您可以選擇包括所有表單字段值(特定排除除外),或僅包含特定值。表單字段值通常反映與識別訪問控制問題有關的差異,通常應突出顯示以進行手動檢查。然后,您可以修改此設置以排除不相關的字段,然后重復比較。
    • 空格 -您可以選擇忽略響應中僅空格的變化,因為這些通常與訪問控制問題無關。
    • MIME類型 -您可以選擇跳過非文本內容的比較。由于這種比較是計算密集型的,并且這些響應很可能包含靜態內容(例如圖像),因此與訪問控制問題無關,因此這通常是理想的。

    默認選項將在大多數情況下起作用。這些選項將忽略具有短暫值的各種常見HTTP標頭和表單字段,并且還將忽略響應中僅空格的變體。默認選項旨在減少響應中無關緊要的變化所產生的噪聲,使您可以將注意力集中在更可能產生影響的差異上。

    比較結果

    比較結果將兩個站點地圖一起顯示,并在樹形視圖和表視圖中突出顯示了相關差異。在兩個地圖之間添加,刪除或修改的項目將相應地著色。表格視圖還包含“差異計數”列,該列表示將映射1中的響應“轉換”為映射2中的匹配響應所需的最少文本編輯次數。

    當您在其中一張地圖的樹或表中選擇一項時,另一張地圖中的選擇會自動更新以顯示樹的相同分支,或在表中選擇同一項。您可以通過取消選中“同步選擇”選項來更改此行為。

    所選項目的完整請求和響應將顯示在請求/響應查看器中,并且相關差異將在響應中突出顯示。

    有一個適用于兩個地圖的顯示過濾器,默認情況下會顯示所有項目。

    解釋站點地圖比較的結果需要人工智慧,并且需要了解特定應用程序功能的含義和上下文。例如:

    • 響應之間的某些差異是安全中立的。例如,兩個不同用戶的應用程序主頁可能包含不同的顯示名稱,鏈接和其他特定于用戶的內容。這些差異是可以預料的,并且對于應用程序訪問控制的有效性是中性的,因為它們僅涉及用戶界面。
    • 一些差異表明訪問控制按設計工作。例如,管理用戶可能能夠訪問特權功能,而低特權用戶看到“未授權”消息。
    • 在某些情況下,將相同的響應返回給兩個用戶表示存在安全問題。例如,管理員可能具有指向包含有關應用程序用戶的敏感詳細信息的頁面的鏈接;知道相關URL的低特權用戶可以查看同一頁面。
    • 在其他情況下,將相同的響應返回給兩個用戶是安全中立的。例如,可以將應用程序中的公共搜索功能設計為返回相同的結果,而不考慮用戶上下文。
    • 在某些情況下,每個用戶的UI定制所導致的差異(例如不同的顯示名稱和鏈接)會出現在許多不同的頁面上,而這些其他頁面上的其他相同性和差異與評估訪問控制有關。

    所有這些場景都可能共存于同一應用程序中,這使得識別實際訪問控制問題的任務變得更具挑戰性。唯一的方法是通過手動檢查比較結果。Burp提供了幾種簡化此過程的方法:

    • 您可以使用顯示過濾器過濾掉包含(或不包含)特定表達式的項目。例如,如果大多數管理功能在低特權用戶請求時返回“未經授權”消息,則可以從地圖中隱藏這些響應,僅保留可能涉及應用程序特權模型中監督的其他項。

    • 表格視圖中的“差異計數”列是一個有用的起點。例如,如果應用程序的大多數頁面包含因每個用戶的UI定制而導致的兩個差異,那么您可以按差異計數對響應進行排序,并查找與該值的差異。或者,如果發現一個訪問控制漏洞具有特定的差異計數,則可以查找具有相同或相似計數的其他響應,這些響應可能表示相似的脆弱功能。

    • 查看比較結果后,您可能會確定比較不相關的響應標題或表單字段值會引起一些常規差異,因此應將其排除在比較之外。或者您可能會發現某些查詢基于查詢字符串或正文參數被錯誤地匹配。如果發生這種情況,您可以返回并調整響應比較或請求匹配選項,然后重新運行比較(更改這些選項時無需重新請求站點地圖)。

    評估訪問控制所涉及的挑戰是全自動工具如此無法有效識別訪問控制漏洞的原因。在實踐中,旨在這樣做的工具主要會產生噪音,并且極易出現誤報和誤報。相反,Burp并不會減輕您仔細檢查應用程序功能并評估每種情況下訪問控制是否正確應用的任務。站點地圖比較功能的作用是使盡可能多的過程自動化,以清晰的形式為您提供所需的所有信息,并讓您利用對應用程序功能的了解來識別任何實際漏洞。

    本文章首發在 網安wangan.com 網站上。

    上一篇 下一篇
    討論數量: 0
    只看當前版本


    暫無話題~
    亚洲 欧美 自拍 唯美 另类