OceanAltOceanAlt
攻防案例/ 第 5 / 5 例
🔁

重放 / 雙花攻擊

把一筆合法支付原樣再發一次,重複扣款。

結算前攔下409 · Replay

攻擊怎麼發生

攻擊者截獲(或 Agent 因重試邏輯出錯)把同一筆已授權的支付,用相同參數原樣重發,試圖讓它結算兩次。

Agent 為什麼天生扛不住

網絡會重傳、Agent 會重試;如果網關對「同一筆」沒有記憶,一筆授權就可能被結算多次,錢被重複扣走。

防重放 / 防雙花這道閘要求每筆支付帶一個一次性 nonce,並記住已用過的;重複的 nonce 直接拒。同一筆付款原樣再發,第二次就被擋下。

你自己動手試

在整合頁用相同的 nonce 把同一筆支付發兩次,第二次會被 409 攔下。