首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 網頁程式設計 >> PHP 程式設計 >> PHP 綜合知識

PHP 流程控制中的主動與被動模式:安全架構視角

     編輯:PHP 綜合知識

概念定義

  • 主動:發起方主動請求、控制流程(如客戶端調用 API)。
  • 被動:接收方被動接受請求、處理數據(如服務端接收通知)。

主動方掌握控制權,被動方易受偽造數據攻擊。

典型風險場景

1. 支付回調被動接收

商戶服務器被動接收支付寶/財付通通知,若未驗證來源真實性,攻擊者可偽造訂單號、金額植入虛假交易。

改為主動查詢:接收通知後,僅記錄 token,主動調用支付方查詢接口核實訂單狀態,再入庫。

2. 淘寶客鏈接劫持

頁面直接輸出淘寶商品購買鏈接(含 PID),被瀏覽器插件篡改 PID 導致佣金丟失。

主動中轉:前端鏈接指向自有 buy.php?sid=xxx,後端主動解析 sid、驗證安全、再跳轉真實購買鏈接。

3. QQ 互聯 OAuth 2.0

  • 第一步:引導用戶跳轉 QQ 授權頁(被動接收 code/token)。
  • 第二步:主動攜帶 token 請求 QQ API 獲取 openid、用戶信息。
  • 騰訊掌握主動權:token 校驗、域名綁定、IP 限制、過期檢查均由騰訊主動執行。

核心原則

關鍵業務流程(支付、授權、數據同步)應由可信方主動發起查詢/驗證,而非被動接收不可信數據。

PayPal、支付寶等主流支付網關均採用「異步通知 + 主動查詢」雙重保障機制。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved