1、背景概述shell
針對網站的Web攻擊是互聯網安全面臨的主要威脅,爲隱藏身份、逃避追蹤,在對目標網站發起攻擊時,黑客每每會採用多種手段隱藏本身的身份,如:使用(動態)代理、虛擬專用網絡等。攻擊者的這些手段很好的隱藏了自身信息,增長了安全人員追蹤溯源的難度。瀏覽器
雖然針對Web攻擊的防護技術、溯源技術也在不斷髮展之中,如: IDS、WAF、基於日誌/流量溯源等,但這些技術每每處於被動防護的狀態、或溯源信息不足,難以應對複雜多變的攻擊手段。安全
問題一:攻擊流量被隱藏在大量的合法流量中,不易被發現和識別。儘管IDS、WAF功能強大,但依然存在漏報或誤報的可能,並且也存在因其自身漏洞或規則不完善而被繞過的可能。服務器
問題二:即便識別攻擊後,可基於IP黑名單機制阻斷攻擊源,但若是攻擊者切換了出口IP,如何在新的攻擊發起以前有效識別攻擊行爲,也是目前IDS、WAF等安全產品所不具有的功能。markdown
問題三:假如攻擊者在攻擊過程當中使用了(動態)代理、虛擬專用網絡等手段,則傳統的基於Web日誌、基於網絡流量的追蹤技術,並不能有效的定位攻擊者的身份或位置。網絡
2、本文目的架構
圖1 研究目標字體
爲彌補傳統安全防護技術的不足,爲網絡犯罪溯源取證提供依據,基於主動防護的思想,本文提出了一種基於網絡欺騙和瀏覽器指紋的溯源技術方案,旨在有效識別網絡攻擊行爲、定位攻擊者身份或位置,並可經過不一樣網站之間的協做或信息共享機制感知潛在的試探性攻擊行爲。網站
3、相關技術spa
圖2 瀏覽器指紋技術概述
在瀏覽器與網站服務器交互時,瀏覽器會向網站暴露許多的不一樣消息,好比瀏覽器型號、瀏覽器版本、操做系統等信息。如同人的指紋能夠用來識別不一樣的人同樣,當瀏覽器暴露信息的熵足夠高時,網站就可利用這些信息來識別、追蹤和定位用戶。
瀏覽器指紋技術的應用場景(抵禦網絡攻擊的安全可行性探討)瀏覽器指紋技術的應用場景(抵禦網絡攻擊的安全可行性探討)
圖3 瀏覽器指紋技術能力
將該技術應用於攻擊溯源,即便黑客使用了(動態)代理、虛擬專用網絡等,採集指紋信息的「溯源腳本」也可反向到達客戶端的瀏覽器,進而被觸發執行,以獲取與黑客關聯性更強的信息。其中,可採集的信息不只包括客戶端的系統字體、系統語言、瀏覽器插件、時區偏移量、Canvas、內外網IP等設備信息,也可採集攻擊者的鍵盤記錄、訪問過的網站,甚至特定網站帳號(存在JSONP漏洞)等行爲信息。(「溯源腳本」基於JavaScript代碼實現)
圖4 網絡欺騙技術概述
網絡欺騙是一種針對網絡攻擊的防護手段(或策略),目的是讓攻擊者相信目標系統存在有價值的、可利用的安全弱點(僞造或不重要的),從而將攻擊者引向這些錯誤的資源,以達到檢測攻擊、阻礙攻擊、記錄攻擊行爲的目的。其中,蜜罐是咱們常見的一種網絡欺騙技術,除了蜜罐技術,還存在蜜餌、蜜網、虛擬網絡拓撲等多種欺騙技術實現方式。
瀏覽器指紋技術的應用場景(抵禦網絡攻擊的安全可行性探討)
圖5 網絡欺騙技術手段
一般狀況下,攻擊者在試圖攻擊網站以前,都會有一些固有手法,用於收集目標網站的信息,如:子域名爆破,高危端口掃描、敏感目錄掃描、Web漏洞掃描等。針對不一樣的攻擊手段,可採用不一樣的欺騙手段來迷惑攻擊者,如:針對子域名爆破行爲,可部署虛假的網站並綁定子域名;針對目錄掃描行爲,可部署虛假的後臺登陸頁面等。
4、應用場景
瀏覽器指紋技術的應用場景(抵禦網絡攻擊的安全可行性探討)
圖6 專用欺騙環境架構
部署專用的網絡欺騙環境,如:註冊子域名並故意綁定虛假的Web業務系統;在Web服務器上部署虛假的網站登陸、註冊頁面(用於抓取攻擊者的手機號、郵箱等信息);部署存在漏洞的Weblogic並對互聯網開放等。同時,全部的「欺騙性信息或服務」均不對外發布,只有採起必定的技術手段才能訪問,而正經常使用戶一般不會進行該操做。
圖7 網站後臺防禦架構
在真實的業務系統的管理員登陸頁面部署「溯源腳本」,不只可採集攻擊者的指紋信息,並且當某攻擊者使用同一設備對多個業務系統的管理員登陸頁面實施攻擊時,也可經過瀏覽器指紋將攻擊事件進行關聯。(備註:管理員設備的指紋信息已加白)
瀏覽器指紋技術的應用場景(抵禦網絡攻擊的安全可行性探討)
圖8 網站總體防禦架構
此外,也可在網站首頁部署「溯源腳本」,採集全部用戶的指紋信息,並與指紋庫中(僅存儲歸屬於攻擊行爲的客戶端指紋)的信息作比較,以感知潛在的試探性攻擊行爲。該應用場景的優勢在於,在攻擊者對網站進行分析、查找漏洞的過程當中,便可將其從大量正常流量中識別出來。
瀏覽器指紋技術的應用場景(抵禦網絡攻擊的安全可行性探討)
圖9 溯源Webshell
當發現網站被攻擊者入侵且留下WebShell後門時,除作好網絡和機器隔離外,可暫時不清除木馬文件,而是向其中插入「溯源腳本「, 等待攻擊者再次訪問,從而獲取與攻擊者關聯性較強的指紋信息,爲溯源取證提供依據。
5、優勢與不足
(1) 不存在誤報
構建的欺騙環境不對互聯網發佈,正經常使用戶是不可見的,只有採用必定手段纔可能發現。凡是訪問這些虛假資源的行爲,均被認爲是潛在的攻擊行爲,故不存在誤報狀況。
所以,相對於IDS、WAF等常規安全防禦產品,基於網絡欺騙技術,可將攻擊流量從大量的合法流量中識別出來,不存在誤報狀況的發生。
(2) 改善漏報率
即便黑客在攻擊過程當中,使用了大量的代理服務器,不斷的變化着出口IP地址。基於瀏覽器指紋技術,可及時發現採用同一設備發起的試探性攻擊行爲,進而阻斷該攻擊。(備註:實際使用時需考慮瀏覽器指紋的碰撞率問題)
所以,相對基於IP黑名單的防護機制,基於設備指紋的黑名單機制,可更快的感知、追蹤和阻止攻擊(即便攻擊者使用了大量代理服務器),從而下降漏報狀況的發生。
(3) 加強溯源能力
相對僅依靠服務端獲取信息的溯源能力,基於瀏覽器指紋技術,能夠採集與攻擊者關聯性更強的客戶端信息,甚至其社交平臺的帳號(須要必定的前提條件),從而加強溯源取證的能力。
(1) 指紋碰撞、指紋關聯問題
首先,採集的不一樣客戶端之間的指紋信息,存在指紋碰撞的狀況,即: 不一樣設備的指紋被認爲是同一設備。同時,也存在同一設備因切換網絡環境、更新瀏覽器、或切換瀏覽器致使指紋信息不一致的狀況。
所以,如何採集區別性更好的客戶端特徵屬性以下降碰撞率、若是實現跨瀏覽器、跨設備的指紋追蹤,是實際應用中須要考慮的問題。