API安全面臨的主要挑戰有以下方面:
API廣泛使用帶來攻擊面擴大的挑戰:API技術的產生是為了解決不同組件或模塊之間的標準化通信交互問題,隨著互聯網上業務種類的不斷增加,出現了以API為中心的API經濟生態。在這個生態系統內,API能力提供者作為平臺能力支撐方和運營者,通過API的形式對外開放業務能力,吸引第三方廠商或合作伙伴加入此生態系統。開放的業務能力越多,API暴露的攻擊面就越大;參與生態構建的第三方廠商越大,API使用范圍越廣泛,API暴露的攻擊面也就越大。
API安全實踐經驗缺失的挑戰:對于使用API技術的企業來說,使用某項技術是為了解決某些問題,以期望得到更高效的業務能力,但因技術人員對使用某項技術帶來安全風險往往理解不夠深刻。尤其是在當前互聯網業務競爭十分激烈,版本更新迭代非常頻繁的情況下,應付API功能的開發已經很疲憊,加上團隊內部或企業內部缺少安全經驗豐富的人員來對研發過程進行監督或指導,導致開發出來的API存在安全缺陷。而企業缺少API開發過程中的相關工具、平臺以及保障機制,更無法從組織層面指導API安全實踐的開展。
外部環境變化帶來的合規性挑戰:近幾年,隨著國家層面網絡空間治理的不斷深入,滿足合規性要求成為每一個企業正常業務開展的必要條件。
組織經常低估API風險:人們通常會假設程序會按照想象中的過程運行,從而導致API被攻擊的可能性以及影響被嚴重低估,因此不去采取充分的防護措施。此外,第三方合作伙伴系統的API,也容易被組織所忽視。
API接口對外不可見引發多種攻擊隱患:由于API是由程序員書寫,除了編寫代碼的程序員,很少有人意識到這些API的存在,缺少維護的API經常容易被忽略,然而惡意攻擊者卻可以利用網絡流量、逆向代碼、安全漏洞等各種手段找到不設防API并實施攻擊。
創新強調速度和靈活忽略構建API安全:敏捷開發模式是當今主流開發模式,敏捷開發強調個體和互動、工作的軟件、客戶合作、響應變化,雖然提升了創新速度和靈活性,但是對于如何構建API安全性卻缺少合適的方法,導致在軟件構建過程中難以顧及API安全。
API安全面臨挑戰的防御措施如下:
API治理:對全部API進行全面文檔化管理,為了規避API變動頻繁的困難,推薦使用開源自動化管理工具,在API變更時添加描述性說明,自動生成最新API文檔,同時自動檢查流量以發現和分析未知或更改的API,以便快速響應基于API的攻擊。梳理API之間的調用鏈,梳理API之間的調用關系,找出僵尸API,防止安全防護措施遺漏,該步驟也可通過工具完成。對API實施契約測試和白盒測試,減少漏洞存在的可能性。
新型解決方案:針對API面臨的安全威脅,可采用新的解決方案提供安全防護。包括使用高級BOT檢測,實現預登陸驗證,攔截API非授權訪問;部署API網關對API請求進行身份驗證、授權和訪問控制;使用正向和負向安全模式對API參數進行合法性驗證;發現API流量行為并提供與WAF/DDoS快速集成的工具等等。
持續API安全檢視:從發現、保護和分析三個維度,制定API安全檢視列表,持續對API進行安全檢視,以此發現隱患,制定策略、實施防護。在發現維度檢視API開發、測試和部署的安全措施是否全面。在保護維度,檢視用戶標識、DDOS攻擊防護措施、數據校驗黑白名單是否完整。在分析維度,檢視API風險評估、API審計日志是否充分。
回答所涉及的環境:聯想天逸510S、Windows 10。
API安全面臨的主要挑戰有以下方面:
API廣泛使用帶來攻擊面擴大的挑戰:API技術的產生是為了解決不同組件或模塊之間的標準化通信交互問題,隨著互聯網上業務種類的不斷增加,出現了以API為中心的API經濟生態。在這個生態系統內,API能力提供者作為平臺能力支撐方和運營者,通過API的形式對外開放業務能力,吸引第三方廠商或合作伙伴加入此生態系統。開放的業務能力越多,API暴露的攻擊面就越大;參與生態構建的第三方廠商越大,API使用范圍越廣泛,API暴露的攻擊面也就越大。
API安全實踐經驗缺失的挑戰:對于使用API技術的企業來說,使用某項技術是為了解決某些問題,以期望得到更高效的業務能力,但因技術人員對使用某項技術帶來安全風險往往理解不夠深刻。尤其是在當前互聯網業務競爭十分激烈,版本更新迭代非常頻繁的情況下,應付API功能的開發已經很疲憊,加上團隊內部或企業內部缺少安全經驗豐富的人員來對研發過程進行監督或指導,導致開發出來的API存在安全缺陷。而企業缺少API開發過程中的相關工具、平臺以及保障機制,更無法從組織層面指導API安全實踐的開展。
外部環境變化帶來的合規性挑戰:近幾年,隨著國家層面網絡空間治理的不斷深入,滿足合規性要求成為每一個企業正常業務開展的必要條件。
組織經常低估API風險:人們通常會假設程序會按照想象中的過程運行,從而導致API被攻擊的可能性以及影響被嚴重低估,因此不去采取充分的防護措施。此外,第三方合作伙伴系統的API,也容易被組織所忽視。
API接口對外不可見引發多種攻擊隱患:由于API是由程序員書寫,除了編寫代碼的程序員,很少有人意識到這些API的存在,缺少維護的API經常容易被忽略,然而惡意攻擊者卻可以利用網絡流量、逆向代碼、安全漏洞等各種手段找到不設防API并實施攻擊。
創新強調速度和靈活忽略構建API安全:敏捷開發模式是當今主流開發模式,敏捷開發強調個體和互動、工作的軟件、客戶合作、響應變化,雖然提升了創新速度和靈活性,但是對于如何構建API安全性卻缺少合適的方法,導致在軟件構建過程中難以顧及API安全。
API安全面臨挑戰的防御措施如下:
API治理:對全部API進行全面文檔化管理,為了規避API變動頻繁的困難,推薦使用開源自動化管理工具,在API變更時添加描述性說明,自動生成最新API文檔,同時自動檢查流量以發現和分析未知或更改的API,以便快速響應基于API的攻擊。梳理API之間的調用鏈,梳理API之間的調用關系,找出僵尸API,防止安全防護措施遺漏,該步驟也可通過工具完成。對API實施契約測試和白盒測試,減少漏洞存在的可能性。
新型解決方案:針對API面臨的安全威脅,可采用新的解決方案提供安全防護。包括使用高級BOT檢測,實現預登陸驗證,攔截API非授權訪問;部署API網關對API請求進行身份驗證、授權和訪問控制;使用正向和負向安全模式對API參數進行合法性驗證;發現API流量行為并提供與WAF/DDoS快速集成的工具等等。
持續API安全檢視:從發現、保護和分析三個維度,制定API安全檢視列表,持續對API進行安全檢視,以此發現隱患,制定策略、實施防護。在發現維度檢視API開發、測試和部署的安全措施是否全面。在保護維度,檢視用戶標識、DDOS攻擊防護措施、數據校驗黑白名單是否完整。在分析維度,檢視API風險評估、API審計日志是否充分。
回答所涉及的環境:聯想天逸510S、Windows 10。