API或將成為下一個大型網絡攻擊向量!
如今,隨著對企業網絡的網絡攻擊變得越來越復雜,很多企業通過投資最新的防火墻、數據和端點保護以及入侵防御技術來提高周邊安全性。作為回應,黑客正在走上防范阻力最小的道路,并尋找新的開發途徑。許多安全專家認為,下一波的黑客攻擊將通過利用應用程序編程接口(API)來實現。
實際上,網絡攻擊者在計劃攻擊時已經瞄準了API這個目標。面包店咖啡連鎖店Panera Bread公司的數據泄露就是一個很好的例子,該公司在其網站上留下了未經驗證的API端點,允許任何人查看客戶信息,如用戶名、電子郵件地址、電話號碼、信用卡的最后四位數字、出生日期等。最終,在8個多月的時間內有3700萬客戶數據被泄露。這就提出了一個問題:如何最大限度地減少與API相關的不斷增長的網絡安全風險,而不會妨礙他們在敏捷開發和擴展功能方面提供的好處。
API在應用程序開發中的應用已經成為新的事實標準,開發人員利用從第三方提供的服務集成功能,而不是從頭構建所需的全部功能。這為新產品和服務提供了更靈活的開發流程。根據One Poll公司的調查研究,每個企業平均管理363種不同的API,其中這些企業的三分之二以上(69%)將其API向公眾和他們的合作伙伴開放。開發人員可以通過搜索諸如API Hound之類的API庫來擴充他們的代碼,API Hound使用機器掃描程序來查找其50,000多個API,或ProgrammableWeb,它維護著世界上最大的人工策略API目錄,現在已超過17,000個。
雖然API支持用戶已經習慣了這種對企業數字化轉型至關重要的交互式數字體驗,但是它們為黑客提供了多個可以訪問企業數據的場所,甚至可能會導致大規模業務中斷。而利用API的常見攻擊方法包括:
- API參數篡改 - 黑客通常使用這種技術對API進行反向工程或獲得對敏感數據的進一步訪問。
- 會話Cookie篡改 - 這些攻擊嘗試利用cookie來繞過安全機制或向應用程序服務器發送錯誤數據。
- 中間人攻擊 - 通過竊聽API客戶端和服務器之間的未加密連接,黑客可以訪問敏感數據。
- 內容操作 - 通過注入惡意內容(例如,中毒JSON Web令牌),可以在后臺分發和執行漏洞利用程序。
- DDoS攻擊 - 通過發送無效的輸入參數,可能會使用編寫不佳的代碼來占用計算機資源,從而導致API支持的Web應用程序中斷。
為了盡量減少他們對基于API的威脅的暴露程度,組織應采取以下預防措施:
1. 思維安全
不幸的是,DevOps安全(或者現在所稱的DevSecOps )在軟件開發過程中經常被低估,包括確保面向公眾的API。開發人員需要考慮整個開發過程中API使用的安全影響,其中包括API可用于惡意目的的方式。
保護API的基本組成部分在于實現可靠的身份驗證和授權原則。對于API,開發者通常使用通過外部過程(例如,在注冊API時)或通過單獨的機制(例如,OAuth)獲得的訪問令牌。該令牌與每個請求一起傳遞給API,并在處理請求之前由API進行驗證。
2. 應用通用的行業安全最佳實踐和標準
遵守編碼最佳實踐并密切關注最常見的API漏洞(例如,SQL/腳本注入和身份驗證漏洞)應成為開發人員和DevSecOps人員的核心最佳實踐。開放Web應用程序安全項目(OWASP)是此類信息的良好來源。
3. 通過API網關進行監控
將不同的API存儲在應用程序代碼庫中時,API網關可用于監控、分析和限制流量,從而將DDoS攻擊的風險降至最低,并執行預設的安全策略(例如,身份驗證規則)。One Poll公司表示,80%的組織使用公共云服務來保護API背后的數據,大多數企業使用API網關(63.2%)和Web應用防火墻(63.2%)的組合。
采用這些DevSecOps建議可以最大限度地降低與API暴露相關的安全風險,并使應用程序免受網絡安全漏洞的威脅。