導入 API 整體安全防護成功關鍵

今年純網銀建置如火如荼的布局下,在現今整個開放銀行運作模式裡有了全新的商機。銀行擁有消費者相關金融資料,經過消費者的同意,透過應用程式介面 (API) 將相關金融資料與數據資料開放給第三方 TSP 服務業者使用,發展新型態的金融服務與場景;銀行也能以第三方服務業者收到的消費者回饋與數據為依據,提供更符合消費者需求的金融產品。
20200606124336

今年純網銀建置如火如荼的布局下,在現今整個開放銀行運作模式裡有了全新的商機。銀行擁有消費者相關金融資料,經過消費者的同意,透過應用程式介面 (API) 將相關金融資料與數據資料開放給第三方 TSP 服務業者使用,發展新型態的金融服務與場景;銀行也能以第三方服務業者收到的消費者回饋與數據為依據,提供更符合消費者需求的金融產品。

在過去,金融資料涉及個人隱私,資訊的流通均受到法令或金管會的嚴格規範,要提供跨產業金流服務是相當麻煩且敏感的議題。當開放銀行的時代到來,來自新創或各產業的 TSP 服務業者,就可以發揮所長,靈活運用獲得解禁的金融資料,為消費者提供多元的服務與應用場景。消費者也可以串接該銀行的帳戶資料與手機的記帳資料,消費紀錄、資產狀況可一目瞭然。因此 API 資訊交換的安全風險成為整體資安防衛的優先考量,也是開放銀行營運的風險之一,必須達到完善且全面的安全管理,才能提升金融產品營運效率與消費者信心。API 安全為什麼重要API 技術在企業運營方式上產生了巨大的變化。 作為促進創新的主要資源,API 為公司提供了前所未有的自由,使其能夠開發新產品,提供新服務並提高其在行業中的聲譽。 最近,越來越多的金融機構開始嘗試 API 銀行業務。 這是因為他們有潛力改變業務形式並改善銀行和客戶的體驗。 如果銀行繼續朝著這種技術發展,那麼行業將開始看到處理資料的方式以及服務整合方式的變化。這可以提高各地銀行的成本效益和效率。API 安全應該具備的要素1.高安全性資料傳輸方式(HTTPS / TLS 1.2 以上)

這是用於透過 Internet 傳輸金融與消費者數據的加密協議。 較舊版本的 TLS 與 SSL 的版本不再安全,應避免或謹慎調校使用。2.反向代理服務 ( Reverse Proxy )

反向代理服務可以提供負載平衡並進行單點故障轉移,提供並創建對銀行 API 的單點訪問,並最大程度地減少潛在的異常使用 API 或中斷風險,例如 DDoS 攻擊。反向代理服務還提供深層的可視性和控制,以確保客戶端和服務器之間能夠提供平穩的安全交易行為。3.客戶憑證

客戶憑證使消費者不可能在沒有客戶憑證的情況下向 API 服務器提交請求。 這是通過執行一連串標準的規範來實現的,在該標準中,所有請求都必須與客戶憑證一起發送,確認交易的真實性。4.進階身份驗證模型,例如 OAuth 2.0

應提供 OAuth 2.0等進階身份驗證模式。從以往的紀錄來看,API 使用基本的身份驗證,要求用戶為每個請求提供該用戶 ID 與密碼。用戶 ID 與密碼未加密或分散式存放。 如果該用戶 ID 與密碼被盜,則會帶來風險。OAuth 2.0 提供了更好的解決方案,因為它包含了驗證與識別過期的請求。5.惡意機器人 API 請求的辨識

基於多種機器人的防護與辨識機制,透過自動化程式特徵碼資料庫,快速驗證與識別惡意機器人存取與暴力攻擊的消耗,對於在整個API請求的過程中,更具備進階 JS Challenge 挑戰機制與圖形驗證碼,確保惡意機器人程式無法繞過檢測,使得 API 服務器不被機器人存取與攻擊,造成資安與效能上的影響。 F5 資安框架如何因應 API 安全的嚴苛要求目前為了解決越來越多的企業在其軟體產品中部署潛在敏感的 API 的問題。這些 API 用於內部任務並與第三方交互。不幸的是,許多 API 已經通過嚴格的安全性測試,無法進行重定向攻擊。乃至於 2019 OWASP API 安全項目發布,透過檢視不安全的 API 潛在風險並說明如何減輕這些風險來為軟體開發人員和安全評估人員提供價值。 F5 API 數位資安框架八大安全檢視要點 :

1.實施與解析內容配置文件(JSON,XML,WebSocket等)Format 格式異常檢查

2.惡意特徵碼檢查:需檢測 API 內文參數名稱與參數數值是否包含 SQL Injection、XSS、Command Injection、Detection Evasion、Parameter Tempering 等攻擊特徵

3.防止惡意機器人 (Bot) :檢視 API 請求是否來自惡意機器人程式,需具備惡意機器人特徵辨識能力,並解讀惡意機器人請求內文與數據

4.行為 DDoS 檢測和預防:具備 API DDoS 請求防護,具備多種閥值檢測機制,例如:依據 Source TPS、Behavior DDoS 時間區間,成長量等閥值檢測機制

5.API 速率控制:具備API請求速率控制,例如:依據來源、路徑、請求方式 (GET/POST…) 或特定參數等速率請求控制

6.路徑和參數控件:具備請求路徑與參數等 ACL 控制,並提供整合驗證授權後,可依據身份驗證授權結果進行 API 請求 ACL 控制

7.防止格式錯誤的請求與解析程序的漏洞利用:

 Example:確認 API 格式類型異常檢測,XML 格式檢查: 

 Maximum Document Size、Allow DTDs、Maximum Elements、Allow External References、Maximum Attribute Value Length…等其他向次檢查

 Example:確認 API 格式類型異常檢測,JSON 格式檢查: 

 Maximum Total Length Of JSON Data、Maximum Value Length、Maximum Structure Depth、Maximum Array Length…

8.提供 API 參數名稱與參數數值,應用層級加解密機制,例如針對特定參數名稱或參數數值進行加密傳送至用戶端或伺服器端,資料回傳後進行解密而後將安全數據傳遞至 API 伺服器