本系列文章所討論的 JavaScript 資安與逆向工程技術,旨在分享知識、探討防禦之道,並促進技術交流。
所有內容僅供學術研究與學習,請勿用於任何非法或不道德的行為。
讀者應對自己的行為負完全責任。尊重法律與道德規範是所有技術人員應共同遵守的準則。
本文同步發佈:https://nicklabs.cc/chrome-devtools-network
Chrome DevTools 不僅僅是開發者的工具更是資安研究員手中的強大武器。
點擊瀏覽器右上角的三個點 (⋮) > 選擇「更多工具」> 選擇「開發人員工具」。
在網頁的任何地方按下滑鼠右鍵,然後選擇「檢查」。
此方法會自動打開 DevTools 並定位到你點選的那個元素上,非常適合用來分析特定的 UI 介面。
點擊瀏覽器右上角的三個點 (⋮) > 選擇「更多工具」> 選擇「開發人員工具」。
在網頁的任何地方按下滑鼠右鍵,然後選擇「檢查」。
此方法會自動打開 DevTools 並定位到你點選的那個元素上,非常適合用來分析特定的 UI 介面。
當我們載入一個網頁時,背後發生了許多事情。所有的資料傳輸、API 請求都可以在 Network 中一覽無遺。
打開 DevTools,切換到 Network,重新整理頁面。你會看到一連串的請求列表。
紅框「 1
」的部分為載入這個網頁包含的所有請求。
欄位說明如下:
紅框「 2
」的部分是篩選請求,預設為 All 顯示所有請求,若當要分析的網頁請求眾多可以善用篩選功能過濾雜訊。
Fetch/XHR 篩選器顯示兩種主要的非同步請求:
紅框「 3
」的部分是搜尋請求路徑名稱,若已清楚需要觀察的路徑名稱,可直接輸入路徑名稱避免其他請求干擾。
在 Network 請求列表中點擊一個請求後,Headers 會顯示該請求與回應的所有標頭資訊。
這部分主要分為三個區塊:General、Response Headers 和 Request Headers。理解這三者對於分析網路流量至關重要。
以上三種資訊是最常需要瞭解的。
需要特別注意這個資訊,因為它可能包含 Session ID 或其他敏感資訊。
通常身份驗證及請求校驗的資訊都會在Headers中。
用於顯示這個請求是如何被觸發的。
已下圖範例來說,Request call stack 由下到上是從觸發事件到實際發出請求所歷經的所有過程也叫做呼叫堆疊(Call Stack)。
如果我們想知道實際上送出請求的程式在哪時可以點擊最上方「Send jquery.min.js:4」。
此時將會跳轉到「Sources」打開相對應的JavaScript檔並跳轉到目標行且反白標示。