API安全的最大威脅:三體攻擊
對于開發人員來說,OWASP API TOP10威脅列表堪稱API安全的“圣經”。2019年OWASP根據API風險分析以及安全從業人員的現場經驗編制了API TOP10威脅列表,清楚地劃分了不同的API攻擊類型。
但是今天,OWASP API威脅列表正面臨新興威脅的挑戰,攻擊者的工具、技術和程序(TTP)不再遵循威脅列表中的明確定義。在最新的API攻擊中,攻擊者們正在組合使用多個攻擊手段。
三體攻擊開始流行
2022年上半年,研究人員首次監測到三體攻擊(trinity,也稱三位一體攻擊),該攻擊同時使用了OWASP列表中的三個TTP:中斷的用戶身份驗證(API2)、過度數據泄露(API3)和不當資產管理(API9)。雖然安全分析顯示這些攻擊只占監測到的API攻擊數量(1億次)的一小部分,但三體攻擊數量在2022年全年保持穩定,這至少證明該攻擊是有成效和回報的。
三體攻擊之所以強大,是因為攻擊者同時使用多種攻擊TTP,打出更具威脅的“組合拳”。例如,攻擊者在憑據填充攻擊中會同時利用中斷的用戶身份驗證(API2)與過度數據泄露(API3),從而通過API竊取大量個人數據。
至于不當資產管理(API9),一個很好的例子是影子API(那些啟動后被遺忘或忽視,實際上不可見的API)。此類API通常容易受到攻擊,因為它們不在安全團隊的雷達上。攻擊者可以在發起撞庫攻擊之前,使用已知的API模式輕松發現它們。
三體攻擊對于很多企業來說都是一個棘手的難題,因為這些企業缺乏攻擊面的可見性,無法清點他們的API并保持資產列表的更新,也不會監控那些貌似合法的海量攻擊請求,因為這些企業的API安全系統通常不會使用基于行為的分析進行監視。
如何防御三體攻擊
企業的API基礎設施隨著時間的推移而快速增長,因此很多企業開始使用并依賴監控和檢測Web應用程序(如Web應用程序防火墻(WAF))的安全解決方案。這些解決方案使用基于簽名的警報機制,因此無法檢測和阻止三體攻擊。另外一些企業依賴bot檢測工具,但這些工具使用JavaScript來確定和阻止攻擊。RESTful API使用JSON或XML,而不是JavaScript,這意味著此類API不能被bot軟件監控。
三位一體攻擊通常有一個bot組件,能夠在目標基礎設施中自動執行快速枚舉。由于WAF對從API發出合法請求的大量攻擊視而不見,而bot解決方案無法讀取API有效負載,二者都無法有效檢測三體攻擊。企業對bot安全和API安全之間的關系往往缺乏理解,而這兩者通常被安全供應商說成是兩個單獨的問題。
這種人為的“分治”正中攻擊者的下懷,API安全方案必須與bot檢測和緩解方案結合才能有效防御三體攻擊。
API安全游戲規則改變者
三位一體攻擊表明,攻擊者越來越擅長分析每個API的工作方式,這是API安全風險的重大升級。目前,許多三體攻擊都沒有被發現,也沒有有效的防御手段,企業必須改變過去的API安全策略和方法。
只有覆蓋整個API安全生命周期,企業才有可能保護其API防御類似三體攻擊的新興威脅。從API開發階段的安全測試,到將API作為使用運行時清單進行跟蹤和管理的生態系統的一部分進行管理,再到尋找攻擊模式的主動防御,都需要基于全生命周期的方法。