摘要:隨著網(wǎng)絡(luò)攻擊日益頻發(fā)、隱蔽和復(fù)雜,傳統(tǒng)的被動防御手段難以及時、有效地識別新型威脅。文章介紹了Cowrie蜜罐的基本原理和實現(xiàn)機制,闡述了機房網(wǎng)絡(luò)主動誘捕的系統(tǒng)架構(gòu)設(shè)計,具體論述了蜜罐部署、數(shù)據(jù)收集和分析等核心部分,最后基于實驗測試環(huán)境驗證了該系統(tǒng)捕獲攻擊行為的有效性。
關(guān)鍵詞:機房網(wǎng)絡(luò)安全;主動誘捕;Cowrie;交互式蜜罐
中圖分類號::TN915.08" ""文獻(xiàn)標(biāo)志碼:A
作者簡介:趙仲力(1992— ),男,工程師,本科;研究方向:網(wǎng)絡(luò)安全。
0" 引言
近年來,隨著互聯(lián)網(wǎng)技術(shù)的飛速發(fā)展和廣泛應(yīng)用,網(wǎng)絡(luò)安全問題日益凸顯。網(wǎng)絡(luò)攻擊事件頻發(fā),呈現(xiàn)出智能化、隱蔽化和多樣化的特點,給個人隱私、企業(yè)機密和國家安全帶來嚴(yán)峻挑戰(zhàn)。根據(jù)Cloudflare在2024年1月發(fā)布的《2023年第四季度DDoS威脅趨勢報告》,2023年第四季度的網(wǎng)絡(luò)層DDoS攻擊數(shù)量同比增長了175%,環(huán)比增長了25%,其中針對IDC(Internet Data Center)機房的攻擊尤為突出。Cowrie是一款優(yōu)秀的交互式SSH和Telnet蜜罐系統(tǒng),模擬了多種真實環(huán)境,被廣泛應(yīng)用于SSH口令猜解、僵尸網(wǎng)絡(luò)分析等場景。基于Cowrie蜜罐系統(tǒng),本文提出了一種面向IDC機房網(wǎng)絡(luò)的主動誘捕技術(shù)。
1" Cowrie蜜罐系統(tǒng)工作原理
Cowrie是一款基于Python開發(fā)的高交互型蜜罐系統(tǒng),工作內(nèi)容包括攻擊誘捕、行為記錄和數(shù)據(jù)分析。Cowrie首先對外暴露一個SSH或Telnet服務(wù),如默認(rèn)的弱口令root/123456等,吸引攻擊者嘗試暴力破解[1]。一旦攻擊者成功登錄,就會進(jìn)入Cowrie提供的虛擬shell環(huán)境。Cowrie會詳細(xì)記錄攻擊者在虛擬環(huán)境中的所有操作,包括執(zhí)行的命令、命令的參數(shù)和結(jié)果、登錄的IP和時間、上傳和下載的文件,管理員可以通過日志分析攻擊者的行為模式、使用工具與攻擊目的。
2" 機房網(wǎng)絡(luò)主動誘捕技術(shù)
主動誘捕(Active Deception)的核心思想是主動設(shè)置誘餌,引誘攻擊者對虛假目標(biāo)發(fā)起攻擊,是一種以情報為驅(qū)動的智能安全防御思路。蜜罐產(chǎn)生的交互式數(shù)據(jù)包含了豐富的威脅情報,通過分析攻擊者的行為、手法、工具等,可以洞察攻擊者的真實意圖和能力,為后續(xù)的威脅狩獵、態(tài)勢感知提供高價值線索,實現(xiàn)情報的持續(xù)反哺和防御策略的動態(tài)調(diào)優(yōu)。
3" 基于Cowrie蜜罐系統(tǒng)的主動誘捕技術(shù)設(shè)計
3.1" 部署思路
本文研究提出的蜜罐系統(tǒng)整體基于一種分層架構(gòu)設(shè)計,該架構(gòu)由數(shù)據(jù)采集層、數(shù)據(jù)處理層、數(shù)據(jù)存儲層、數(shù)據(jù)分析層和數(shù)據(jù)可視化層組成,如圖1所示。在數(shù)據(jù)采集層,分別在機房網(wǎng)絡(luò)的接入層、匯聚層和核心層部署一組高交互型Cowrie蜜罐。利用Kafka構(gòu)建數(shù)據(jù)總線,接收來自各節(jié)點的數(shù)據(jù)流,過濾噪聲數(shù)據(jù),進(jìn)行字段提取、格式轉(zhuǎn)換、時間同步等處理,然后通過Kafka分發(fā)給下游的存儲和分析模塊,在分析完成后為管理員提供可視化數(shù)據(jù)總覽。
3.2" 核心模塊的功能實現(xiàn)
3.2.1" 蜜罐模塊
(1)蜜罐節(jié)點部署。
接入層部署一組SSH和Telnet蜜罐,模擬常見的Linux服務(wù)器,在蜜罐上開放常見的服務(wù)端口(如22、23、80、443等),并設(shè)置較弱的密碼口令,誘使攻擊者嘗試暴力破解或者口令猜解。匯聚層和核心層部署一組SSH、Telnet、SFTP、RDP等蜜罐,模擬企業(yè)內(nèi)網(wǎng)中的JumpServer跳板機、代碼倉庫服務(wù)器、OA辦公服務(wù)器、監(jiān)控服務(wù)器等關(guān)鍵資產(chǎn),用于捕獲來自內(nèi)網(wǎng)的橫向滲透攻擊,引誘攻擊者使用弱口令字典和社工手段滲透。接入層Web服務(wù)器蜜罐中部署了常見的Web漏洞;核心層的代碼倉庫蜜罐中部署了Git源碼泄露、SVN未授權(quán)訪問等漏洞。
(2)交互環(huán)境模擬。
提供仿真的交互式終端環(huán)境,當(dāng)攻擊者使用SSH/Telnet協(xié)議登錄蜜罐后,會看到一個與真實Linux系統(tǒng)幾乎一致的Shell界面,可以執(zhí)行常見的操作系統(tǒng)命令ls、ps、cat、wget等。蜜罐支持與攻擊者多輪交互,根據(jù)攻擊者的輸入,動態(tài)生成相應(yīng)的命令行輸出。
def buildProtocol(self, addr):
# 創(chuàng)建SSH連接協(xié)議
t=HoneyPotTransport()
t.factory=self
t.portal=portal.Portal(HoneyPotRealm())
t.portal.registerChecker(HoneyPotPublicKey Checker())
t.portal.registerChecker(HoneyPotPassword Checker())
t.packetizer=CowrieSSHPacketizer(t)
t.packetizer.avatar = HoneyPotAvatar(self.backend, self.pool_handler)
t.factory.sessions[t.transport.sessionno]=t
return t
在后臺,Cowrie蜜罐基于Python的Twisted框架,設(shè)計一套虛擬文件系統(tǒng),預(yù)設(shè)“誘餌”文件(/etc/passwd、/var/log/messages等),誘使攻擊者駐留更長時間[2]。當(dāng)攻擊者下載并執(zhí)行惡意腳本時,后臺記錄腳本內(nèi)容,同時返回預(yù)設(shè)的命令執(zhí)行結(jié)果。
(3)攻擊行為捕獲。
蜜罐不僅記錄攻擊者的登錄賬號、密碼、來源IP等基本信息,還實時記錄攻擊者輸入的每一條命令及其對應(yīng)的執(zhí)行結(jié)果。針對網(wǎng)絡(luò)流量,蜜罐采用內(nèi)置的數(shù)據(jù)包嗅探和解析引擎捕獲攻擊者與蜜罐之間的所有流量,除了原始的pcap包,還解析關(guān)鍵的流量元數(shù)據(jù),如HTTP請求/響應(yīng)頭、FTP命令/文件傳輸?shù)取.?dāng)攻擊者通過SFTP、SCP、HTTP POST等方式向蜜罐上傳文件時,蜜罐會自動將其重定向到指定目錄,并提取文件的數(shù)字指紋(如MD5、SHA256等),與已知惡意代碼庫比對,識別其惡意類型。
3.2.2" 數(shù)據(jù)采集與分析
(1)蜜罐數(shù)據(jù)采集。
模塊采用基于Agent的數(shù)據(jù)采集框架。在每個蜜罐節(jié)點上部署一個輕量級的采集Agent,通過安全通道發(fā)送到中央數(shù)據(jù)處理節(jié)點[3]。采集Agent主要獲取網(wǎng)絡(luò)流量數(shù)據(jù)、文件操作數(shù)據(jù)、命令執(zhí)行數(shù)據(jù),將各類數(shù)據(jù)統(tǒng)一轉(zhuǎn)換為JSON格式,并通過Kafka消息隊列實時推送到數(shù)據(jù)處理節(jié)點。
(2)實時數(shù)據(jù)流處理與威脅檢測。
數(shù)據(jù)處理節(jié)點采用Spark Streaming框架,對Kafka中的采集數(shù)據(jù)進(jìn)行實時流式處理,將異構(gòu)數(shù)據(jù)轉(zhuǎn)換為結(jié)構(gòu)化的特征向量,基于特征向量構(gòu)建多種檢測模型。數(shù)據(jù)處理流程基于DStream模型,通過函數(shù)式API連接和調(diào)度各個處理階段。
# 數(shù)據(jù)輸入
packet_stream = KafkaUtils.createDirect Stream(...)
log_stream = KafkaUtils.createDirectStream(...)
# 數(shù)據(jù)解析
parsed_packet_stream = packet_stream.map(parse_packet)
parsed_log_stream = log_stream.map(parse_log)
# 數(shù)據(jù)聚合
aggregated_stream = parsed_packet_stream.union(parsed_log_stream)
# 特征提取
feature_stream = aggregated_stream.map(extract_feature)
# 攻擊檢測
attack_stream = feature_stream.filter(detect_attack)
# 更新威脅情報庫
attack_stream.foreachRDD(lambda rdd: rdd.foreach(update_threat_db))
4" 實驗結(jié)果與分析
4.1" 環(huán)境搭建
本文參考某企業(yè)真實的機房網(wǎng)絡(luò)拓?fù)?,研究搭建了一個涵蓋核心交換區(qū)、辦公接入?yún)^(qū)、Web服務(wù)區(qū)、數(shù)據(jù)庫區(qū)等典型分區(qū)的實驗環(huán)境。整個環(huán)境由10臺物理服務(wù)器、5臺交換機、2臺防火墻、1臺Cowrie蜜罐管理平臺組成。
4.2" 實驗數(shù)據(jù)結(jié)果與主動測試分析
實驗數(shù)據(jù)收集歷時1個月。在此期間,Cowrie蜜罐節(jié)點共計上線運行705 h,模擬開放了22號(SSH)、23號(Telnet)、3389號(RDP)等端口,對外暴露了多種常見應(yīng)用層協(xié)議漏洞(如Openssh、Tomcat、Spring等)[4]。經(jīng)過1個月的運行,各Cowrie蜜罐節(jié)點共捕獲到來自互聯(lián)網(wǎng)和內(nèi)網(wǎng)的惡意流量1350672次,日志數(shù)據(jù)量126 GB。其中,Web服務(wù)區(qū)的蜜罐節(jié)點捕獲的惡意流量最多,為753291次,占比55.76%;其次是辦公接入?yún)^(qū),捕獲流量374108次,占比27.69%;數(shù)據(jù)庫區(qū)排名第三,為223273次,占比16.55%。實驗期間,Cowrie管理平臺共收到安全事件告警28937次。人工復(fù)核了所有告警,去除重復(fù)項后,最終確認(rèn)獨立攻擊事件9372起,平均每小時發(fā)生13起攻擊事件。
為進(jìn)一步驗證主動誘捕系統(tǒng)捕獲攻擊行為的有效性,在實驗環(huán)境中人工構(gòu)造了一系列典型的滲透攻擊場景,測試包括:
(1)暴力破解。在攻擊者主機上使用Hydra工具對蜜罐的SSH服務(wù)發(fā)起密碼猜解攻擊。結(jié)果顯示,當(dāng)字典長度為1000時,系統(tǒng)平均3 s內(nèi)即可捕獲該攻擊行為;當(dāng)字典長度增大到100000時,捕獲時間也不超過1 min。
(2)SQL注入。在攻擊者主機上使用sqlmap工具對蜜罐的Web應(yīng)用發(fā)起SQL注入攻擊。結(jié)果顯示,系統(tǒng)能夠捕獲全部的注入嘗試,識別出使用的注入方法(布爾盲注、時間盲注、報錯注入、聯(lián)合查詢注入等),并成功地提取出數(shù)據(jù)庫banner、表名、列名等敏感信息。
(3)Webshell上傳。在攻擊者主機上編寫PHP Webshell,通過菜刀等工具上傳到蜜罐Web目錄。結(jié)果顯示,系統(tǒng)能夠?qū)崟r檢測出Webshell上傳行為,記錄攻擊者執(zhí)行的命令,并自動隔離Webshell文件。
5" 結(jié)語
主動誘捕是從攻擊者的視角出發(fā),利用蜜罐模擬真實系統(tǒng),誘使攻擊者對虛假目標(biāo)發(fā)起攻擊,從而主動發(fā)現(xiàn)攻擊企圖,獲取攻擊情報。Cowrie蜜罐系統(tǒng)專為交互式登錄攻擊而設(shè)計,能夠全面模擬Shell環(huán)境,捕獲攻擊者執(zhí)行的命令、上傳的文件等,非常適合機房網(wǎng)絡(luò)這種高交互環(huán)境的安全監(jiān)測需求,對于維護(hù)關(guān)鍵信息基礎(chǔ)設(shè)施的安全穩(wěn)定運行具有重要的作用。
參考文獻(xiàn)
[1]秦玉杰.基于蜜罐的內(nèi)網(wǎng)威脅感知技術(shù)研究[D].鄭州:鄭州大學(xué),2018.
[2]康紅蓮.基于蜜罐的欺騙防御系統(tǒng)的設(shè)計與實現(xiàn)[D].北京:北京郵電大學(xué),2020.
[3]毛偉杰.基于蜜罐的內(nèi)網(wǎng)威脅捕獲系統(tǒng)的研究與實現(xiàn)[D].鎮(zhèn)江:江蘇科技大學(xué),2021.
[4]張志安,周婧瑩,黎宇,等.基于蜜罐誘導(dǎo)的主動威脅狩獵防御方法[J].網(wǎng)絡(luò)安全技術(shù)與應(yīng)用,2024(1):1-2.
(編輯" 沈" 強)
Application research of active capture technology for computer room networks based on Cowrie honeypot system
ZHAO" Zhongli1, LI" Qing2
(1.Tianjin Baodi District Public Emergency Warning Information Release Center, Tianjin 301800, China;
2.Tianjin weather modification office in Jinnan District, Tianjin 300350, China)
Abstract: With the increasing frequency,stealth,and complexity of network attacks,traditional passive defense methods struggle to identify new threats in a timely and effective manner.Firstly,the basic principles and implementation mechanisms of Cowrie honeypots are introduced.Next,the system architecture design for active capture in computer room networks is elaborated,specifically discussing the core components of honeypot deployment,data collection,and analysis.Finally,the effectiveness and real-time performance of the system in capturing attack behaviors are validated based on an experimental test environment.
Key words: computer room network security; active capture; Cowrie; interactive honeypot