2022年第二季度API安全態勢研究:月均攻擊數量超25萬次

隨著互聯網技術的快速發展,API作為連接服務和傳輸數據的核心通道,需求正大量增長,API在企業的發展過程中也扮演著越來越重要的角色。然而,API巨大價值的背后也同時隱藏著不可忽視的安全風險。
永安在線日前發布《2022年Q2 API安全研究報告》(下文簡稱《報告》),報告數據顯示,2022年Q2季度API風險態勢依舊嚴峻,針對API的攻擊持續高發,被攻擊的API數量月均超過25萬,相比Q1明顯增長;API攻擊波及到政務平臺、智慧停車、數字藏品等多個行業。
在Q2季度,永安在線研究團隊也監測到了一系列因API安全防護不到位而發生的數據泄露事件,如多地政務系統遭惡意攻擊,攻擊者對政務系統中有缺陷的API進行攻擊,從而獲取公民身份證、手機號、姓名、住址等個人隱私信息,永安在線追溯到此類攻擊均出自于同一個黑產團伙;多個智慧停車平臺因查詢繳費API接口均存在安全缺陷而被攻擊,攻擊者大規模爬取停車信息以獲取個人隱私行蹤。
面對越來越多的API攻擊以及由此導致的數據泄露風險,企業除了已有的防御體系外,也需要針對性地構建API安全防護體系,其中風險情報是重要的組成部分,基于情報及早感
露風險案例
一、2022年Q2API 風險態勢
1. 網絡攻擊持續高發,API攻擊量月均超25萬
從Karma情報平臺捕獲到的數據來看,2022年Q2遭受攻擊的API數量月均超過了25萬,相比Q1大幅增加,其中,5月份的攻擊數量更是達到了29.4萬。

2. 營銷作弊仍是主要的API攻擊場景,數字藏品被攻擊熱度依舊高漲
永安在線情報研究人員根據捕獲到的針對API自動化攻擊的工具名稱做熱詞統計,從圖中可以看到:
1)“邀請”、“搶購”、“注冊”、“撿漏”等圍繞營銷活動的作弊攻擊工具數量最多的,意味著在Q2針對API的攻擊主要集中在營銷作弊場景;
2)“數藏”、“ibox”、“元宇宙”等與數字藏品相關的工具仍占據不少,可見針對數字藏品的攻擊熱度依舊高漲。

此類自動化攻擊會帶來大量的虛假用戶,短期內似乎“促進”了用戶增長,但這種虛假繁榮會嚴重阻礙企業甚至行業的健康發展,企業需要引起重視,及早發現及早治理。(注:感興趣的讀者可以閱讀Q1報告中詳細的案例分析。)
3. 惡意爬蟲針對API進行破解和偽造,房源、招聘等信息成重點爬取對象
惡意爬蟲是企業核心數字資產被黑產或競品竊取的主要方式之一。通過對Q2捕獲的惡意爬蟲攻擊流量進行分析,我們發現除了傳統的網頁爬蟲之外,還存在大量破解和偽造接口協議的API爬蟲。其中,房地產、招聘、出行等行業是這些惡意API爬蟲重點攻擊行業,房源、招聘、機票等信息成為了重點爬取對象。

相比于傳統的網頁爬蟲,API爬蟲更加難以檢測和防范,因為傳統的網頁爬蟲使用PhantomJS、Selenium等瀏覽器自動化技術的網頁爬蟲,可以通過檢測webdriver等方式來進行識別;
而API爬蟲通過破解協議,其發起的請求和正常的請求從內容上可以做到無任何差別。同時,這些爬蟲基本都會通過代理IP、秒撥IP平臺獲取大量用于攻擊的IP資源,從而繞過風控策略中針對IP請求頻率的限制,以及通過打碼平臺繞過圖片、滑塊等人機識別驗證碼。惡意API爬蟲對于企業反爬工作來說,無疑提出了更大的挑戰。
4. 利用API非法竊取數據,數字政務成為重點攻擊目標
通過Karma情報平臺,永安在線情報研究團隊在Q2發現了一個非法竊取數據的大型網絡犯罪團伙,該團伙利用政企單位線上業務API接口存在的缺陷,開發了數十款自動化攻擊工具,主要針對政務平臺、金融行業以及通信行業,非法竊取企業用戶和公民個人隱私數據。其中各地的數字政務平臺是該團伙的重點攻擊目標,在Q2就有超過30多個的數字政務平臺遭受惡意攻擊。

永安在線研究團隊分析,政務平臺、金融行業和通信行業遭受API攻擊的共性原因為:大部分平臺的API接口在設計上都存在安全缺陷,因此很容易被黑產惡意利用,導致大量用戶姓名、地址等敏感信息被泄露。(詳情可查看第三章節關于數字政務的案例分析。)
二、API安全缺陷分析
API存在安全缺陷是導致API攻擊的主要原因。報告基于永安在線API安全管控平臺Q2的流量審計結果,從危害性、可利用性、普遍性三個維度,列出了Q2需要引起重視的四類API安全缺陷。

1.未授權訪問
未授權訪問,屬于《OWASP API Security Top 10》中排名第一的“API 1:Broken Object Level Authorization(失效的對象級別授權)”,是危害最大的API安全缺陷之一,一旦被利用往往會導致嚴重的數據泄露。
前文提到的非法竊取數據的犯罪團伙,在攻擊中就是利用了API接口的未授權訪問缺陷,在接口請求中填入他人的賬號、身份、屬物等信息,在未取得任何授權的情況下,非法獲取到他人的手機號、身份證、地址等敏感信息。
安全建議
1)除非資源完全對外開放,否則訪問默認都要授權,尤其是訪問用戶的資源或者受限制資源;
2)通過白名單的方式來嚴格控制無需授權的API接口的訪問。
2. 允許弱密碼
允許弱密碼,屬于《OWASP API Security Top10》中排名第二的“API 2:Broken Authentication(失效的用戶身份認證)”。弱密碼缺陷是黑產盜取賬號的主要手段之一,從Q2捕獲的攻擊數據中,我們發現了大量的撞庫和密碼暴破攻擊,其中就存在弱密碼導致被黑產成功登錄賬號的情況。
攻擊目標以游戲公司,以及海外的一些數字錢包、數字銀行平臺為主,這些賬號被黑產控制后,會在極短的時間把里面的資產洗劫一空。
安全建議
1)除非在用戶注冊、登錄、密碼重置等相關場景中對輸入密碼復雜度進行檢查,建議密碼長度不低于8位,且包含大小寫字母、數字及特殊符號;
2)通過密碼不允許設置為重復字符串、郵箱、生日等關聯信息;
3)引入一段時間內強制修改密碼機制。
3. 錯誤提示不合理
錯誤提示不合理,在Q1的報告中我們沒有將其歸于《OWASP API Security Top 10》的某個風險,經過謹慎的考慮,我們認為其屬于“API 3: Excessive Data Exposure(過度的數據暴露)”。主要基于以下兩點原因:
1)移動互聯網時代,絕大多數平臺的賬號就是用戶的手機號,不合理的錯誤提示,會暴露手機號在哪些平臺注冊過,這屬于個人的隱私數據,是沒必要且不應該暴露的;
2)該缺陷已經被黑產廣泛運用于“掃號”(遍歷手機號)攻擊中。篩選出來的手機號,一方面可以提高黑產實施進一步攻擊(撞庫、密碼暴破等)的效率,另一方面,黑產也會在黑市上出售這些信息,導致手機號主遭受廣告營銷騷擾甚至電話詐騙。
雖然很多企業對注冊和登錄API接口的錯誤提示信息做了模糊處理,如“賬號或密碼錯誤”,使得黑產無法進行“掃號”。但黑產還會通過其他一些API接口,如短信驗證碼發送接口、密碼找回接口等尋找突破口。下圖就是黑產利用某個奢侈品交易平臺的密碼找回接口,大規模實施“掃號”攻擊:

如果手機號未注冊,提示“該賬戶不存在”;如果注冊過,則返回執行下一步的路徑,黑產據此就能暴破出平臺上所有注冊用戶的手機號。
安全建議
1)針對登錄、注冊、驗證碼發送、密碼找回等接口的錯誤提示信息進行模糊化處理,比如返回“用戶名或密碼不正確”;
2)通針上述接口,對于調用量過大及調用頻次過高等異常行為加強監控。
4. 云服務配置錯誤
云服務配置錯誤,在《OWASP API Security Top 10》中屬于“API 7:Security Misconfiguration(安全配置錯誤)”。在云服務廣泛運用的同時,由于開發或運維人員的疏忽,導致對外暴露了不應公開的云服務API接口,攻擊者通過這些API接口,可以輕易獲取敏感數據或執行敏感操作。
永安在線API安全管控平臺在Q2針對常用的云服務及組件,其可能存在的配置錯誤缺陷,進行了全面的梳理和審計。從審計結果來看確實存在不少問題,比如一些會造成嚴重危害的配置錯誤仍然存在于部分企業后臺的云服務當中。其中比較典型的有:
- Spring Boot Actuator 配置錯誤缺陷:Actuator是Spring Boot提供用來對應用系統進行監控的功能模塊,使得開發者可以很方便地對應用系統某些監控指標進行查看、統計等。如果開發人員對Actuator的進行了錯誤的配置,或者使用了較低的版本(默認存在未授權訪問),攻擊者可直接通過Actuator的API接口獲取到應用系統中的監控信息,導致信息泄露,甚至數據庫、服務器被接管。
- Elasticsearch 配置錯誤缺陷:Elasticsearch是一個基于Lucene庫的搜索引擎,在Elasticsearch 7.x 下,默認允許未授權訪問。如果開發者使用了該版本的Elasticsearch,且進行了錯誤的配置,攻擊者可直接通過Elasticsearch的API接口獲取到敏感數據,甚至可以對數據進行刪除和篡改。
安全建議
1)全面排查使用的組件/服務的版本,盡量升級到最新版本;
2)全面檢查配置是否正確,避免出現組件/服務暴露未授權訪問API。
四、API風險案例分析
1.數字政務平臺API風險案例
——數字政務線上化趨勢加深,API安全風險隨之而來
近年來,政務平臺一直在追求業務轉型,由傳統行業轉向互聯網+以及云業務發展,許多API接口由內網轉向外網,由此造成數據安全風險敞口,這些接口一旦遭受惡意探測與爬取,將造成大量的敏感信息泄露。
近期,永安在線API風險情報平臺就監測到針對多個政務系統的惡意攻擊事件,攻擊者利用政務系統注冊、查詢等業務場景存在API邏輯缺陷進行攻擊,從而獲取用戶身份證、手機號或姓名、住址等個人隱私信息。通過對多起政務系統攻擊事件進行溯源分析發現,這些攻擊均出自于同一個黑產團伙。
從該黑產的作惡流量來看,目前這個黑產團伙仍在對多個省份的政務系統進行攻擊,其中包括教育、醫保、疾控等多個政務行業。數千萬用戶的個人信息有可能因此被泄露,其中包括公民手機號、個人身份證、醫保信息、家庭信息等敏感信息。
案例1:
以某市醫保政務平臺為例,永安在線監測到不需要任何授權下,攻擊者在API請求中填入身份證號,即可獲取對應用戶的醫保信息,包括姓名、地址、醫保繳納情況等。

黑產團伙攻擊后執行返回的結果
而造成這種數據泄露的原因正是API自身的安全隱患,由于該平臺開放的數據查詢接口沒有做嚴格的身份校驗和訪問控制,攻擊者通過修改請求參數即可獲取到他人的醫保信息。
案例2:
永安在線研究團隊發現某地區的新冠疫苗接種信息查詢后臺,無需任何授權的情況下,攻擊者在API請求中填入身份證號,就能查詢到用戶的姓名、手機號等隱私信息。

政務系統緊密聯系民生,平臺上保存著海量的公民隱私數據,這些信息包括姓名、電話、地址、身份證號等個人隱私信息,一旦被泄露,就很有可能被不法分子利用,造成不可估量的嚴重后果。因此,政務平臺的API安全防護已經是勢在必行,必須加強政務系統的安全保障措施,確保公民信息的安全。
安全建議
1)限制政務平臺信息查詢的接口只有登錄后的用戶才可以查詢,并且只有當前用戶綁定的身份證與查詢的身份證一致時才能夠查到用戶個人信息;
2)如不可避免直接通過身份證查詢用戶個人信息,建議該接口不要暴露到互聯網,只允許內網訪問,并且限定人員的訪問權限,做好日志記錄。
2.智慧停車平臺API風險案例
——智慧停車信息泄露嚴重,API安全防護刻不容緩
近幾年,智慧停車平臺蓬勃發展,讓城市生活更加便利的同時,隨之而來的安全問題也逐漸暴露。
案例:
永安在線研究團隊從蜜罐監測到的流量中,發現大量針對多個智慧停車平臺的攻擊行為,而這些智慧停車平臺覆蓋了市民能接觸到的大多數停車場。

通過分析發現,這些平臺的查詢繳費API接口均存在未授權訪問缺陷,攻擊者利用該缺陷爬取了大量的用戶停車信息。以其中一個被攻擊的平臺為例,黑產團伙通過代理IP平臺頻繁切換IP,對該平臺的查詢繳費API接口進行持續攻擊,在輸入車牌號信息后,如車輛無入場,返回“車輛未入場”;如車輛有入場,則會返回該車輛相關停車信息,包括停車時間、地點、資費情況等。

攻擊代碼片段:

也就是說,黑產團伙利用該API缺陷,任意輸入一個車牌號,在不需要車主授權的情況下,就可以查詢到車輛停在哪個停車場、入場時間等信息。這些信息往往會被黑產在黑市上進行售賣并獲利,比如近期在黑產TG群里,就有賣家提供車輛信息、定位等查詢服務。

而別有用心的犯罪分子可以根據這些信息順藤摸瓜獲取到車主的家庭住址、工作單位等,給車主及家人的生命財產安全造成威脅,后果不堪設想。
因此,智慧停車平臺需要加強自身的安全建設,尤其是針對API的安全建設。我國現行法律法規也明確要求平臺切實履行主體責任,如我國個人信息保護法規定,個人信息處理者應當對其個人信息處理活動負責,并采取必要措施保障所處理的個人信息的安全。
安全建議
1)限制車輛停車的信息接口需要先進行身份驗證,比如綁定微信號、手機號等才可以進行查詢;
2)對接口查詢做好頻率限制,比如短時間內單個身份查詢的車牌號不能超過2個。
3.API接口驗證碼泄露風險案例
——短信驗證碼泄露,身份驗證形同虛設
短信驗證碼是移動互聯網用戶進行注冊或登錄的重要憑證之一,一旦發生泄露,很有可能會被不法分子惡意利用。
一般來說,移動端App都支持手機號+短信驗證碼進行注冊或登錄,如果短信驗證碼只會發送到用戶所持有的手機上,這是沒有安全問題的,然而部分開發人員缺乏安全意識,將短信驗證碼通過API接口直接返回到前端,并在前端進行驗證碼的比對,黑客可以通過抓包等方式輕易獲取到驗證碼,從而偽造任意用戶的身份進行注冊和登錄。
這是一個非常典型的業務邏輯缺陷,在永安在線API安全管控平臺的Q2審計結果中,我們就發現了這樣的案例。某教育類APP的驗證碼發送API接口,在返回體中泄漏了完整的驗證碼內容。下圖為發送到用戶手機上的短信驗證碼:

API接口返回到前端的響應體中,也出現了同樣的驗證碼:

一旦遭受攻擊,黑客可以利用泄露的短信驗證碼登錄任意用戶的賬戶,甚至篡改密碼,用戶則會面臨個人信息泄露甚至財產損失的風險。
安全建議
1)避免將短信驗證碼信息暴露到前端;
2)驗證碼校驗功能需要將用戶輸入的驗證碼傳遞到后端,由后端完成校驗后將結果返回到前端。