蜜罐在近幾年的攻防實戰演習中大放光彩,它作為欺騙防御的重要技術,是主動防御的主要方法,也是實戰由被動向主動轉變最有效的手段,用好蜜罐可有效提升網絡安全防御能力。蜜罐的核心是仿真能力,所能提供的仿真能力和用戶環境貼合度越高誘捕效果越好。因此蜜罐在部署時,往往都需要根據部署環境對蜜罐仿真的各類對象和數據進行定制化,將自有的一些業務系統站點例如辦公系統、ERP系統、信息發布平臺等做成蜜罐部署出來,這樣的蜜罐誘惑性更高,對攻擊的誘捕效果也會更好。
互聯網上已經有不少免費的蜜罐工具,但這些蜜罐工具絕大多數功能單一、成熟度不高、缺乏持續更新維護,很難支持對自有業務系統等個性化需求的仿真。本文介紹一款免費的蜜罐軟件——DecoyMini,它是由北京吉沃科技有限公司基于商業化蜜罐產品積累而推出的完全免費的蜜罐工具,工具支持主流操作系統、安裝使用簡單、安全穩定,支持插件化的仿真模板,支持從論壇一鍵下載模板來快捷部署蜜罐,同時提供蜜罐自定義能力,通過界面可視化編排配置即可部署對自有業務系統、網絡協議和服務進行仿真的蜜罐。
本文將介紹用DecoyMini免費蜜罐工具來配置仿真自有業務系統蜜罐,并演示業務系統蜜罐部署后對攻擊誘捕的實戰效果。
1.軟件安裝
免費下載最新版本的DecoyMini,支持Windows 7/Win10/Windows Server 32/64位、CentOS/Ubuntu/Debian/Kali 32/64位、樹莓派等操作系統,讀者根據自己的操作系統類型選擇對應的安裝包進行下載,普通辦公電腦的硬件配置就可以正常安裝使用。
DecoyMini支持單節點部署模式和分布式部署模式, 本文示例環境以單節點模式來進行部署。
Windows下,以管理員身份運行cmd,輸入如下命令進行安裝:
DecoyMini_Windows_v1.0.xxxx.exe -install
Linux下安裝,以 CentOS 64 位為例,對安裝文件賦予可執行權限,用管理員權限執行如下安裝命令:
./DecoyMini_Linux_x64_v1.0.xxxx.pkg -install
按需選擇DecoyMini管理端監聽的地址和端口后,即可完成DecoyMini的安裝。
安裝好DecoyMini軟件后,使用安裝時配置的 IP 和端口即可訪問管理端登錄頁面,用DecoyMini論壇帳號或者本地預置帳戶admin可登錄DecoyMini管理端。
2.創建仿真模板
使用DecoyMini部署業務系統蜜罐前,需要先配置業務系統的仿真模板。DecoyMini支持以下兩種方式來創建業務系統仿真模板:
• 自動創建:指定待仿真的目標業務系統地址,軟件自動爬取業務系統站點網頁來創建仿真模板,推薦用于信息發布類業務系統的自動仿真;
• 手動創建:手動下載待仿真的目標業務系統站點網頁進行上傳,配置相關仿真參數和訪問映射規則,完成模板的手動創建,適用于采用自動創建頁面爬取不完整或需定制化仿真內容等其它場景。
對于自定義的仿真模板支持導出分享,可以分享到其它DecoyMini環境,實現仿真能力的快速遷移;也可以分享到DecoyMini技術論壇,將有機會獲得論壇禮品或現金獎勵。
2.1.自動創建
DecoyMini提供自動仿真指定業務系統站點的能力,通過系統內置的網頁爬蟲對指定目標網站進行自動爬取可以快速生成對應業務系統站點的本地鏡像。利用此功能,可以快速生成自有業務系統的仿真模板,并作為誘捕器(蜜罐)部署出來。主要操作步驟如下:
(1)進入DecoyMini仿真模板管理界面,在左側仿真模板樹形列表中點擊“增加仿真網站”來增加一個仿真的站點:
在“模板配置”中配置相關參數,填入要仿真的目標業務系統網站地址(支持http和https),配置網站數據同步周期(單位:天),值>0時每間隔指定天數自動重新爬取業務系統頁面來更新模板,值為0不自動爬取更新。
(2)當完成參數配置后點擊“增加”按鈕,稍等片刻待DecoyMini后臺完成網站內容爬取彈出提示消息后,就完成對自定義網站仿真模板的增加操作。
采用自動創建模式增加的仿真模板,還可以繼續手動編輯模板仿真頁面數據和參數,來定制化仿真內容。
2.2.手動創建
手動創建“WEB仿真模板”的子模板,將下載的業務系統站點網頁打包上傳,配置模板的仿真網頁數據和訪問映射規則,完成模板的手動創建。
2.2.1業務系統網頁下載
用網站下載工具或者瀏覽器下載功能將需要仿真的業務系統網站頁面下載保存,以瀏覽器下載保存為例,具體操作方法如下:
(1)用瀏覽器瀏覽需要仿真的網頁,用瀏覽器保存網頁功能將網頁保存到本地。
保存時候注意文件名用英文,保存類型選擇保存全部內容。
(2)對保存下來的網頁文件,根據需要可以對網頁內容進行定制化處理,處理完畢后,將網頁以及依賴的圖片等資源文件用zip格式進行打包。
(3)將打包好的zip文件名更改為 res_package.zip 待用(res_package.zip 為DecoyMini仿真模板資源文件壓縮包保留名稱,當上傳的壓縮包文件名為此名稱時,則會自動解壓包里的文件到“數據文件”目錄下)。
2.2.2創建仿真子模板
(1)登錄DecoyMini管理中心,切換到“仿真模板”界面,點擊WEB仿真模板“創建子模板”來創建一個新的WEB仿真子模板。
輸入子模板信息后,完成子模板創建操作。
(2)在左側模板列表中選擇新創建的子模板,切換到“資源文件”標簽,在資源文件左側目錄樹中選擇“數據文件”,將剛制作好的資源文件包 res_package.zip 文件進行上傳。
上傳完成后,則可以在文件列表里看到 res_package.zip 壓縮包解壓后的全部文件清單。
(3)資源文件上傳完畢后,點擊“應用”按鈕應用資源文件,應用后的資源文件數據才會被蜜罐所使用。
(4)點擊“參數設置”標簽,可以查看當前模板已經配置的參數,其中類型為“動態解析”的參數軟件會根據攻擊者訪問請求來動態解析,在響應數據配置里可以用“{{參數標識}}”格式來引用對應參數的值。
(5)切換到 “響應數據”標簽,來配置將攻擊者的訪問請求和資源文件做關聯,根據不同的請求可以配置響應對應的仿真數據。
在本例中將攻擊者訪問根路徑與資源文件里index.html文件關聯,配置方法為:在“響應數據”列表里編輯名稱為“首頁”的響應數據項,請求路徑配置為“/” ,響應數據選擇“數據文件”輸入“index.html”后保存。則蜜罐在收到攻擊者訪問“/”路徑的請求時將響應數據文件里index.html文件的內容。
其他訪問路徑對應的響應數據可參考上述方法依次進行配置,多條響應數據將從第一條開始往后匹配,直到匹配到為止;若未能匹配上則會響應標識為notexists里的響應數據。
2.2.3配置記錄登錄賬戶
部署業務系統蜜罐除關注哪些IP來訪問外,記錄攻擊者嘗試登錄業務系統的賬號也有助于對攻擊者進行溯源分析。DecoyMini支持通過界面編排配置,實現記錄攻擊者嘗試登錄業務系統的賬戶的功能。
在上節配置的仿真模板基礎上,配置攻擊者登錄的用戶名、密碼獲取參數,以及有效的用戶名和密碼等信息。參數標識配置為post.userId,將從POST數據里提取名稱為userId的值,post.password將從POST數據里提取名稱為password的值,配置有效的登錄賬號為 admin / 123456。
在響應數據部分增加對登錄請求相關的響應配置。
關鍵的幾個響應數據配置方法說明如下:
(1)修改業務系統登錄頁面代碼,攻擊者執行登錄操作時調用login.js里的login函數,將登錄用戶名和密碼POST到“/api/user/login”這個地址,如果服務端響應狀態碼為200則跳轉到業務系統主頁面,否則顯示登錄失敗的提示。
(2)對登錄請求進行響應:判斷請求的路徑是否為“/api/user/login”,且登錄用戶名和密碼為預設的用戶名和密碼時,響應登錄成功的狀態數據。
配置接收到登錄請求后,記錄登錄日志,同時記錄登錄的用戶名和密碼。
(3)當發送的登錄請求用戶名和密碼與預設的用戶名密碼不匹配時,登錄失敗,響應登錄失敗狀態和錯誤消息,并配置記錄日志。
(4)配置當輸入了預設的用戶名和密碼后,顯示指定的業務系統主界面。
記錄登錄賬戶的完整配置內容請參見DecoyMini內置 “WEB業務系統示例”仿真模板。
2.2.4發布模板
編輯確認仿真模板的基礎信息,如模板名稱、事件日志類型、類別、描述等,完成編輯后便可“發布”仿真模板,發布后的仿真模板就可以在誘捕策略里部署使用。
3.部署蜜罐
配置完成業務系統仿真模板后,切換到“誘捕策略”界面來部署蜜罐。DecoyMini支持虛擬IP技術,支持在一臺蜜罐上虛擬多IP來模擬多臺主機,快速組建蜜罐群,有效提高蜜罐的覆蓋率,用較小的部署資源實現最大化的攻擊誘捕效果。
(1)增加誘捕器(蜜罐),選擇剛發布的業務系統仿真模板,配置蜜罐外部訪問IP、監聽端口、協議等環境參數。
蜜罐的“外部訪問IP”可以填寫網絡可達范圍內的空閑IP,將蜜罐直接部署在這個空閑IP上,例如網絡里10.1.18.84這個IP未使用,則可將外部訪問IP配置為10.1.18.84,蜜罐部署好后,攻擊者通過10.1.18.84就能夠訪問到此業務系統蜜罐。
DecoyMini支持動態端口功能,配置端口時支持特定端口、端口列表或端口范圍,當配置為端口列表或端口范圍,蜜罐在運行時將會自動從中隨機選取一個端口來部署此蜜罐。
訪問業務系統蜜罐協議支持HTTP或HTTPS,DecoyMini已經內置了默認的SSL證書,如果需要自定義,可以將新的證書文件和密鑰文件分別命名為server.crt和server.key替換仿真模板資源文件“配置文件”目錄里同名文件。
(2)配置完部署蜜罐的必要參數后,點擊“確定”保存蜜罐配置。
(3)點擊“應用”按鈕將誘捕策略下發到誘捕探針來生成對應的蜜罐。
4.部署效果
在DecoyMini上部署好蜜罐之后,用瀏覽器訪問誘捕策略里配置的地址就可以訪問到仿真的業務系統站點。
以下為筆者模擬攻擊者發起請求,展示業務系統蜜罐對攻擊的誘捕效果。
4.1.攻擊事件日志
當攻擊者訪問到業務系統蜜罐后,在系統的風險事件里可以查看到相關風險事件告警信息。DecoyMini支持關聯分析,支持對同類事件進行自動合并,這可以有效降低告警數量、提高告警準確度,從而大大降低安全運維投入。
風險事件的詳細信息中包含兩部分:事件詳情和關聯誘捕日志列表。
事件詳情展示了風險事件的名稱、描述、類型、合并數量、攻擊源 IP、攻擊目的 IP、匹配到的關聯分析規則名稱、威脅影響和解決方案、風險事件合并開始時間和結束時間等屬性。
關聯誘捕日志展示的為此風險事件關聯的誘捕日志列表:
在系統的“誘捕日志”里可以查看到完整的攻擊日志信息;仿真模板配置了記錄攻擊賬戶功能,當攻擊者嘗試登錄業務系統時,在對應的誘捕日志里可以查看到嘗試登錄的賬戶信息,包括登錄使用的用戶名和密碼等。
4.2.攻擊預警
當攻擊者訪問到業務系統蜜罐時,DecoyMini支持配置多種預警方式及時將告警通知到安全管理人員手里,包括郵件告警、彈窗告警、企業微信、釘釘等方式,也支持通過Syslog格式將告警信息輸出到其它系統來實現對攻擊進行聯動處置。
采用自動預警通知,可實現用極少的資源和人力投入,就可以實現7x24小時不間斷遠程值守,安全管理人員隨時隨地都能輕松掌握網絡的風險態勢。
4.3.攻擊過程分析
在風險事件詳情或者誘捕日志里查看日志詳情時,除可以看到該誘捕日志詳細信息外,還支持以“時間線”方式以時間先后順序展示該攻擊者的詳細操作,還原攻擊的完整過程。
在風險事件或誘捕日志界面中,點擊誘捕器(蜜罐)鏈接,可以查看到攻擊此誘捕器的IP畫像,畫像直觀展示了攻擊此蜜罐的源IP分布以及攻擊頻率等信息。
點擊事件列表或事件詳情中的“被攻擊IP”,可以展示對應被攻擊IP的畫像,畫像展示了攻擊該IP的攻擊來源情況以及攻擊的蜜罐范圍。
4.4.攻擊溯源
DecoyMini不僅能夠對攻擊進行監測、對失陷進行感知,同時它也具備攻擊溯源能力。當攻擊者訪問部署的業務系統蜜罐后,通過內置在業務系統蜜罐內的反制腳本,就能夠自動獲取到攻擊者主機的多種特征信息,包括真實IP、主機特征、瀏覽器特征等等。同時DecoyMini已經與盛邦安全的網絡空間資產探測平臺聯動,能夠自動查詢攻擊IP所在主機最近一段時間開啟的端口和服務,為溯源攻擊者的真實身份提供了多維度的數據支撐。
點擊事件列表或事件詳情中的“攻擊IP”,可以展示對應攻擊IP的畫像,包括攻擊者地域信息、攻擊影響范圍、主機特征、瀏覽器特征、主機曾開啟的服務等信息。
點擊畫像上的基本信息、主機特征、瀏覽器特征、曾使用服務,可以鉆取到對應攻擊IP的攻擊者特征詳情;點擊攻擊目標的IP或誘捕器,可以鉆取到此IP對該攻擊目標實施攻擊產生的風險事件和詳細誘捕日志列表。
5.總結
面對當前嚴峻的網絡安全態勢、及時發現更具隱蔽性和多樣性的攻擊行為,對網絡安全防御手法上需要有所創新。通過在網絡部署蜜罐,以攻防對抗思路為基礎,以攻擊者視角去發現威脅,可有效彌補傳統網絡安全防御方案的弱點,構建主動感知網絡威脅的能力,協助提升網絡安全監測、響應及防御能力。
本文介紹了使用DecoyMini來部署業務系統蜜罐的基本方法,讀者可以參考去配置滿足自己需求的業務系統蜜罐。DecoyMini作為一款優秀的國產免費蜜罐軟件,具備豐富的攻擊誘捕和溯源分析功能,提供靈活的蜜罐自定義能力,支持快速組建蜜罐群,是企業零成本構建欺騙防御能力的得力工具,值得企業部署嘗試。