作者:國家保密科技測評中心
來源:國家保密科技測評中心
【摘 要】 本文闡述了蜜罐的防護方法、蜜罐的引誘能力及蜜罐分類,并結合蜜罐的特點,詳細論述了蜜罐反制技術,以期為蜜罐的開發使用及網絡安全的主動解決方案提供研究思路。
【關鍵詞】 蜜罐 蜜罐反制 未知威脅 網絡安全
1 引言
隨著信息技術的不斷發展,物聯網、云計算、人工智能(AI)等技術深刻影響著我們的工作、學習、生活。網絡技術的發展同樣帶來諸多隱患,網絡安全成為無法回避的關鍵性問題。從早年的“熊貓燒香”“永恒之藍”,到勒索病毒、高級可持續威脅(APT)攻擊,網絡攻擊方式多種多樣,攻擊成本不斷降低,隱蔽性增強,使溯源取證更加困難。尤其在一些特定領域,如打擊網絡犯罪過程中,由于網絡攻擊手段多樣且手法隱蔽,終端網絡犯罪的取證素材獲取是網絡犯罪取證的難點,研究并實現未知攻擊鏈各個階段相應取證素材的獲取技術已迫在眉睫。
基于蜜罐防御體系的出現打破了防守方只能被動防守的局面,防守方不僅能在攻擊者接觸到真實資產前做出反應,而且還能采取富有針對性的反制措施,解決相關部門對網絡攻擊事件調查取證困難的問題。本文對蜜罐與蜜罐反制進行總結和分析,對仿真、反制技術進行了闡述,并指出蜜罐所能達到的攻擊防御效果。
2 蜜罐闡述
根據蜜罐仿真程度及交互能力,可分為低交互蜜罐、中交互蜜罐、高交互蜜罐,如圖1所示。
圖1 蜜罐類型
低交互蜜罐是指實現某個特定服務模擬,可以模擬這個服務的全部交互,也可以是部分服務的模擬,交互程度可以是攻擊者初始訪問的一個反饋。這種蜜罐雖然仿真程度不高,但是已經達到了引誘攻擊者,并捕獲其IP、協議、端口及請求載荷等信息的目的。低交互蜜罐因其創建釋放快捷、資源占用低、協議輕便的特點,目前在威脅檢測方面應用普遍。
中交互蜜罐除了要具備特定服務的模擬外,還要對設備環境進行模擬。正常應用程序、惡意二進制文件都需要在系統環境中執行,假如1個攻擊者上傳了1個惡意文件,執行后釋放出動態鏈接文件并創建出系統服務,產生2個進程,1個用來挖礦,1個用來進行橫向移動,中交互蜜罐會把整個攻擊過程全部記錄下來,并且保存攻擊文件。中交互蜜罐是基于進程級的服務模擬,能夠提供更完整的攻擊交互,為溯源留存攻擊記錄和攻擊文件。
高交互蜜罐是基于真實的系統和服務構建的。雖然中交互蜜罐已經可以提供足夠的交互能力,但面對APT攻擊時容易被識破,攻擊者長期對被攻擊者進行富有針對性的、持續性的攻擊,熟悉被攻擊者的業務環境。因此,高交互蜜罐需要用戶參與設計,模擬出符合用戶業務及物理空間的蜜罐,針對載荷的信息建立模型,以虛擬出的真實的業務環境誘騙高級別攻擊者實施攻擊,從而捕獲高級別攻擊者。
3蜜罐反制技術
蜜罐攻擊反制的目的是獲取攻擊者的有用信息,是攻擊溯源環節的一部分,而不是以暴制暴。網絡攻防長久以來存在著攻強守弱的局面,攻擊方可以在任何時間、使用任何攻擊手段實施攻擊,而防守方只能被動防守。蜜罐則具備主動防御能力,它可以通過主動布防,主動示弱攻擊者,并且進行反制,使網絡攻擊不再是一個沒有損失、只有收益的事情。攻擊者要為其網絡攻擊行為承擔被發現的風險,以及法律責任,這對從事網絡犯罪、威脅網絡安全的不法分子起到了威懾作用。
3.1 Web蜜罐反制
瀏覽器反制主要利用了Js腳本攻擊的原理。jsonp解決跨域問題的同時帶來了安全性問題,攻擊者利用<script>標簽獲得json數據,執行后可獲取敏感數據。一般這種攻擊先會對Web進行整體測試,了解功能和調用情況后將腳本代碼插入頁面,用戶瀏覽頁面進行輸入時,js腳本會無聲無息地執行,從而獲取攻擊者的信息。使用蜜罐進行反制時,首先需模擬出業務系統的Web網站,偽裝網站里內置了js反制腳本,當攻擊者被誘導,通過瀏覽器訪問Web蜜罐時腳本會自動執行,獲取攻擊者的硬件指紋信息與網絡攻擊信息。將這2種信息相關聯并溯源分析,就可定位攻擊者。通過這種方式,可有效獲取攻擊者信息,包括瀏覽器、屏幕、硬件、頁面、插件、網絡、網絡社交,如表1所示。
表1 Web反制獲取信息列舉
網絡社交信息的獲取,可通過跨站跨域模擬請求,獲取瀏覽器中社交網站的賬戶緩存信息。
如圖2所示,在仿真Web頁面上,可以添加注冊流程,需要輸入手機號碼作為賬號名,從而獲取攻擊者的手機號,這個注冊流程可以接入真實的短信網關,發送真實的短信驗證碼。
圖2 獲取手機號
通過同樣的方法,可在仿真Web頁面上添加微信掃一掃二維碼,偽裝成公眾號或客服等,引誘攻擊者掃描,之后可以使用網上開源免費的后臺登記訪客系統,獲取掃描者的微信信息。
在Web上預置代碼書寫不規范的漏洞也是反制方法之一。代碼編寫具有一定的書寫規范,代碼注釋是代碼編寫中不可缺少的一部分,但是當項目上線代碼打包后,這些注釋必須要全部清除,避免直接暴露出來。利用這一點,可以在仿真的Web頁面里制造代碼注釋未刪除的假象,如將“//mysql數據庫10.0.0.1 root/admin@123”這樣的注釋,植入蜜罐的公網IP,模擬成開發時的后端服務器,從而欺騙攻擊者,引誘攻擊者進行攻擊。
3.2 數據庫蜜罐反制
MySQL反制蜜罐的工作原理是通過搭建一個簡單的MySQ服務,如果攻擊者對目標進行3306端口爆破,且嘗試使用mysql客戶端工具遠程連接MySQL蜜罐服務器,就可能獲取攻擊者的IP、讀取本地文件,包括微信配置文件等。MySQL服務端能夠用讀取命令獲取MYSQL客戶端的任意文件,然后偽造惡意服務器向連接這個服務器的客戶端發送讀取文件的載荷(payload)。
3.3 誘餌反制
誘餌反制的原理是利用脫敏的用戶數據文件,或是可執行程序,如虛擬專用網(VPN)安裝程序,把其與反制程序捆綁到一起,通過對反制程序添加花指令、編譯器多次編譯、對shellcode編碼、程序加殼等多種方式對反制程序打包、混淆,同時在反制程序運行時減少對系統的修改,減少敏感行為應用程序接口(API)調用,多在內存里進行操作,使用反彈的連接,對傳輸數據進行壓縮、加密等方式繞過殺毒軟件攔截。此方法支持獲取攻擊者終端中的文件、主機名、主機權限、操作系統、用戶信息、網卡信息等,如圖3所示。
圖3 觸碰誘餌
反制終端的信息在回傳時,可于蜜罐管理頁接收信息,此時需要連接互聯網在公網搭建一個接收服務端,并且IP應歸屬被攻擊IP地址,這樣在回傳的時候哪怕攻擊者發現有外發請求,但因IP地址不是可疑的,可以避免攻擊者發現疑點漏洞,刪除反制文件。
3.4 陷阱反制
蜜罐系統一般支持釣魚郵件自定義功能,原理是在系統中生成一封郵件,通過郵件服務器發送到指定郵箱,如果此郵箱被攻擊爆破,攻擊者打開了釣魚郵件,就會產生告警信息。另外郵件里面的內容同樣可以偽造成虛假信息,把蜜罐IP寫進去,連環誘騙攻擊者。
另外,接收釣魚郵件的郵箱可以使用一個新的釣魚郵箱,設置成弱口令,植入到偽裝Web頁面里,故意暴露給攻擊者進行爆破。
4結語
本文對蜜罐技術及蜜罐的反制思路進行了闡述,明確了蜜罐作為一種主動防御手段,其溯源與反制能力的效果及發揮空間,列舉了蜜罐反制技術的方法,以期為蜜罐的開發使用及網絡安全的主動解決方案提供研究思路。
(原載于《保密科學技術》雜志2023年4月刊)