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