本技術(shù)涉及工業(yè)自動(dòng)化控制與嵌入式系統(tǒng)安全,尤其涉及一種基于國產(chǎn)化平臺(tái)的軟件代碼安全防護(hù)方法及系統(tǒng)。
背景技術(shù):
1、在工業(yè)自動(dòng)化、智能制造等領(lǐng)域,國產(chǎn)化平臺(tái)需要與機(jī)械設(shè)備實(shí)時(shí)交互,確保軟件代碼執(zhí)行過程的安全性和可靠性。由于設(shè)備運(yùn)行環(huán)境復(fù)雜,軟件代碼可能因異常指令或外部干擾導(dǎo)致機(jī)械故障。
2、目前,部分方案采用靜態(tài)規(guī)則庫結(jié)合硬件異常檢測技術(shù),通過預(yù)定義的代碼行為白名單和傳感器閾值判斷軟件執(zhí)行是否合規(guī)。當(dāng)檢測到代碼行為或傳感器數(shù)據(jù)超出預(yù)設(shè)范圍時(shí),系統(tǒng)觸發(fā)中斷或告警,暫停異常進(jìn)程的執(zhí)行。
3、靜態(tài)規(guī)則庫無法適應(yīng)動(dòng)態(tài)變化的設(shè)備運(yùn)行狀態(tài),導(dǎo)致誤判或漏判頻繁發(fā)生;同時(shí),依賴固定閾值難以應(yīng)對(duì)復(fù)雜工況下的實(shí)時(shí)調(diào)整需求,防護(hù)策略缺乏自適應(yīng)能力,影響系統(tǒng)運(yùn)行效率。
技術(shù)實(shí)現(xiàn)思路
1、本技術(shù)提供一種基于國產(chǎn)化平臺(tái)的軟件代碼安全防護(hù)方法及系統(tǒng),用以解決現(xiàn)有技術(shù)中國產(chǎn)化平臺(tái)下軟件代碼與機(jī)械設(shè)備交互的實(shí)時(shí)安全防護(hù)能力差的問題。
2、第一方面,本技術(shù)提供一種基于國產(chǎn)化平臺(tái)的軟件代碼安全防護(hù)方法,包括:
3、在國產(chǎn)化平臺(tái)的軟件代碼執(zhí)行過程中,獲取國產(chǎn)化平臺(tái)與外部機(jī)械設(shè)備進(jìn)行交互所產(chǎn)生的傳感數(shù)據(jù)流,所述傳感數(shù)據(jù)流中的傳感數(shù)據(jù)包含與軟件代碼執(zhí)行過程相關(guān)聯(lián)的設(shè)備狀態(tài)參數(shù);
4、在所述國產(chǎn)化平臺(tái)的外部時(shí)鐘同步模塊中,將所述設(shè)備狀態(tài)參數(shù)與所述軟件代碼指令的執(zhí)行節(jié)點(diǎn)進(jìn)行時(shí)間對(duì)齊,生成操作事件序列,所述軟件代碼指令為國產(chǎn)化平臺(tái)運(yùn)行時(shí)捕獲的函數(shù)調(diào)用、系統(tǒng)接口請(qǐng)求或機(jī)器級(jí)操作指令;
5、通過所述國產(chǎn)化平臺(tái)的內(nèi)存隔離運(yùn)行環(huán)境,采用強(qiáng)化學(xué)習(xí)機(jī)制對(duì)所述操作事件序列的動(dòng)態(tài)模式進(jìn)行分析,生成針對(duì)軟件代碼執(zhí)行路徑的實(shí)時(shí)安全防護(hù)規(guī)則,所述軟件代碼執(zhí)行路徑為由所述操作事件序列還原出的指令執(zhí)行順序及分支結(jié)構(gòu);
6、將所述實(shí)時(shí)安全防護(hù)規(guī)則動(dòng)態(tài)綁定至所述國產(chǎn)化平臺(tái)的內(nèi)核層,以動(dòng)態(tài)更新所述實(shí)時(shí)安全防護(hù)規(guī)則,并將更新后的安全防護(hù)規(guī)則反饋至所述內(nèi)核層,以形成閉環(huán)安全防護(hù)機(jī)制。
7、可選地,所述通過所述國產(chǎn)化平臺(tái)的內(nèi)存隔離運(yùn)行環(huán)境,采用強(qiáng)化學(xué)習(xí)機(jī)制對(duì)所述操作事件序列的動(dòng)態(tài)模式進(jìn)行分析,生成針對(duì)軟件代碼執(zhí)行路徑的實(shí)時(shí)安全防護(hù)規(guī)則,包括:
8、在所述國產(chǎn)化平臺(tái)的內(nèi)存隔離運(yùn)行環(huán)境中,將所述操作事件序列中的設(shè)備狀態(tài)參數(shù)與所述軟件代碼指令的執(zhí)行節(jié)點(diǎn)進(jìn)行逐幀匹配,篩選出與軟件代碼執(zhí)行路徑對(duì)應(yīng)的連續(xù)事件片段;
9、基于所述連續(xù)事件片段,提取所述軟件代碼執(zhí)行路徑中不同指令節(jié)點(diǎn)的關(guān)聯(lián)性權(quán)重,并構(gòu)建所述指令節(jié)點(diǎn)與所述連續(xù)事件片段之間的動(dòng)態(tài)依賴關(guān)系;
10、通過強(qiáng)化學(xué)習(xí)機(jī)制,基于所述動(dòng)態(tài)依賴關(guān)系對(duì)所述軟件代碼執(zhí)行路徑進(jìn)行多階段狀態(tài)劃分;
11、在所述多階段狀態(tài)劃分過程中,對(duì)所述軟件代碼執(zhí)行路徑內(nèi)每一階段的分支路徑進(jìn)行遍歷,以生成所述分支路徑的路徑可信度評(píng)分;
12、根據(jù)所述路徑可信度評(píng)分和所述關(guān)聯(lián)性權(quán)重,生成實(shí)時(shí)安全防護(hù)規(guī)則。
13、可選地,所述在所述多階段狀態(tài)劃分過程中,對(duì)所述軟件代碼執(zhí)行路徑內(nèi)每一階段的分支路徑進(jìn)行遍歷,以生成所述分支路徑的路徑可信度評(píng)分,包括:
14、根據(jù)所述多階段狀態(tài)劃分過程中每一階段的起始指令節(jié)點(diǎn)和終止指令節(jié)點(diǎn),確定所述軟件代碼執(zhí)行路徑在各階段內(nèi)的執(zhí)行流向;
15、在所述執(zhí)行流向中,從所述軟件代碼執(zhí)行路徑中,識(shí)別出與所述動(dòng)態(tài)依賴關(guān)系中設(shè)備狀態(tài)參數(shù)變化趨勢相沖突的分支路徑,并標(biāo)記為待驗(yàn)證分支路徑;
16、對(duì)于每一所述待驗(yàn)證分支路徑,獲取所述待驗(yàn)證分支路徑中全部指令節(jié)點(diǎn)對(duì)應(yīng)的設(shè)備狀態(tài)參數(shù)的實(shí)測值;
17、將所述實(shí)測值與所述動(dòng)態(tài)依賴關(guān)系中設(shè)備狀態(tài)參數(shù)的預(yù)期值進(jìn)行逐節(jié)點(diǎn)比對(duì);
18、根據(jù)比對(duì)結(jié)果,統(tǒng)計(jì)所述實(shí)測值與所述預(yù)期值的偏離次數(shù),并結(jié)合所述關(guān)聯(lián)性權(quán)重計(jì)算所述偏離次數(shù)對(duì)所述待驗(yàn)證分支路徑的影響因子;
19、將所述影響因子與所述待驗(yàn)證分支路徑中指令節(jié)點(diǎn)的時(shí)序密度進(jìn)行加權(quán)疊加,生成所述待驗(yàn)證分支路徑的路徑可信度評(píng)分。
20、可選地,所述根據(jù)所述路徑可信度評(píng)分和所述關(guān)聯(lián)性權(quán)重,生成實(shí)時(shí)安全防護(hù)規(guī)則,包括:
21、將所述路徑可信度評(píng)分按從高到低排序,結(jié)合評(píng)分分布密度,確定可信度閾值,其中所述評(píng)分分布密度為相同評(píng)分區(qū)間內(nèi)分支路徑的數(shù)量占比;
22、根據(jù)所述可信度閾值,篩選出所述路徑可信度評(píng)分高于所述可信度閾值且所述關(guān)聯(lián)性權(quán)重超過預(yù)設(shè)臨界值的分支路徑,以生成允許執(zhí)行路徑集合;
23、在所述允許執(zhí)行路徑集合中,根據(jù)每一分支路徑的指令節(jié)點(diǎn)時(shí)序密度和關(guān)聯(lián)性權(quán)重,為所述分支路徑分配動(dòng)態(tài)權(quán)限等級(jí);
24、基于所述動(dòng)態(tài)權(quán)限等級(jí),生成實(shí)時(shí)安全防護(hù)規(guī)則。
25、可選地,所述基于所述動(dòng)態(tài)權(quán)限等級(jí),生成實(shí)時(shí)安全防護(hù)規(guī)則,包括:
26、根據(jù)所述動(dòng)態(tài)權(quán)限等級(jí)與內(nèi)核層中的進(jìn)程執(zhí)行優(yōu)先級(jí)之間的映射關(guān)系,生成權(quán)限等級(jí)映射表;
27、基于所述內(nèi)核層中內(nèi)存訪問區(qū)間的邊界值和阻斷指令節(jié)點(diǎn)對(duì),構(gòu)建內(nèi)存控制策略集和阻斷條件集;
28、將所述權(quán)限等級(jí)映射表、所述內(nèi)存控制策略集和所述阻斷條件集按預(yù)設(shè)格式封裝為實(shí)時(shí)安全防護(hù)規(guī)則集。
29、可選地,所述在所述國產(chǎn)化平臺(tái)的外部時(shí)鐘同步模塊中,將所述設(shè)備狀態(tài)參數(shù)與所述軟件代碼指令的執(zhí)行節(jié)點(diǎn)進(jìn)行時(shí)間對(duì)齊,生成操作事件序列,包括:
30、在所述國產(chǎn)化平臺(tái)的外部時(shí)鐘同步模塊中,分別接收來自外部機(jī)械設(shè)備的傳感數(shù)據(jù)時(shí)間戳和國產(chǎn)化平臺(tái)的指令執(zhí)行時(shí)間戳;
31、通過所述外部時(shí)鐘同步模塊的全局時(shí)間基準(zhǔn),分別計(jì)算所述傳感數(shù)據(jù)時(shí)間戳、所述指令執(zhí)行時(shí)間戳與所述全局時(shí)間基準(zhǔn)的偏移量;
32、以所述全局時(shí)間基準(zhǔn)為軸,在預(yù)設(shè)的時(shí)間對(duì)齊容差范圍內(nèi),將所述設(shè)備狀態(tài)參數(shù)的數(shù)據(jù)點(diǎn)與所述軟件代碼指令的執(zhí)行節(jié)點(diǎn)進(jìn)行一對(duì)一匹配,當(dāng)所述傳感數(shù)據(jù)時(shí)間戳與所述指令執(zhí)行時(shí)間戳的偏移量差值不超過所述時(shí)間對(duì)齊容差時(shí),判定為匹配成功;
33、對(duì)匹配成功時(shí)對(duì)應(yīng)的所述數(shù)據(jù)點(diǎn)和所述執(zhí)行節(jié)點(diǎn)進(jìn)行綁定封裝,生成一個(gè)操作事件單元;
34、將所有所述操作事件單元按所述全局時(shí)間基準(zhǔn)的順序排列,構(gòu)成操作事件序列。
35、可選地,所述將所述實(shí)時(shí)安全防護(hù)規(guī)則動(dòng)態(tài)綁定至所述國產(chǎn)化平臺(tái)的內(nèi)核層,以動(dòng)態(tài)更新所述實(shí)時(shí)安全防護(hù)規(guī)則,包括:
36、在所述國產(chǎn)化平臺(tái)的內(nèi)核層中預(yù)置規(guī)則加載接口,通過所述規(guī)則加載接口將所述實(shí)時(shí)安全防護(hù)規(guī)則的權(quán)限等級(jí)映射表、內(nèi)存控制策略集和阻斷條件集注冊(cè)為內(nèi)核環(huán)境變量;
37、建立所述內(nèi)核層環(huán)境變量與所述傳感數(shù)據(jù)流之間的實(shí)時(shí)監(jiān)測通道;
38、通過所述實(shí)時(shí)監(jiān)測通道,比對(duì)待更新的設(shè)備狀態(tài)參數(shù)與所述阻斷條件集中預(yù)設(shè)的傳感數(shù)據(jù)閾值;
39、當(dāng)所述待更新的設(shè)備狀態(tài)參數(shù)超過所述傳感數(shù)據(jù)閾值時(shí),觸發(fā)規(guī)則更新條件;
40、基于所述規(guī)則更新條件,動(dòng)態(tài)更新所述實(shí)時(shí)安全防護(hù)規(guī)則。
41、第二方面,本技術(shù)提供一種基于國產(chǎn)化平臺(tái)的軟件代碼安全防護(hù)系統(tǒng),包括:
42、獲取模塊,用于在國產(chǎn)化平臺(tái)的軟件代碼執(zhí)行過程中,獲取國產(chǎn)化平臺(tái)與外部機(jī)械設(shè)備進(jìn)行交互所產(chǎn)生的傳感數(shù)據(jù)流,所述傳感數(shù)據(jù)流中的傳感數(shù)據(jù)包含與軟件代碼執(zhí)行過程相關(guān)聯(lián)的設(shè)備狀態(tài)參數(shù);
43、對(duì)齊模塊,用于在所述國產(chǎn)化平臺(tái)的外部時(shí)鐘同步模塊中,將所述設(shè)備狀態(tài)參數(shù)與所述軟件代碼指令的執(zhí)行節(jié)點(diǎn)進(jìn)行時(shí)間對(duì)齊,生成操作事件序列,所述軟件代碼指令為國產(chǎn)化平臺(tái)運(yùn)行時(shí)捕獲的函數(shù)調(diào)用、系統(tǒng)接口請(qǐng)求或機(jī)器級(jí)操作指令;
44、分析模塊,用于通過所述國產(chǎn)化平臺(tái)的內(nèi)存隔離運(yùn)行環(huán)境,采用強(qiáng)化學(xué)習(xí)機(jī)制對(duì)所述操作事件序列的動(dòng)態(tài)模式進(jìn)行分析,生成針對(duì)軟件代碼執(zhí)行路徑的實(shí)時(shí)安全防護(hù)規(guī)則,所述軟件代碼執(zhí)行路徑為由所述操作事件序列還原出的指令執(zhí)行順序及分支結(jié)構(gòu);
45、更新模塊,用于將所述實(shí)時(shí)安全防護(hù)規(guī)則動(dòng)態(tài)綁定至所述國產(chǎn)化平臺(tái)的內(nèi)核層,以動(dòng)態(tài)更新所述實(shí)時(shí)安全防護(hù)規(guī)則,并將更新后的安全防護(hù)規(guī)則反饋至所述內(nèi)核層,以形成閉環(huán)安全防護(hù)機(jī)制。
46、第三方面,本技術(shù)提供一種計(jì)算設(shè)備,包括處理器和存儲(chǔ)器,所述存儲(chǔ)器中存儲(chǔ)有計(jì)算機(jī)程序,所述處理器被設(shè)置為運(yùn)行所述計(jì)算機(jī)程序以執(zhí)行第一方面任一所述的一種基于國產(chǎn)化平臺(tái)的軟件代碼安全防護(hù)方法。
47、第四方面,本技術(shù)提供一種計(jì)算機(jī)存儲(chǔ)介質(zhì),其上存儲(chǔ)有計(jì)算機(jī)程序指令,所述計(jì)算機(jī)程序指令被處理器執(zhí)行時(shí)實(shí)現(xiàn)第一方面中任意一項(xiàng)所述的一種基于國產(chǎn)化平臺(tái)的軟件代碼安全防護(hù)方法。
48、本技術(shù)中,提供了一種基于國產(chǎn)化平臺(tái)的軟件代碼安全防護(hù)方法,該方法包括:在國產(chǎn)化平臺(tái)的軟件代碼執(zhí)行過程中,獲取國產(chǎn)化平臺(tái)與外部機(jī)械設(shè)備進(jìn)行交互所產(chǎn)生的傳感數(shù)據(jù)流,所述傳感數(shù)據(jù)流中的傳感數(shù)據(jù)包含與軟件代碼執(zhí)行過程相關(guān)聯(lián)的設(shè)備狀態(tài)參數(shù);在所述國產(chǎn)化平臺(tái)的外部時(shí)鐘同步模塊中,將所述設(shè)備狀態(tài)參數(shù)與所述軟件代碼指令的執(zhí)行節(jié)點(diǎn)進(jìn)行時(shí)間對(duì)齊,生成操作事件序列,所述軟件代碼指令為國產(chǎn)化平臺(tái)運(yùn)行時(shí)捕獲的函數(shù)調(diào)用、系統(tǒng)接口請(qǐng)求或機(jī)器級(jí)操作指令;通過所述國產(chǎn)化平臺(tái)的內(nèi)存隔離運(yùn)行環(huán)境,采用強(qiáng)化學(xué)習(xí)機(jī)制對(duì)所述操作事件序列的動(dòng)態(tài)模式進(jìn)行分析,生成針對(duì)軟件代碼執(zhí)行路徑的實(shí)時(shí)安全防護(hù)規(guī)則,所述軟件代碼執(zhí)行路徑為由所述操作事件序列還原出的指令執(zhí)行順序及分支結(jié)構(gòu);將所述實(shí)時(shí)安全防護(hù)規(guī)則動(dòng)態(tài)綁定至所述國產(chǎn)化平臺(tái)的內(nèi)核層,以動(dòng)態(tài)更新所述實(shí)時(shí)安全防護(hù)規(guī)則,并將更新后的安全防護(hù)規(guī)則反饋至所述內(nèi)核層,以形成閉環(huán)安全防護(hù)機(jī)制。
49、本技術(shù)提供的技術(shù)方案具有以下有益效果:
50、本技術(shù)實(shí)時(shí)采集機(jī)械設(shè)備運(yùn)行狀態(tài),為安全防護(hù)提供硬件行為數(shù)據(jù)基礎(chǔ),確保防護(hù)系統(tǒng)能感知物理環(huán)境變化。通過獨(dú)立時(shí)鐘模塊實(shí)現(xiàn)毫秒級(jí)時(shí)間對(duì)齊,精確建立代碼指令與設(shè)備狀態(tài)的因果關(guān)系,解決傳統(tǒng)方案中時(shí)序錯(cuò)位導(dǎo)致的誤判問題。在隔離環(huán)境中利用強(qiáng)化學(xué)習(xí)動(dòng)態(tài)建模代碼-硬件交互模式,自動(dòng)識(shí)別異常執(zhí)行路徑,生成適應(yīng)復(fù)雜工況的防護(hù)策略。實(shí)現(xiàn)防護(hù)規(guī)則的無縫熱加載,通過傳感數(shù)據(jù)反饋實(shí)時(shí)優(yōu)化規(guī)則,形成"監(jiān)測-決策-執(zhí)行"的自適應(yīng)防護(hù)閉環(huán)。
51、進(jìn)一步地,本技術(shù)還通過內(nèi)存隔離環(huán)境逐幀匹配設(shè)備狀態(tài)與指令節(jié)點(diǎn),篩選連續(xù)事件片段并構(gòu)建動(dòng)態(tài)依賴關(guān)系,基于強(qiáng)化學(xué)習(xí)劃分多階段執(zhí)行路徑狀態(tài),結(jié)合分支路徑可信度評(píng)分和關(guān)聯(lián)性權(quán)重生成實(shí)時(shí)防護(hù)規(guī)則。
52、并且,該方案突破了靜態(tài)規(guī)則的局限性,實(shí)現(xiàn)了精確量化代碼指令對(duì)硬件狀態(tài)的影響權(quán)重;動(dòng)態(tài)識(shí)別異常分支路徑并評(píng)分;根據(jù)實(shí)時(shí)工況調(diào)整防護(hù)策略優(yōu)先級(jí),使系統(tǒng)在保障安全性的同時(shí)維持最佳運(yùn)行效率。
53、本技術(shù)的這些方面或其他方面在以下實(shí)施例的描述中會(huì)更加簡明易懂。