三個原因導致API安全問題頻發
近年來,API作為在移動互聯網時代中連接數據和應用的重要通道,承載著越來越復雜的應用程序邏輯和越來越多的敏感數據。正因如此,API也成為黑產的重點攻擊目標,API遭受攻擊的事件屢見不鮮并影響巨大。這也讓企業越來越意識到需加強API的安全管控來防控風險發生。但目前企業對如何采用正確的路徑來搭建API安全防護體系,仍然存在不少誤區。
在長期對企業業務安全跟蹤研究中,我們發現導致企業在API 安全性方面遭遇問題的主要原因有三個。無論你的企業目前的API防護處在哪個階段,都需要去了解這些原因才能避免API安全問題的發生。
一、API安全風險意識薄弱
許多企業到現在為止都不認為自己的API存在風險。原因在于承載數據交互的API往往由于其“不可見”的特點,其存在的安全問題就很容易被企業忽略。同時,API 的可見性通常取決于人工操作,人工操作很難提供完整的API信息,而公司內部人員的不斷變化及業務的快速迭代更新,使得API的可見性和管理更具挑戰。這也致使許多企業對API安全管控還存在以下幾種思維誤區:
01 我們沒有太多API,不存在管理問題
許多企業實際上并不清楚自己擁有多少API,通常只會關注到在頻繁使用的業務API,一些歷史系統的API和老版本的API很容易就被忽略掉,而正是這些被遺忘的影子API和僵尸 API 存在著極大的安全風險。
永安在線在幫助眾多客戶進行API資產梳理中發現,客戶提供過來的API文檔與梳理出來的 API 進行比較,有明顯的數量差距。如,某金融客戶提供的文檔中只有100多個API,但經過永安在線API識別引擎的梳理后,得出的API總量有500多個,包含從V1到V8共八個歷史版本的API,其中一些老版本中的API攜帶著極其敏感的數據,如果沒有進行深度的API資產梳理,安全團隊根本無法了解 API 真實資產情況,也意識不到將會帶來數據暴露風險。
02 我們的API都在內網,所以很安全
在許多企業看來,他們所有的 API 都在內網環境中,所以很安全。現實情況是,API 比你想象的更加公開。研發人員常常會因為測試便利、啟用第三方開發人員訪問以及為合作伙伴演示等不經意原因向外部公開 API。如果在安全團隊不知情的情況下暴露所有這些情況,則會帶來重大風險。
03 API流量并不多,不會暴露任何重要信息
從本質上講,API 已是獲得各種高價值服務和敏感數據的重要途徑。有些API 的流量可能較低,但仍是業務的關鍵部分,并且這些類型的 API 很可能攜帶著敏感數據,這就需要安全人員清楚了解攜帶敏感數據的API是否應該攜帶,其數據處理方式是否合法以及涉敏數據是否被惡意使用等。
比如,忘記密碼這類API的流量往往很低,但卻是很多黑產攻擊的目標,原因就在于這個API可以讓黑產通過撞庫的方式輕易拿到用戶信息。由此可知,攻擊者有時候并不只是攻擊流量大的API,他們關心的是攻擊目標所攜帶的價值。
04 攻擊API很難
許多人認為 API都隱藏在幕后,因此在某種程度上是相當安全的。現實情況是,與傳統 Web 應用程序相比,API 本質上暴露了應用邏輯和更多數據。攻擊者有多種方法來找到更多的API甚至隱藏的API,如逆向APP、分析JS、小程序反編譯等,進而使用微妙的方法繪制 API 地圖、了解邏輯并查找漏洞,實際上攻擊API的成本和技術門檻都不高。
如下圖,黑產利用網絡上成熟的工具wxappUnpacker反編譯小程序,某小程序在10分鐘內就被完成反編譯,得到所有API。

再通過自動化請求這些API接口,進一步發現了某些API接口存在未授權訪問,并返回了敏感信息,很輕松就獲取到公司及聯系人等敏感信息。從這個例子,就能清楚的看到整個攻擊過程不僅耗時短,而且基本沒有過高的技術門檻。

二、對傳統安全工具的保護過度自信
API 和 API 漏洞絕不是一成不變的。然而,許多企業仍然依賴傳統安全工具,如 API 網關和 Web 應用程序防火墻 (WAF) 以及傳統的API安全保護方法,這些方式目前為止均不能對API風險進行準確感知和防御。2019年底,OWASP發布了API 安全問題TOP 10,這份榜單包含了70%的新威脅,與Web 安全問題 Top 10相比,就突出了API與傳統Web應用程序的區別。
API 網關通常采用如身份驗證、授權、加密和速率限制等方式進行安全防護,這些方式在一定程度上是可以保護應用的關鍵部分,但還不足以抵御新出現的 API 安全威脅。
比如身份驗證,其為應用程序提供的保護力實際上不高。對于設置帳戶的應用程序,只需幾分鐘,攻擊者就有權查看和調查 API,僅憑身份驗證并不能保護更多受限制的應用程序。此外,糟糕的密碼做法、泄露的憑據和網絡釣魚也都會導致僅依賴于身份驗證的風險。在Salt 發布的《API 安全狀況報告》中研究發現,96% 的漏洞發生在經過身份驗證的 API 上,足以表明僅靠身份驗證是不夠的。
其次是限速。它確實可以幫助阻止一些攻擊,如 DDoS、憑據填充和機器人活動。但是,攻擊者也可以用很多方式來避免速率限制。如可以使用秒撥機運用大量代理lP進行攻擊,秒撥地址總數巨大,秒撥ip地址可作到秒級轉換。先不說防御方是否能通過限速大量阻隔lP的post請求,在現實情況中,許多用戶也會進行頻繁的訪問,甚至IP也混在秒撥IP庫中,進行限速就會造成對普通用戶的誤傷,容易遭到客訴。這就讓限速這種方式受制性很強。
通過授權的方式防護也是常用的,但要 100% 進行正確的授權很困難。OWASP API 安全十大威脅中最常見的漏洞就是破壞對象級別授權 (BOLA),背后正是利用了錯誤配置的授權。隨著目前API 和 API 邏輯的復雜性不斷增加與快速迭代的情況下,只會使得授權更難以正確和維護。?
一些企業認為 API 只是另一個應用程序,因此可以擴展諸如WAF 之類的工具就能有足夠的保護。許多 WAF 供應商也在其營銷文章中都提到了 API,表示WAF 可以保護 API 免受威脅。但事實上,WAF具有有限的架構,并不能防御針對 API 邏輯漏洞形成的攻擊。這些攻擊存在于API業務邏輯當中,具有獨特性,并且API幾乎每天都在快速迭代,WAF難以及時更新規則來進行有效防護。
此外,使用傳統的API安全產品也存在天然的技術缺陷。傳統API安全產品的實現方式是基于已知特征和規則進行風險審計,在這種技術路徑下的缺陷在于行為特征規則越復雜,規則的可依賴性就越低。由于業務的不確定性和持續迭代特點,會讓行為特征本身的可依賴性降低,這使得無法直接判定風險,且會產生較高的誤判率。
三、過度依賴開發團隊來解決安全問題
近年來,采用 DevOps 進行研發的企業已經實現了開發周期效率的提升。因此,企業也希望開發團隊能夠直接完全解決安全問題,他們也認為API的安全性是開發團隊應該在開發過程中就去解決的,否則應用程序將實現不了真正的安全。
我們在海外安全機構salt發布的《2021 年 API 安全狀況報告》中也看到了這一觀點,其中 36% 的受訪者表示開發人員或 DevOps 團隊對保護 API 應負有主要責任。部署前的工作包括從安全編碼最佳實踐、代碼掃描和手動測試所有內容。API 安全狀況報告還顯示,91% 的受訪者在 2020 年經歷了 API 安全事件,證明這些 DevOps 安全實踐雖然重要,但遠遠還不夠。
首先,開發人員并不是攻擊者,他們更專注的是應用程序功能的開發。在暗處的攻擊者通常會以意想不到的方式攻擊應用程序。需要兼顧快速交付代碼的開發人員無法有效地轉換到攻擊者的心態去消除所有潛在的漏洞。
其次,世界上沒有 100% 無錯誤的代碼。因此,開發人員也會在代碼進入應用前使用代碼掃描器和利用滲透測試來識別潛在漏洞。但這些工具和實踐都有其局限性,并且由于成本和復雜性,一般的企業一年都做不了幾次滲透測試,而API不斷快速在迭代,可以說很多代碼的各個方面都很少經過測試就上線了。
此外,開發人員也沒有太多的時間來關注API整體安全性。在數字化浪潮下,代碼迭代的越來越快,API承載的邏輯越來越復雜,在版本快速迭代的要求下安全審計工作全部跟上是很困難的,到最后的上線時點前首要任務也只能測試主要應用或特定功能領域的安全性,很難覆蓋到全部。
還有一個重要因素是,很多時候攻擊者是利用每個API邏輯中的獨特漏洞進行的攻擊,屬于那一個API獨有的邏輯漏洞。許多掃描工具都依賴于已知規則和行為識別漏洞,這種方法都很難識別出唯一的邏輯漏洞。即使用自定義和人工手動工作,如滲透測試,也很難識別到邏輯漏洞,因為其中許多漏洞僅在運行時間出現。
企業該側重考慮什么?
更優的API安全防護思路
01 API資產全貌梳理,準確掌握API現狀
正如你不能給予別人你沒有的東西,你也不能對不可見的API施加安全策略。因此,如果你并不知道企業所有的 API資產情況,則第一步就是需要清晰梳理出存在哪些API以及API涉敏情況等。上文已提到人工管理方式對于歷史版本API、加密API、影子API等難以全量發現。使用像永安在線API安全管控平臺這樣的自動化工具,將更有助于企業對API資產的精準管控。永安在線研發的API識別引擎,能夠自動和持續地發現 API(包括已知和未知的 API)并創建完整的API目錄,并在 API 發生變化時保持對 API 的真實狀態的洞察;也可實現自動化檢測API傳輸中的數據涉敏情況,分級分類敏感數據API,進行有針對性的保護及保障合規使用。
02 重視情報的價值,補足未知風險感知能力
誠然身份驗證、授權、加密和頻率限制在保護 API 方面依然在發揮重要作用,但它們顯然是不夠的。而像依賴已知特征和規則審計風險的傳統API安全產品,則難以對新型的未知風險做到提前感知,極易產生誤判、漏判。
永安在線API安全管控平臺通過精準情報為業務建立API安全基線,并結合人工智能和數據分析技術,構建風險檢測模型。誤判率低,可用性高,可及時全面感知內外部API風險。基于精準預警輸出的攻擊者IOC情報,可以聯動WAF或風控系統等快速處置攻擊風險。
精準情報來源于永安在線長期運營已建立起的業務風險黑產情報庫,涵括黑產工具情報、黑產資源情報、黑產交易情報、黑產輿情情報等。豐富的情報收集渠道可以對暗網、網盤、在線文庫、代碼托管、群聊論壇等黑灰產通道進行全傳播鏈路的全方位監測。再結合人工智能和數據分析技術能實時對API風險進行預警,指引安全團隊及時進行防御治理。同時,基于情報能夠外部溯源攻擊源頭的產業鏈上游團伙,還原攻擊場景及攻擊目標;內部溯源違規操作賬號和API,還原攻擊路徑。為企業進行下一步的法務側跟進追責和提供可靠的依據。
結語
API雖然不為大眾所知,但在技術、開發人員眼里則是“必需品”,是企業數字化戰略的基石。可以預見,API在今后將繼續扮演連接用戶前臺與后臺服務的關鍵橋梁作用,切實保障這些橋梁足夠安全、足夠可靠,毋庸置疑是確保數據安全的重中之重,企業應當提起更高的重視。