API 安全的三大核心風險
API 的設計與部署,有三個核心的安全問題需要特別注意:
比喻:就像一個公共場合的插座,任何人都可以隨意插上他們的設備。如果你的 API 沒有嚴格的身份驗證,駭客就可以冒充合法使用者來存取資料。
技術風險:
身份驗證(Authentication)不足:API 沒有檢查使用者是否「真的是他們聲稱的那個人」(例如,沒有使用強密碼或多因素驗證)。
授權(Authorization)不足:即使使用者成功登入,API 也沒有檢查他們「是否有權限存取這個特定的資料」。例如,一個低權限的使用者卻能存取管理員的資料,這被稱為 BOLA (Broken Object Level Authorization),是 API 安全中的最大威脅之一。
比喻:當你使用插座時,它只應該提供電力。但如果你的 API 像是一個「萬能插座」,每次請求都把使用者不需要的敏感資料(例如,密碼的雜湊值、內部系統 ID)也一起傳輸了。
技術風險:API 設計者為了方便,可能在一個端點中返回了過多的資料欄位。如果駭客攔截了這個回應,即使他們沒有權限,也可能從中篩選出敏感資訊。
比喻:如果你的插座沒有負載限制,當有人同時插上幾百個高功率電器時,整個電路就會短路或保險絲燒斷。
技術風險:
暴力破解攻擊:駭客利用程式不斷嘗試不同的密碼來猜測使用者帳號。
DDoS 攻擊:如果 API 沒有設定合理的速率限制(Rate Limiting),駭客可以發送大量的請求,消耗伺服器資源,導致正常的服務無法使用。API Security:API 就像插座,安全要注意什麼?