何謂應用程式開發介面 (API) 防護?

Tball

API 防護是資安防護的一種,其內容涵蓋所有用來保護應用程式開發介面 (API) 以防範資料外洩、未經授權存取,以及其他威脅的協定、流程與最佳實務原則。

API 防護結合了各式各樣的工具來協助企業防止應用程式開發介面 (API) 遭到入侵,藉此保護敏感與機密資訊,並且保護網站與行動應用程式、雲端服務,以及物聯網 (IoT) 裝置。

何謂 API?

API 是「Application Programming Interface」(應用程式開發介面) 的縮寫,這是一種程式設計上的規則和協定,讓不同的軟體應用程式之間能彼此互動、溝通及分享資料。

由於 API 是用來與不同的應用程式溝通,以及在應用程式之間交換資料,所以也有可能變成駭客存取應用程式、應用程式所在系統,以及應用程式所攜帶資料的途徑。

API 防護如何運作?

API 防護運用各種工具,如:認證與授權、主動式存取控管、資料加密技術,以及威脅偵測及回應措施來防範 API 的各種非蓄意和惡意威脅,包括:

  • 資料外洩
  • 資料竊取或濫用
  • 分散式阻斷服務 (DDoS) 攻擊
  • 駭客和其他未經授權的存取嘗試
  • 漏洞攻擊
  • 注入攻擊
  • 破解認證以竊取帳號的攻擊
  • 破解存取控管的攻擊
  • 中間人 (MITM) 攻擊
API 防護運作示意圖。

目前主流的 API 協定有哪些?

API 的型態與樣貌繁多,一些常見的包括:

  • REST (表現層狀態轉移) API — 在網站 API 的架構原則下,讓應用程式透過 HTTP 請求來分享資料和其他資源,今日絕大多數的 API 都是以 REST 為基礎。
  • SOAP (簡易物件存取協定) API:以 XML 訊息為基礎,讓端點安全地傳送、接收和分享資料。企業應用程式 (如支付處理) 通常都採用 SOAP,因為其通訊標準較為嚴格。
  • GraphQL API:透過隨選查詢提供更快、更精準的資料擷取,這套協定很適用於需要查詢大量資料的應用程式,例如:需要交換大量產品、使用者及訂單資料的電子商務應用程式。
  • RPC (遠端程序呼叫) API:可用來在遠端伺服器上執行某個程式,就如同在本機上執行一樣。雖然 REST 或 gRPC (現代版的 RPC 實作) 在某些應用情境當中已取代了 RPC,但 RPC 非常適合在另一台伺服器上執行複雜的運算,例如在遠端伺服器上執行 AI 演算法來偵測詐騙。

API 基本上涵蓋了任何能讓軟體開發人員在自己的應用程式當中整合其他應用程式資料或功能的程式開發介面。

API 的好處是開發人員不必從頭開始自行開發所有的功能,只需「借用」現有的應用程式來提升自己的軟體。

API 防護為何重要?

API 防護之所以重要,是因為它能協助企業保護 API 的完整、防止敏感或機密資訊落入駭客手中,並且守護企業的商譽以及合作夥伴和客戶的信任。

這一點相當重要,因為企業越來越仰賴 API 來讓他們在各種不同平台和裝置上安全可靠地提供產品、服務和資訊,包括:行動應用程式、雲端原生和雲端應用程式、網站應用程式,以及軟體服務 (SaaS) 應用程式。

這些應用程式所用到的資料,已經成為一項珍貴的資產,同時也是企業經營不可或缺的一環。API 是取得這些應用程式資料的門戶與通訊管道,一旦遭到入侵,就可能對生產力、獲利能力和品牌地位帶來嚴重後果,包括:鉅額罰款、長期業務中斷,甚至是法律後果。

基於這些因素,API 已成為駭客主要的攻擊途徑。

此外,一套強大的 API 防護解決方案,也有助於企業隨時符合所有政府與產業相關的資料隱私權法律和規範,包括通用資料保護法 (GDPR) 和加州消費者隱私權法案 (CCPA)。

API 的首要資安風險是什麼?

隨著 API 的運用越來越普遍,網路攻擊的數量、頻率、精密度,以及其他 API 的資安風險也在不斷攀升。API 最大、最危險的一些資安風險包括:

  • 身分認證與授權遭到破解:這會讓駭客集團不需通過適當的認證就能存取 API,進而存取他們原本不該存取的功能或機密資料。此外,他們還會竊取登入憑證、API 金鑰或 API Token 來盜取帳號。
  • 組態設定錯誤:這會讓駭客經由漏洞來攻擊您的 API,例如,駭客可針對缺乏適當速率限制的 API 發動阻斷服務 (DoS) 攻擊與分散式阻斷服務 (DDoS) 攻擊
  • 加密問題:駭客會試圖攔截未加密的 API 通訊。
  • 影子與殭屍 API:在開發人員的不斷開發下,API 已經氾濫,導致有些被遺忘的老舊 API 正公開暴露在網路上而無人監控。由於這些 API 缺乏防護措施,因而成了駭客唾手可得的攻擊目標。
  • 異常的 API 請求:就算駭客再會偽裝,API 攻擊還是會留下線索,包括 SQL 資料隱碼攻擊 (SQL Injection) 與指令注入攻擊。

由於 API 攻擊越來越普遍,因此不論任何規模的企業都面臨著風險。光是這幾年,全球一些規模最大、最安全的企業都經歷過 API 遭駭客入侵,包括:Honda、Dell 和 T-Mobile。

2024 年,漏洞攻擊入侵了數億個 LinkedIn、Facebook、Snapchat、Duolingo 和 X (原 Twitter) 等服務的使用者私人帳號。

OWASP 的 10 大 API 資安風險

2023 年,開放網站應用程式安全計畫 (Open Web Application Security Project,簡稱 OWASP) 發布了一份最新的 10 大 API 資安風險 (Top 10 API Security Risks) 清單來協助企業發掘、了解並防範 API 最危險的資安威脅。這份清單包括:

  1. 物件層級授權遭破解,使得負責處理物件識別碼的端點暴露在外。

  2. 認證機制遭破解,使得歹徒竊取授權金鑰或冒充其他使用者的身分。

  3. 物件屬性層次授權遭破解,原因是物件屬性層次的驗證不完善或不確實。

  4. 透過分散式阻斷服務 (DDoS) 和其他攻擊無限制地消耗網路頻寬、記憶體、儲存空間、CPU 或其他資源。

  5. 功能層次的授權遭破解,因而產生可被駭客集團利用的存取與授權漏洞。

  6. 無限制存取敏感的業務流程,駭客利用自動化方式呼叫業務功能 API,例如:在線上購物或在社群媒體張貼評論。

  7. 伺服器端請求偽造 (SSRF) 漏洞,讓駭客避開防火牆和虛擬私人網路 (VPN),入侵可用來取得遠端資源的 API。

  8. 資安組態設定錯誤,讓 API 及其背後的系統暴露於惡意的入侵或攻擊。

  9. 不當的盤點管理,讓 API 中的端點暴露在外。

  10. 不安全的 API 消費方式,讓駭客透過第三方資料或服務來滲透 API。

API 防護使用了哪些工具?

API 防護解決方案結合了多種不同的工具、技術與最佳實務原則來保護 API 生命週期的每一階段,從設計、程式撰寫,到實作與維護。這包括:

  • 協助保護、管理及控管資料流的 API 閘道。
  • 防範資料失竊、外洩或濫用的加密通訊協定。
  • 管理存取授權的 API 金鑰或 Token。
  • 保護資料傳輸安全的傳輸層安全 (TLS) 通訊協定。
  • 保護 API、授權憑證與敏感資訊的應用程式防火牆。
API 防護工具示意圖。

API 防護最佳實務原則範例

每家企業在擬定 API 防護策略來保護資料和應用程式以防範已知及新興威脅時,有一些最佳實務原則務必遵守。

首先,企業應盤點所有現有的 API,找出並修正任何資安上的弱點、缺失或漏洞。

此外,也應建置並強制落實一系列嚴格的認證和授權機制,來監視和控管誰可以存取 API 及其內含的資料,包括:開放授權 (OAuth) Token、OpenID Connect (OIDC) 控管、API 金鑰,以及/或是 mutual TLS (mTLS) 等工具。

企業應設置進階加密措施來防止資料遭到竊取、使用或未經授權的存取。此外,還可採取速率限制、限流措施以及資料配額來防範 API 遭到濫用、超用或利用,保留頻寬、保護 API 後端,並防範 API 因 DDoS 或其他攻擊而遭到癱瘓的風險。

最後,所有 API 防護系統、工具和端點都應定期接受測試並持續監控,以掃描漏洞、發掘任何潛在的缺陷或組態設定錯誤,並確保 API 防護隨時保持完整與更新。

API 防護的下一步?

隨著 API 技術的演進,新的威脅、攻擊途徑以及資安風險將不斷出現。隨著企業逐漸透過 MCP (Model Context Protocol,模型情境通訊協定) 來導入更多代理式 AI 通訊,這一點也將變得更加重要。為了解決這些挑戰,API 防護可能將更加依賴人工智慧 (AI) 技術,例如:神經網路和機器學習

這些新的 AI 驅動工具將協助企業改善偵測及回應 API 資安威脅的能力,強化資料外洩與網路攻擊的防禦,並且事先預測及防範絕大多數威脅,不讓它們有機會造成永久性損害。

其他未來可能的 API 防護趨勢還包括:日益成長的持續性 API 資安評估需求、產業標準與最佳實務原則的落實,以及遵守適用的資料隱私權法規。像這樣的實務方法將有助於企業守護珍貴的資訊,並維持 API 的完整、安全及韌性。

哪裡可以取得有關 API 防護的協助?

Trend Vision One™ Cloud Security 能為雲端和混合雲環境提供全方位且領先業界的防護來防範資安威脅、網路攻擊以及其他風險。

Cloud Security 結合了即時的可視性與防護、持續性監控與評估,並與現有的防護和網路資安工具及技術無縫整合,提供您完整、無煩惱的防護來保護您的整個攻擊面,包括:雲端容器、工作負載、雲端資產,以及應用程式開發介面 (API)。

常見問題:

Expand all Hide all

API 是什麼意思?

add

API 是「Application Programming Interface」(應用程式開發介面) 的縮寫,它是能讓行動和網站應用程式能彼此互動、分享資料及溝通的後端框架。

我為何需要 API 防護?

add

API 防護能協助企業保護 API 免於網路攻擊,守護敏感、機密及專屬的資料免於遭到外洩或竊取。

能不能舉個 API 的範例給我?

add

我們每天會用到的 API 包括:讓您使用 PayPal 來支付網路購物的付款處理 API、讓您追蹤快遞或透過 Uber 叫車的 Google Maps API,以及讓您透過 Facebook 或 Google 帳號登入各種網站的登入 API。

API 防護如何運作?

add

API 防護能限制 API 存取,防止 API 資料遭到未經授權的存取來防範資料外洩與網路攻擊。

您如何透過 HTTPS 來保護 API?

add

網站 API 會使用 HTTP 協定來分享資料,啟用 HTTPS 可將分享的資料加密,並且保護「表現層狀態轉移」(REST) API 與 HTTP 用戶端之間的通訊。

保護 API 的最佳方式有哪些?

add

有各式各樣的工具可以用來保護 API,包括:速率限制、資料限流、授權與存取控管、結構 (schema) 驗證,以及 DDoS 防範。

API 認證與授權有何不同?

add

API 認證可確認 API 使用者的身分,API 授權可控管他們可存取哪些資料或服務。

OAuth 2.0 對 API 防護有何幫助?

add

OAuth 2.0 是一套業界標準的授權協定,可規範、限制或管理第三方用戶端存取 API 的方式。

API 閘道如何提升 API 防護?

add

API 閘道可保護 API 流量,當資料在 API 與用戶端或使用者之間流動時,API 閘道可認證並控管資料的存取。

我如何保護我的 API 端點?

add

API 端點可利用 API 閘道、API Token、OAuth 認證、零信任政策,以及 mutual TLS (mTLS) 加密等工具來加以保護。

相關文章