一個案例
2014年11月,在某部委職能部門,發生了這樣一個事情。該部門有一個重要的服務網站,對公眾提供信息查詢和業務辦理,每天的訪問量超過百萬。11月的一天,網站運維人員發現網站的文件目錄下多了一個未知文件,懷疑網站遭到了攻擊,但是沒有發現其他線索,網站本身也沒有記錄到任何被攻擊日志。
巧合的是,幾個月前,啟明星辰發布了新產品–天玥業務審計系統,可以通過分析網絡流量來監控針對業務系統的訪問行為,業務部門正在使用此產品。于是,該運維人員聯系到啟明星辰安全專家,一起到業務審計系統上查看,試圖發現一些蛛絲馬跡。不看不知道,一看嚇一跳,原來網站存在Struts2漏洞,被黑客利用,差一點就釀成嚴重后果。
分析過程是這樣的:
用戶提供初始線索:未知文件名為system.jsp;
攻擊過程定位和溯源
天玥業務審計系統的日志詳細記錄了相關操作的源IP、賬號、請求內容(URL、POST數據、Cookie等)、頁面返回內容等信息,這給定位和取證工作提供了方便。在日志中查詢URL、Cookie或Post數據字段包含system.jsp關鍵字的日志,如下:
經過檢索,定位操作源IP為:171.113.131.19,繼續追查源IP為171.113.131.19的所有操作日志,發現此IP對網站首次訪問的時間為:2014-11-10 15:05:22,其執行過的操作和網站的返回內容被審計系統完整記錄了下來:
攻擊者通過訪問URL:http://****/OSVisa/register/login.action,以Post方式進行webshell文件的上傳,然后利用此文件進行了一系列的攻擊操作。
通過審計日志逐條分析可以看到:system.jsp是一個jsp木馬文件(俗稱webshell),攻擊者上傳此文件后,在2014-11-10 15:06:44,第一次用get方式調用這個webshell,審計日志中可以看到網站提示500錯誤(服務器執行webshell內部錯誤),頁面返回內容中可以看到此木馬調用了struts2的方法。后續攻擊者又進行了文件下載等嘗試。
漏洞驗證和補救
手工登錄訪問:http://****/OSVisa/register/login.action,發現這是一個登錄頁面,沒有任何文件上傳的功能界面。初步分析,黑客應該利用某個漏洞上傳了文件。結合上文審計日志獲取的頁面返回內容,可判斷網站可能存在struts2漏洞。
借助啟明星辰struts2漏洞測試工具,安全專家成功驗證用戶網站存在struts2漏洞,漏洞官方編號為:2013 S2-019,此漏洞可以直接遠程執行命令,上傳文件等。
至此,在天玥業務審計系統這個專業的"照妖鏡"面前,本次基于Struts2漏洞的Webshell攻擊過程原形畢露。運維人員也驚出一身冷汗,幸虧發現及時,沒有造成太大的損失。根據業務審計日志提供的線索和依據,管理員立即修復此網站漏洞,清除了攻擊者增加的賬號、文件等內容,阻止了進一步的破壞。
業務審計結合WAF–網站安全防范的有效手段
隨著電子商務、電子政務的發展,各企業、政府機構的對外服務網站訪問量和重要性越來越高,在提升工作效率、方便大眾的同時,也面臨著越來越多的信息安全考驗,因網站漏洞導致企業或者個人信息泄露,站點被攻擊至無法服務的案例比比皆是。雖然入侵防護、防篡改等手段越來越多的被采納,因攻擊和防護的在時間上的不對稱性,仍然無法保證網站的絕對安全。特別是針對網站的Webshell攻擊,因其手段隱蔽,不會在系統日志中留下記錄,管理員很難及時發現。如何有效預防此類攻擊?當攻擊事件發生后,如何清點戰場、發現弱點和及時止損?上面這個案例有很好的參考價值。
從該案例可以看到,做為信息安全領域的新興產品,基于業務流量分析的業務審計系統,在異常分析、攻擊取證、現場還原上,起到了至關重要的作用。不僅彌補了業務系統本身日志線索不足的缺點,其做為第三方產品的獨立性也使得取證工作更加客觀準確。
除此之外,還要加強對web服務器的事前防護。推薦在網站入口在線部署Web應用防火墻(WAF),在平行位置旁路部署業務審計系統。一旦WAF發現攻擊的蛛絲馬跡,則可通過業務審計進行進一步的上下文分析,及時定位信息資產損失,發現更多的安全線索;反之,當分析業務審計日志,發現某賬號或者IP存在異常行為(無攻擊特征的異常操作),則可反饋給WAF,通過提高防護級別和增強防護策略來進行重點防御。業務審計與WAF的有機結合,形成針對網站安全的事前+事中+事后的全過程防護方案,可有效保障網站的安全穩定運行。