應用威脅現狀正在迅速發展。多年來,用戶一直利用Web瀏覽器等常用工具使用互聯網應用。任何時候,都需要支持2-5個Web瀏覽器,應用開發和測試框架的多樣性也相對有限。例如,幾乎所有的數據庫都是使用SQL語言創建的。令人遺憾的是,就在不久前,為了竊取、刪除并修改數據,黑客已經開始濫用應用了。他們以不同方式利用應用,主要是欺騙應用用戶、注入或遠程執行代碼。不久之后,名為Web應用防火墻(WAF)的商業化解決方案出現了,該團體為此創建了開放Web應用安全項目(OWASP),用于設置并維護安全應用的標準和方法。
基本應用防護措施
OWASP十大攻擊列表為防御最常見和最致命的威脅和可能導致漏洞的應用配置錯誤的防護措施提供了出發點、檢測戰術和緩解措施。此列表可以作為應用安全行業的行業標桿,并定義了WAF所需的基本功能。
此外,還有其他針對Web應用的常見攻擊,如:CSRF、點擊劫持、Web抓取和文件包含(RFI/LFI)。
確保現代應用安全的挑戰
目前,應用不僅僅只是基于Web的。還有許多云應用、移動應用、API,甚至是最新架構中的單個功能,都可以創建、修改并處理數據,因此必須進行同步和監督。新技術和框架為應用生命周期帶來了新的挑戰。包括DevOps、容器、物聯網(IoT)、開源工具和API等。
各種技術位置的分散為信息安全專業人員和不能再依賴“一刀切”方法的解決方案廠商都帶來了非常復雜的挑戰。為了最大限度地減少誤報并優化客戶體驗,解決方案必須了解所保護的應用所處的業務環境。
一個黑客的最終目標通常是竊取數據或中斷應用服務。他們也會受益于技術進步。首先,他會創建更多潛在的漏洞和薄弱點,其次,他們可以采用更多的工具和知識來克服傳統的安全探試程序。企業將面臨更大的攻擊面和更大的暴露風險。隨著應用的不斷變化,安全策略必須與時俱進。
因此,應用必須得到充分保護,防御不斷增多的攻擊方法和攻擊源,并且必須能夠在緩解自動攻擊時實時做出有把握的決策。其結果就是增加了人工勞動和運維成本,同時降低了整體的安全性。對安全廠商而言,需要克服的挑戰更多。
挑戰1:機器人程序管理
根據Radware Web應用安全報告,幾乎60%的互聯網流量都是機器人程序生成的,其中一半流量是由“不良”機器人程序造成的。企業不得不增加網絡容量來滿足這些虛擬需求。準確區分人為流量和機器人程序生成的流量以及準確區分“良性”機器人程序(如搜索引擎和比價服務)和“不良”機器人程序可以極大地節省成本并提高客戶體驗。
現在,機器人程序并不會放你一馬,他們可以模仿人類行為,繞過CAPTCHA和其它質詢。此外,動態IP攻擊會讓基于IP的防護措施失效。通常情況下,可以處理客戶端JavaScript的開源開發工具(如Phantom JS)會被濫用,發起暴力破解、證書填充、DDoS和其它自動的機器人程序攻擊。
為了有效管理機器人程序生成的流量,就需要對流量源進行唯一標識(就像指紋)。由于機器人程序攻擊采用了多個事務,指紋就可以幫助企業追蹤可疑活動,確定違規分數,并以最小的誤報率做出有把握的攔截/允許決策。
挑戰2:保護API
許多應用可以從與API交互的服務中采集信息和數據。當通過API傳輸敏感數據時,50%以上的企業在檢測網絡攻擊時既不會檢查API也不保護API。
常見的API用例有:
•IoT集成
•機器對機器通信
•無服務器環境
•移動應用
•事件驅動應用
API漏洞類似于應用漏洞,包括注入、協議攻擊、參數篡改、無效重定向和基于機器人程序的攻擊。專用API網關可以確保通過API進行交互的應用服務的安全互操作性。然而,他們不能提供WAF所提供的端到端應用安全以及必要的安全控制,如HTTP解析、L7層ACL管理、JSON/XML有效負載的解析和驗證、模式執行和對OWASP十大漏洞的全面覆蓋。這可以通過采用主動和被動安全模型提取并檢查關鍵API值來實現。
挑戰3:拒絕服務
DoS是一種比較陳舊的攻擊矢量,但在攻擊應用時仍非常有效。犯罪分子可以采用一些吸引人的技術來中斷應用服務,如HTTP或HTTPS洪水、低速慢速攻擊(SlowLoris、LOIC、Torshammer)、動態IP攻擊、緩沖區溢出、暴力破解攻擊等。在IoT僵尸網絡的驅動之下,應用層攻擊已經成為首選的DDoS攻擊矢量。多數WAF都是有狀態的設備,他們只能保留一定的容量。然而,他們能夠檢查HTTP/S流量流(一些WAF創建基線,對于未知威脅非常有效),檢測攻擊和惡意嘗試。一旦檢測到攻擊,就不會讓攻擊流量再次進入。專用的邊界解決方案可以補充WAF緩解容量的限制,自動攔截下一個錯誤數據包。為了實現這一點,兩個解決方案必須能夠互相傳送消息:
Radware WAF向外圍攻擊緩解設置發送攻擊信息
挑戰4:持續安全
應用會頻繁變化。開發和推出方法,如持續交付,就意味著會不斷地對應用進行修改,不需要人工干預或監督。在動態環境中維持有效的安全策略,保護敏感數據安全,而不產生大量的誤報,這是極其困難的。與Web應用相比,移動應用修改更多,用戶如何得知所使用的第三方應用何時發生了變化?
一些人力求獲取更大的可見性,因此他們意識到了風險。然而,這并不總是可行的,強勁的應用防護措施必須利用可以映射應用資源的機器學習功能分析可能的威脅,并在進行應用修改時創建和優化安全策略。
總結
由于應用在我們的日常生活中扮演著越來越重要的角色,它們也成為了黑客的首選目標。黑客的潛在收益和企業的潛在損失是龐大的。現在,鑒于應用和威脅的數量和種類,保護這些應用的安全極為困難。
幸運的是,現在人工智能可以助我們一臂之力。基于機器學習的算法提供了實時的適應性防護措施,可以防御針對應用的最復雜威脅。他們還可以自動更新安全策略,保護Web應用、移動應用、云應用以及API的安全,同時不會產生誤報。
我們無法確定下一代應用威脅會是什么樣子(可能也是基于機器學習的),但可以確定的是,我們可以現在就采取行動,進一步保護具有巨大商業價值的客戶數據、知識產權和服務可用性。