本發(fā)明涉及蜜罐交互,尤其是涉及一種基于編碼器和解碼器的工業(yè)蜜罐高交互方法及系統(tǒng)。
背景技術(shù):
1、相較于傳統(tǒng)網(wǎng)絡(luò)安全,工業(yè)安全需要在確保生產(chǎn)效率的前提下,同時(shí)保障網(wǎng)絡(luò)的安全性。通常,工業(yè)安全主要依賴旁路保護(hù)機(jī)制來保障網(wǎng)絡(luò)通信,抵御網(wǎng)絡(luò)安全威脅,從而使得蜜罐技術(shù)在工業(yè)網(wǎng)絡(luò)安全領(lǐng)域得到了有效應(yīng)用。
2、蜜罐通過模擬真實(shí)設(shè)備的行為,并在部署過程中故意暴露自身端口、服務(wù)等相關(guān)信息吸引攻擊者攻擊,能夠有效的捕捉到攻擊者行為,分析其攻擊手段和動機(jī)。蜜罐的交互性決定了蜜罐的價(jià)值,交互性高的蜜罐能夠?qū)粽叩母鞣N請求消息做出有效的回復(fù),增強(qiáng)蜜罐的欺騙能力。然而,目前大多數(shù)應(yīng)用于工業(yè)網(wǎng)絡(luò)的蜜罐對于攻擊者具有行業(yè)針對性的嗅探行為無法給予合理響應(yīng),此類蜜罐易被攻擊者識別標(biāo)記,無法進(jìn)一步捕獲攻擊者的惡意行為。因此,提高蜜罐的交互性對于快速發(fā)現(xiàn)工業(yè)網(wǎng)絡(luò)中存在的威脅,為工業(yè)網(wǎng)絡(luò)安全提供有效的防護(hù)策略具有重要意義。
3、?“yamamoto?m,?kakei?s,?saito?s.?firmpot:?a?framework?for?intelligent-interaction?honeypots?using?firmware?of?iot?devices[c].?2021?ninthinternational?symposium?on?computing?and?networking?workshops?(candarw).ieee,?2021:?405-411.”提出了一種智能交互蜜罐方法,其通過將攻擊者請求消息轉(zhuǎn)發(fā)至公網(wǎng)設(shè)備的方式來獲得請求與響應(yīng)的關(guān)系語料庫,并為其訓(xùn)練一個(gè)神經(jīng)對話模型來生成最佳的響應(yīng)消息。但該對話模型一旦建立,其對于同一請求消息只能給出相同的回復(fù)。而在真實(shí)工業(yè)場景中,設(shè)備的寄存器狀態(tài)不斷發(fā)生變化,其對于不同時(shí)間的相同請求應(yīng)當(dāng)給與不同的回復(fù)消息。
4、“siniosoglou?i,?argyriou?v,?lagkas?t,?et?al.?covert?distributedtraining?of?deep?federated?industrial?honeypots[c]//2021?ieee?globecomworkshops?(gc?wkshps).?ieee,?2021:?1-6.”提出了一種基于聯(lián)邦學(xué)習(xí)的分布式蜜罐方法,該方法通過在每個(gè)蜜罐上訓(xùn)練一個(gè)lstm-autoencoder預(yù)測模型來生成modbus協(xié)議的寄存器值,并使用該預(yù)測值模擬真實(shí)工業(yè)設(shè)備的狀態(tài)變化。同時(shí),聯(lián)邦學(xué)習(xí)能夠?yàn)樗忻酃薰?jié)點(diǎn)生成一個(gè)最優(yōu)的全局模型,以保障模型的預(yù)測準(zhǔn)確性。雖然該方案能夠很好的復(fù)制真實(shí)設(shè)備的狀態(tài)變化,但其對于設(shè)備狀態(tài)的模擬使短期的,需要在蜜罐部署期間不斷的與真實(shí)設(shè)備進(jìn)行數(shù)據(jù)交換,這破壞了原有的網(wǎng)絡(luò)結(jié)構(gòu)。此外,該方法的重點(diǎn)在于設(shè)備模擬,缺乏對攻擊者的有效反應(yīng)。
5、綜上所述,現(xiàn)有的工業(yè)蜜罐交互方法存在實(shí)用性差、考慮問題片面、脫離實(shí)際場景等問題,導(dǎo)致其極易被攻擊者所識別,從而喪失價(jià)值,實(shí)用性和參考性不高。
技術(shù)實(shí)現(xiàn)思路
1、為了解決上述提到的問題,本發(fā)明提供一種基于編碼器和解碼器的工業(yè)蜜罐高交互方法及系統(tǒng)。利用編碼-解碼器模型使蜜罐在與攻擊者的交互過程中反映真實(shí)工業(yè)設(shè)備的寄存器狀態(tài)變化,以增強(qiáng)蜜罐欺騙能力。
2、第一方面,本發(fā)明提供的一種基于編碼器和解碼器的工業(yè)蜜罐高交互方法,采用如下的技術(shù)方案:
3、一種基于編碼器和解碼器的工業(yè)蜜罐高交互方法,包括:
4、獲取水處理數(shù)據(jù);
5、利用獲取的水處理數(shù)據(jù)訓(xùn)練編碼-解碼器模型,其中,對編碼-解碼器模型的輸出進(jìn)行損失函數(shù)計(jì)算;直至達(dá)到最大訓(xùn)練輪數(shù)r后停止對模型訓(xùn)練,并保存模型參數(shù);
6、將保存的模型參數(shù)生成長期模擬數(shù)據(jù),并按時(shí)間順序?qū)懭爰拇嫫鲾?shù)值配置文件中;
7、利用蜜罐根據(jù)生成的寄存器數(shù)值配置文件對攻擊者的請求進(jìn)行響應(yīng)。
8、進(jìn)一步地,所述獲取水處理數(shù)據(jù),包括獲取水處理過程中不同傳感器7天內(nèi)的采樣值,采樣間隔為分鐘,具體包括lit101水箱傳感數(shù)據(jù)、ait203次氯酸鈉濃度傳感器數(shù)據(jù)、lit301超濾裝置給水箱傳感數(shù)據(jù)和lit401反滲透給水箱傳感數(shù)據(jù)。
9、進(jìn)一步地,所述利用獲取的水處理數(shù)據(jù)訓(xùn)練編碼-解碼器模型,包括將數(shù)據(jù)?輸入模型的編碼器,獲得其編碼器隱藏層狀態(tài),進(jìn)而計(jì)算解碼器在某個(gè)時(shí)刻的隱藏層狀態(tài),將所有時(shí)刻的編碼器和解碼器隱藏層狀態(tài)輸入注意力模塊,得到上下文向量,將解碼器隱藏層狀態(tài)和上下文向量輸入全連接層得到模型本時(shí)刻輸出值。
10、進(jìn)一步地,所述對編碼-解碼器模型的輸出進(jìn)行損失函數(shù)計(jì)算,對每個(gè)時(shí)間點(diǎn)的模型輸出計(jì)算huber分位數(shù)損失函數(shù),進(jìn)而計(jì)算模型的平均損失函數(shù),huber分位數(shù)損失函數(shù)表示為:
11、
12、
13、其中代表t時(shí)刻的真實(shí)值,表示目標(biāo)分位數(shù),表示時(shí)刻模型輸出的第分位數(shù)的值,q的取值分別為0.1,0.5和0.9,?為huber函數(shù),當(dāng)真實(shí)值與模型輸出值的誤差小于閾值=0.05時(shí),為l2損失函數(shù),反之,為l1損失函數(shù);用于保證單點(diǎn)損失函數(shù)在點(diǎn)處可微,使該函數(shù)能夠被用于神經(jīng)網(wǎng)絡(luò)的梯度下降訓(xùn)練。
14、進(jìn)一步地,所述將保存的模型參數(shù)生成長期模擬數(shù)據(jù),包括將測試寄存器數(shù)據(jù)作為測試數(shù)據(jù)輸入所保存的編碼-解碼器模型中,得到模型單次的模擬結(jié)果,設(shè)定寄存器值的合理區(qū)間,選取規(guī)則挑選模擬值進(jìn)行輸出并回填至測試數(shù)據(jù)的尾部,并將測試數(shù)據(jù)后移t=50位,計(jì)算生成全部模擬數(shù)據(jù)所需要的循環(huán)次數(shù),直至達(dá)到最大循環(huán)次數(shù)n或測試數(shù)據(jù)具有空值時(shí)停止生成模擬數(shù)據(jù)。
15、進(jìn)一步地,所述按時(shí)間順序?qū)懭爰拇嫫鲾?shù)值配置文件中,包括將所有生成的模擬數(shù)據(jù)按時(shí)間順序?qū)懭爰拇嫫鲾?shù)值配置文件中,對于每個(gè)10進(jìn)制模擬數(shù)據(jù),根據(jù)ieee745數(shù)據(jù)轉(zhuǎn)換規(guī)則將其轉(zhuǎn)換為4字節(jié)十六進(jìn)制數(shù)值,并將其按時(shí)間戳寫入兩個(gè)連續(xù)地址的寄存器中。
16、進(jìn)一步地,所述利用蜜罐根據(jù)生成的寄存器數(shù)值配置文件對攻擊者的請求進(jìn)行響應(yīng),包括計(jì)算攻擊者發(fā)出的modbus請求數(shù)據(jù)包的時(shí)間戳,利用蜜罐對攻擊者所發(fā)出的modbus請求數(shù)據(jù)包按協(xié)議規(guī)約進(jìn)行解析,解析字段包括事務(wù)標(biāo)識符、協(xié)議標(biāo)識符、長度、單元標(biāo)識符、功能碼、起始地址、數(shù)量和寄存器數(shù)值;所述蜜罐根據(jù)設(shè)定的規(guī)則生成對攻擊者的響應(yīng)消息。
17、第二方面,一種基于編碼器和解碼器的工業(yè)蜜罐高交互系統(tǒng),包括:
18、數(shù)據(jù)獲取模塊,被配置為,獲取水處理數(shù)據(jù);
19、模型訓(xùn)練模塊,被配置為,利用獲取的水處理數(shù)據(jù)訓(xùn)練編碼-解碼器模型,其中,對編碼-解碼器模型的輸出進(jìn)行損失函數(shù)計(jì)算;直至達(dá)到最大訓(xùn)練輪數(shù)r后停止對模型訓(xùn)練,并保存模型參數(shù);
20、數(shù)據(jù)生成模塊,被配置為,將保存的模型參數(shù)生成長期模擬數(shù)據(jù),并按時(shí)間順序?qū)懭爰拇嫫鲾?shù)值配置文件中;
21、響應(yīng)模塊,被配置為,利用蜜罐根據(jù)生成的寄存器數(shù)值配置文件對攻擊者的請求進(jìn)行響應(yīng)。
22、第三方面,本發(fā)明提供一種計(jì)算機(jī)可讀存儲介質(zhì),其中存儲有多條指令,所述指令適于由終端設(shè)備的處理器加載并執(zhí)行所述的一種基于編碼器和解碼器的工業(yè)蜜罐高交互方法。
23、第四方面,本發(fā)明提供一種終端設(shè)備,包括處理器和計(jì)算機(jī)可讀存儲介質(zhì),處理器用于實(shí)現(xiàn)各指令;計(jì)算機(jī)可讀存儲介質(zhì)用于存儲多條指令,所述指令適于由處理器加載并執(zhí)行所述的一種基于編碼器和解碼器的工業(yè)蜜罐高交互方法。
24、綜上所述,本發(fā)明具有如下的有益技術(shù)效果:
25、(1)本技術(shù)提出了一個(gè)用于長期模擬工業(yè)設(shè)備寄存器狀態(tài)的編碼-解碼器模型,該模型利用經(jīng)過huber范數(shù)平滑的分位數(shù)損失函數(shù)替換常用的mse損失函數(shù),能夠在模擬過程中避免異常值的產(chǎn)生并有效的延長模擬時(shí)長。(2)本技術(shù)提出了一個(gè)基于modbus工業(yè)協(xié)議的高交互蜜罐,該蜜罐實(shí)現(xiàn)了完整的modbus協(xié)議服務(wù),并利用編碼-解碼器所生成的模擬數(shù)據(jù)與攻擊者進(jìn)行實(shí)時(shí)交互,以增強(qiáng)蜜罐的欺騙能力(3)本技術(shù)所提出的蜜罐方案能夠在不與真實(shí)工業(yè)設(shè)備通訊的前提下,使用少量數(shù)據(jù)完成對設(shè)備長期的模擬仿真,并在實(shí)際部署中捕獲到了更多的惡意流量。