主動與被動的分野#

主動擷取(active capture)與被動擷取的差別在於:你會設法影響流量的走向,通常是對網路通訊發動中間人攻擊(man-in-the-middle attack)。執行擷取的裝置會坐在用戶端與伺服器之間,扮演橋接器(bridge)的角色。

圖表 2-7:中間人代理

這種做法帶來幾個明顯的優勢:

  • 能夠修改流量
  • 能夠關閉加密或壓縮等功能,讓協定更容易分析與利用。

代價與風險#

主動擷取通常比較困難,因為你必須把應用程式的流量重新導向到你的擷取系統。它也可能造成非預期的副作用——例如把伺服器或用戶端的網路位址改成代理的位址時,可能造成混淆,使應用程式把流量送到錯誤的地方。

即使有這些問題,主動擷取大概仍是分析與利用應用程式網路協定時最有價值的技術。下一節就從最常見的實作手段——網路代理——談起。