999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

擬態(tài)通用運(yùn)行環(huán)境的框架設(shè)計(jì)

2020-03-19 12:24:48邵培南
計(jì)算機(jī)工程 2020年3期
關(guān)鍵詞:服務(wù)管理

付 琳,邵培南,應(yīng) 飛,解 維

(中國(guó)電子科技集團(tuán)公司第三十二研究所,上海 201808)

0 概述

信息系統(tǒng)運(yùn)行環(huán)境由網(wǎng)絡(luò)通信層、基礎(chǔ)層、應(yīng)用支撐層和應(yīng)用層組成,系統(tǒng)的運(yùn)行可能受到來(lái)自軟硬件病毒、后門(mén)和漏洞的安全威脅攻擊[1]。例如對(duì)應(yīng)用層HTTP協(xié)議的網(wǎng)頁(yè)篡改和SQL注入、對(duì)應(yīng)用支撐層Web容器和分布式文件系統(tǒng)的后門(mén)和漏洞攻擊、對(duì)基礎(chǔ)層云容器、操作系統(tǒng)的后門(mén)和漏洞攻擊等[2]。以上攻擊行為可能會(huì)導(dǎo)致信息系統(tǒng)運(yùn)行的功能異常或終止,核心數(shù)據(jù)受到篡改、竊取或破壞[3]。

信息系統(tǒng)的安全防御技術(shù)分為被動(dòng)安全防御和主動(dòng)安全防御[4]。被動(dòng)安全防御基于已知安全威脅特征規(guī)則的病毒、后門(mén)、漏洞等進(jìn)行威脅診斷和清洗,如防火墻、病毒檢測(cè)、后門(mén)檢測(cè)等[5]。擬態(tài)防御理論由鄔江興院士提出,是一種以動(dòng)態(tài)異構(gòu)冗余(Dynamic Heterogeneous Redundancy,DHR)原理[6]為基礎(chǔ)的主動(dòng)安全防御技術(shù)。

本文將DHR架構(gòu)與擬態(tài)信息系統(tǒng)相結(jié)合,設(shè)計(jì)一種擬態(tài)通用運(yùn)行環(huán)境(Mimic Common Operating Environment,MCOE)框架。MCOE以運(yùn)行擬態(tài)信息系統(tǒng)的異構(gòu)執(zhí)行體池為對(duì)象,提供N個(gè)異構(gòu)執(zhí)行體部署、服務(wù)請(qǐng)求的分發(fā)、執(zhí)行、表決[7]、管理和安全威脅診斷[8]等運(yùn)行支撐功能,用以保障安全威脅攻擊情景下服務(wù)請(qǐng)求的正確、可靠運(yùn)行[9]。

1 信息系統(tǒng)擬態(tài)防御

信息系統(tǒng)的網(wǎng)絡(luò)通信層擬態(tài)防御主要基于擬態(tài)網(wǎng)絡(luò)通信產(chǎn)品來(lái)實(shí)施[10]。本文提及的信息系統(tǒng)的擬態(tài)防御,主要是針對(duì)基礎(chǔ)層、應(yīng)用支撐層和應(yīng)用層的擬態(tài)防御。通常,擬態(tài)信息系統(tǒng)的必要組成要素如下:

1)擬態(tài)化改造中功能等價(jià)的K(K≥1)個(gè)冗余異構(gòu)應(yīng)用程序源代碼。對(duì)系統(tǒng)應(yīng)用程序源代碼的擬態(tài)化改造主要是增加標(biāo)簽化的表決調(diào)用和表決前后的上下文處理。標(biāo)簽化的表決調(diào)用指第三方API(如Oracle)參數(shù)、關(guān)鍵安全數(shù)據(jù)文件、庫(kù)表數(shù)據(jù)結(jié)構(gòu)操作、指定程序點(diǎn)的內(nèi)在程序片段功能或內(nèi)存關(guān)鍵數(shù)據(jù)的一致性表決調(diào)用。對(duì)此部分?jǐn)?shù)據(jù)的一致性表決主要通過(guò)防止關(guān)鍵文件、數(shù)據(jù)庫(kù)受到篡改確保關(guān)鍵功能正確執(zhí)行,實(shí)現(xiàn)細(xì)粒度的安全防御。對(duì)源代碼的擬態(tài)化改造具體分為如下3個(gè)部分:

(1)標(biāo)簽化表決調(diào)用(包括標(biāo)簽化API標(biāo)識(shí)、表決主鍵、表決參數(shù)JSON字符串)和表決調(diào)用前后上下文程序段處理。

(2)標(biāo)簽化第三方API的協(xié)同執(zhí)行調(diào)用,防止因服務(wù)請(qǐng)求并發(fā)執(zhí)行引起的N個(gè)異構(gòu)執(zhí)行體API不一致。

(3)添加API鉤子函數(shù)和統(tǒng)一處理組件,用于識(shí)別利用后門(mén)和漏洞訪問(wèn)的第三方API,如識(shí)別數(shù)據(jù)竊取的通信API或SQL語(yǔ)句。

2)異構(gòu)軟硬件構(gòu)造化或擬態(tài)軟件產(chǎn)品構(gòu)建化的系統(tǒng)三層異構(gòu)冗余的運(yùn)行環(huán)境設(shè)施。例如:異構(gòu)執(zhí)行體[11]基礎(chǔ)層操作系統(tǒng)、云容器、虛擬機(jī)的異構(gòu),應(yīng)用支撐層Web容器的異構(gòu),應(yīng)用層擬態(tài)存儲(chǔ)[12]等擬態(tài)產(chǎn)品的異構(gòu)。

擬態(tài)信息系統(tǒng)的運(yùn)行支撐環(huán)境為基于系統(tǒng)異構(gòu)應(yīng)用程序源代碼和運(yùn)行環(huán)境設(shè)施形成的異構(gòu)執(zhí)行體池,由基礎(chǔ)層A冗余異構(gòu)、應(yīng)用支撐層B冗余異構(gòu)、應(yīng)用層的K冗余異構(gòu)形成具有M=A×B×K種異構(gòu)執(zhí)行體的異構(gòu)執(zhí)行體池。在受到安全威脅攻擊的情況下,系統(tǒng)運(yùn)行支撐環(huán)境的異構(gòu)性可確保系統(tǒng)正確可靠運(yùn)行。

2 MCOE框架體系設(shè)計(jì)

MCOE實(shí)現(xiàn)面向服務(wù)請(qǐng)求的N個(gè)異構(gòu)執(zhí)行體執(zhí)行過(guò)程的自動(dòng)化,對(duì)服務(wù)請(qǐng)求進(jìn)行入口、過(guò)程、結(jié)果三級(jí)安全防護(hù),并且提供了集成化的分發(fā)和表決的接口規(guī)范[13]。

2.1 MCOE總體框架

MCOE是實(shí)現(xiàn)面向C/C++、Java語(yǔ)言開(kāi)發(fā)的 C/S或B/S信息系統(tǒng)的擬態(tài)防御架構(gòu)[14],為擬態(tài)信息系統(tǒng)提供了自動(dòng)化的通用運(yùn)行環(huán)境和擬態(tài)防御手段,其防御方法和目標(biāo)如下:

1)通過(guò)N個(gè)異構(gòu)執(zhí)行體運(yùn)行節(jié)點(diǎn)軟硬件資源異構(gòu)最大化的資源調(diào)度,主動(dòng)防御特定軟硬件后門(mén)漏洞引起的安全威脅。

2)通過(guò)異構(gòu)執(zhí)行體運(yùn)行節(jié)點(diǎn)軟硬件資源和資源對(duì)象(如云容器、虛擬機(jī))調(diào)度的隨機(jī)性和動(dòng)態(tài)性最大化,及時(shí)阻斷由系統(tǒng)四層軟硬件發(fā)起的安全威脅攻擊。

3)通過(guò)服務(wù)請(qǐng)求執(zhí)行過(guò)程中N個(gè)異構(gòu)執(zhí)行體內(nèi)部和服務(wù)請(qǐng)求響應(yīng)結(jié)果的兩級(jí)表決,防止關(guān)鍵的文件、數(shù)據(jù)庫(kù)、內(nèi)存數(shù)據(jù)結(jié)構(gòu)映像受到篡改,確保在受到安全威脅的情況下系統(tǒng)能夠正確運(yùn)行。

MCOE總體框架如圖1所示,其中包括分發(fā)、內(nèi)部表決、外部表決、管理和協(xié)同5個(gè)服務(wù)器,以及部署在各個(gè)服務(wù)器上的節(jié)點(diǎn)代理服務(wù)進(jìn)程。

服務(wù)請(qǐng)求主鍵為分發(fā)服務(wù)器接收到客戶(hù)端服務(wù)請(qǐng)求時(shí)創(chuàng)建的唯一標(biāo)識(shí),MOCE體系架構(gòu)中的各個(gè)服務(wù)器通過(guò)服務(wù)請(qǐng)求主鍵進(jìn)行關(guān)聯(lián)。客戶(hù)端服務(wù)請(qǐng)求驅(qū)動(dòng)的MCOE,其中各服務(wù)器間協(xié)同工作的運(yùn)行場(chǎng)景如下:

1)分發(fā)服務(wù)器接收客戶(hù)端服務(wù)請(qǐng)求,按需進(jìn)行已知特征安全威脅[15]識(shí)別和清洗,調(diào)用管理服務(wù)器的資源調(diào)度服務(wù)接口獲取相應(yīng)服務(wù)請(qǐng)求,執(zhí)行所需的N個(gè)異構(gòu)執(zhí)行體、內(nèi)部表決服務(wù)器和協(xié)同運(yùn)行服務(wù)器的運(yùn)行節(jié)點(diǎn)資源。

2)分發(fā)服務(wù)器發(fā)送包含服務(wù)請(qǐng)求主鍵和各個(gè)服務(wù)器運(yùn)行節(jié)點(diǎn)資源(服務(wù)器、云容器或虛擬機(jī)對(duì)象資源)的文件給相應(yīng)服務(wù)器的運(yùn)行節(jié)點(diǎn)代理服務(wù)。

3)N個(gè)異構(gòu)執(zhí)行體、內(nèi)部表決服務(wù)器和協(xié)同運(yùn)行服務(wù)器的運(yùn)行節(jié)點(diǎn)代理接收文件后,在相應(yīng)系統(tǒng)配置文件中創(chuàng)建基于服務(wù)請(qǐng)求主鍵的待處理配置記錄,并向分發(fā)服務(wù)器返回應(yīng)答。

4)分發(fā)服務(wù)器轉(zhuǎn)發(fā)服務(wù)請(qǐng)求到相應(yīng)的N個(gè)異構(gòu)執(zhí)行體服務(wù)器。

5)N個(gè)異構(gòu)執(zhí)行體服務(wù)器執(zhí)行服務(wù)請(qǐng)求,當(dāng)執(zhí)行到關(guān)鍵數(shù)據(jù)操作、重要功能模塊和標(biāo)簽化的第三方API時(shí),讀取待處理配置記錄中的內(nèi)部表決服務(wù)器地址,調(diào)用內(nèi)部表決服務(wù)器對(duì)表決內(nèi)容進(jìn)行一致性表決,同時(shí)對(duì)未標(biāo)簽化的API進(jìn)行安全威脅診斷和處理。

6)內(nèi)部表決服務(wù)器對(duì)于表決異常的結(jié)果進(jìn)行表決,對(duì)結(jié)果做魯棒性處理,上報(bào)異常到管理服務(wù)器,同時(shí)反饋內(nèi)部表決結(jié)果(一致Y/異常E)給相應(yīng)異構(gòu)執(zhí)行體。

7)內(nèi)部表決結(jié)果為Y的異構(gòu)執(zhí)行體繼續(xù)執(zhí)行程序,對(duì)標(biāo)簽化的第三方API調(diào)用協(xié)同執(zhí)行服務(wù)器進(jìn)行后續(xù)處理。協(xié)同執(zhí)行服務(wù)器具體驅(qū)動(dòng)第三方API的執(zhí)行,返回包含執(zhí)行結(jié)果參數(shù)的標(biāo)簽化API給調(diào)用方的相應(yīng)執(zhí)行體。

8)分發(fā)服務(wù)器接收和預(yù)處理N個(gè)異構(gòu)執(zhí)行體服務(wù)請(qǐng)求的響應(yīng)結(jié)果,調(diào)用管理服務(wù)器的資源調(diào)度服務(wù)接口獲取外部表決服務(wù)器地址,同時(shí)驅(qū)動(dòng)該外部表決服務(wù)器執(zhí)行相應(yīng)的表決。

9)外部表決服務(wù)器對(duì)于表決,對(duì)異常的結(jié)果進(jìn)行表決,對(duì)結(jié)果做魯棒性處理,上報(bào)異常到管理服務(wù)器,同時(shí)反饋外部表決結(jié)果(一致Y/異常E) 給分發(fā)服務(wù)器。

10)分發(fā)服務(wù)器收到外部表決結(jié)果,若表決結(jié)果為一致,則返回正常的服務(wù)請(qǐng)求響應(yīng)結(jié)果給客戶(hù)端;否則返回異常,由客戶(hù)端重新發(fā)起該請(qǐng)求。

在內(nèi)部表決和外部表決執(zhí)行過(guò)程中,表決結(jié)果為異常的異構(gòu)執(zhí)行體節(jié)點(diǎn)資源和運(yùn)行上下文均發(fā)給管理服務(wù)器。對(duì)于經(jīng)表決魯棒性處理后確定的異常,由表決服務(wù)器實(shí)時(shí)向管理服務(wù)器發(fā)出告警,管理服務(wù)器交互式地進(jìn)行安全威脅診斷、清洗和恢復(fù)。

圖1 MCOE體系架構(gòu)

2.2 MCOE各服務(wù)器程序處理框架設(shè)計(jì)

MCOE各個(gè)服務(wù)器及部署在服務(wù)器上的運(yùn)行節(jié)點(diǎn)代理服務(wù)對(duì)服務(wù)請(qǐng)求的處理,遵循如圖2所示的主程序統(tǒng)一處理框架。

圖2 各服務(wù)器主程序處理框架

Fig.2Processing framework of main programs in eachserver

主程序統(tǒng)一處理框架分為初始化、主程序任務(wù)循環(huán)處理、服務(wù)請(qǐng)求通信和預(yù)處理線程、任務(wù)處理子線程4個(gè)部分。

1)初始化。進(jìn)行服務(wù)請(qǐng)求處理任務(wù)隊(duì)列初始化,創(chuàng)建服務(wù)請(qǐng)求任務(wù)消息包的接收和預(yù)處理線程。

2)主程序任務(wù)循環(huán)處理。任務(wù)循環(huán)處理偽代碼如下:

Read隊(duì)列元素;

While(true){//循環(huán)處理

//P為預(yù)處理狀態(tài),在表決時(shí)隊(duì)列元素包括2N/3個(gè)表決//參數(shù)為滿足執(zhí)行條件

If(任務(wù)隊(duì)列元素狀態(tài)標(biāo)志==“P” and 滿足執(zhí)行條件){

設(shè)置:任務(wù)隊(duì)列元素執(zhí)行標(biāo)志=“E”;//E為執(zhí)行狀態(tài)

創(chuàng)建相應(yīng)任務(wù)隊(duì)列元素的任務(wù)處理子線程;

Read Next任務(wù)隊(duì)列元素;

}ElseIf(任務(wù)隊(duì)列元素狀態(tài)標(biāo)志==“C”){

//C為任務(wù)完成狀態(tài)

刪除該隊(duì)列元素;

Read 當(dāng)前隊(duì)列元素;

}Else{//任務(wù)隊(duì)列元素狀態(tài)為未完成狀態(tài)

Read Next任務(wù)隊(duì)列元素;}}

3)服務(wù)請(qǐng)求通信和預(yù)處理線程。服務(wù)請(qǐng)求通信和預(yù)處理線程部分偽代碼如下:

該線程基于HTTP協(xié)議通信并發(fā)接收服務(wù)請(qǐng)求任務(wù)消息包;

解析服務(wù)請(qǐng)求任務(wù)消息包;

If 依賴(lài)于N(N≥3)個(gè)消息包處理的任務(wù){(diào)

遍歷該任務(wù)隊(duì)列;

If(隊(duì)列元素的任務(wù)主鍵相同){

//構(gòu)建N個(gè)任務(wù)參數(shù)JSON字符串?dāng)?shù)組

6)6—9月份,田間卵果率達(dá)到1%時(shí),及時(shí)噴25%滅幼脲1 000倍液或2.5%溴氰菊酯乳油3 000倍液。

在該元素中添加該參數(shù)字符串JSON;

}Else{

創(chuàng)建新元素;}

}Else{//消息包獨(dú)立處理的任務(wù)

在任務(wù)隊(duì)列尾插入該任務(wù)元素;}

If(消息包為獨(dú)立處理的任務(wù)){

Read 隊(duì)列元素和預(yù)處理;

動(dòng)態(tài)安裝和執(zhí)行相應(yīng)的任務(wù)組件;

任務(wù)隊(duì)列元素執(zhí)行標(biāo)志=“C”;

發(fā)送執(zhí)行結(jié)果到相應(yīng)節(jié)點(diǎn)代理;

Break;

}ElseIf(消息包屬于統(tǒng)一處理的N個(gè)任務(wù)){

//N個(gè)消息包統(tǒng)一進(jìn)行處理

Read 未處理的數(shù)據(jù)元素集;

If(未處理的數(shù)據(jù)元素集==Null){

//消息包未到達(dá),等待時(shí)間閾值T

Sleep(XX us);

}Else{//讀到數(shù)據(jù)集

If(同步執(zhí)行 and 第1次執(zhí)行){

發(fā)送任務(wù)處理結(jié)果到消息源服務(wù)器;

保存任務(wù)處理結(jié)果;//例如協(xié)同執(zhí)行

}ElseIf(同步執(zhí)行 and 第2次~第N次執(zhí)行){

返回第1次保存的任務(wù)處理結(jié)果給源服務(wù)器;}

If(處理結(jié)果滿足任務(wù)節(jié)點(diǎn)提交條件 and 異步執(zhí)行){

發(fā)送處理結(jié)果到相應(yīng)的消息源節(jié)點(diǎn);}}}

//例如表決服務(wù)器,基于源節(jié)點(diǎn)運(yùn)行代理服務(wù)實(shí)現(xiàn)交互

If(處理任務(wù)消息數(shù)==N){

//已完成本次任務(wù)處理

隊(duì)列任務(wù)處理狀態(tài)=“C”;

Break;

}ElseIf(處理任務(wù)消息數(shù)≠N and處理時(shí)間>閾值T){

調(diào)用管理服務(wù)進(jìn)行異常處理;

Break;}

2.3 MCOE框架內(nèi)外部接口設(shè)計(jì)

MCOE框架內(nèi)外部接口設(shè)計(jì)基于以下3個(gè)方面:由分發(fā)服務(wù)器和管理服務(wù)器協(xié)同完成的服務(wù)請(qǐng)求預(yù)處理、資源調(diào)度和請(qǐng)求轉(zhuǎn)發(fā)過(guò)程;N異構(gòu)執(zhí)行體驅(qū)動(dòng)的表決和第三方API協(xié)同執(zhí)行過(guò)程;由分發(fā)器和外部表決器協(xié)同完成的響應(yīng)結(jié)果表決過(guò)程和客戶(hù)端轉(zhuǎn)發(fā)過(guò)程。

MCOE服務(wù)器間接口遵循HTTP通信協(xié)議,接口定義為json格式文件,各服務(wù)器依據(jù)json庫(kù)函數(shù)進(jìn)行解析預(yù)處理,如圖3所示。

圖3 MCOE服務(wù)器接口定義

分發(fā)服務(wù)相關(guān)的接口描述見(jiàn)表1,其中接口主要提供服務(wù)請(qǐng)求轉(zhuǎn)發(fā)、服務(wù)請(qǐng)求響應(yīng)結(jié)果接收和外部表決所需參數(shù)。其中,通過(guò)管理服務(wù)提供的擬態(tài)資源調(diào)度接口調(diào)度出隨機(jī)性、動(dòng)態(tài)性和異構(gòu)性三性最大化的N異構(gòu)執(zhí)行體服務(wù)器,為擬態(tài)防御提供異構(gòu)化的基礎(chǔ)環(huán)境。異構(gòu)執(zhí)行體相關(guān)的接口描述見(jiàn)表2,其中接口主要提供N異構(gòu)執(zhí)行體運(yùn)行過(guò)程中內(nèi)部表決和第三方API協(xié)同運(yùn)行所需的參數(shù)。管理服務(wù)器相關(guān)接口描述見(jiàn)表3,其中接口基于“管理者+代理”方式實(shí)現(xiàn)。部署在各個(gè)服務(wù)器上的運(yùn)行節(jié)點(diǎn)代理服務(wù)采集各個(gè)服務(wù)器的節(jié)點(diǎn)運(yùn)行資源狀態(tài)和日志數(shù)據(jù),并將采集數(shù)據(jù)上報(bào)給運(yùn)行管理服務(wù),接收、處理運(yùn)行管理服務(wù)下發(fā)的資源狀態(tài)監(jiān)管命令和節(jié)點(diǎn)清洗命令。

表1 分發(fā)服務(wù)相關(guān)接口描述Table 1 Description of interfaces related to MCOE distribution services

表2 N異構(gòu)執(zhí)行體相關(guān)接口描述Table 2 Description of interfaces related to N heterogeneous executor

表3 管理服務(wù)器相關(guān)接口描述Table 3 Description of interfaces related to the management server

3 MCOE各模塊概要設(shè)計(jì)

MCOE各個(gè)功能模塊間的交互遵循HTTP通信協(xié)議,各模塊的功能實(shí)現(xiàn)均遵循2.2節(jié)中的程序統(tǒng)一處理框架。

3.1 分發(fā)服務(wù)概要設(shè)計(jì)

分發(fā)服務(wù)結(jié)合傳統(tǒng)安全防御對(duì)已知安全威脅的清洗提供了Web信息系統(tǒng)的入口級(jí)安全防御。分發(fā)服務(wù)提供客戶(hù)端服務(wù)請(qǐng)求的接收、對(duì)已知威脅的清洗[16]、N個(gè)冗余異構(gòu)執(zhí)行體服務(wù)請(qǐng)求分發(fā)、請(qǐng)求響應(yīng)結(jié)果的處理以及將請(qǐng)求響應(yīng)結(jié)果轉(zhuǎn)發(fā)給客戶(hù)端等功能。如圖4所示,分發(fā)服務(wù)主要包括3個(gè)功能模塊:

1)請(qǐng)求預(yù)處理引擎。接收服務(wù)請(qǐng)求,定義服務(wù)請(qǐng)求主鍵服務(wù)請(qǐng)求安全威脅清洗;構(gòu)建N個(gè)異構(gòu)執(zhí)行體服務(wù)請(qǐng)求。

2)分發(fā)處理模塊。通過(guò)“擬態(tài)資源調(diào)度接口”獲取相應(yīng)節(jié)點(diǎn)執(zhí)行資源;構(gòu)建包含服務(wù)請(qǐng)求主鍵、內(nèi)部表決、協(xié)同執(zhí)行和N個(gè)異構(gòu)執(zhí)行體服務(wù)器執(zhí)行資源的服務(wù)器地址文件,通過(guò)“服務(wù)請(qǐng)求主鍵和處理過(guò)程所需的服務(wù)器地址接口”下發(fā)到相應(yīng)的服務(wù)器;通過(guò)“服務(wù)請(qǐng)求轉(zhuǎn)發(fā)接口”轉(zhuǎn)發(fā)服務(wù)請(qǐng)求到相應(yīng)的N個(gè)構(gòu)執(zhí)行體。

3)請(qǐng)求響應(yīng)處理模塊。接收請(qǐng)求響應(yīng)執(zhí)行結(jié)果;通過(guò)“擬態(tài)資源調(diào)度接口”獲取外部表決器執(zhí)行資源;構(gòu)建包含服務(wù)請(qǐng)求主鍵、外部表決服務(wù)器執(zhí)行資源的服務(wù)器地址文件;基于此文件驅(qū)動(dòng)外部表決的執(zhí)行;接收表決服務(wù)器的反饋結(jié)果,表決一致時(shí)將服務(wù)請(qǐng)求最終響應(yīng)結(jié)果返回給客戶(hù)端,表決不一致時(shí)返回異常信息給管理服務(wù)。

圖4 分發(fā)服務(wù)功能組成示意圖

Fig.4Schematic diagram of function composition ofdistribution service

3.2 表決服務(wù)概要設(shè)計(jì)

表決服務(wù)包括內(nèi)部表決服務(wù)和外部表決服務(wù),是MCOE最為關(guān)鍵的組成部分[17]。內(nèi)部表決服務(wù)提供了異構(gòu)執(zhí)行體執(zhí)行過(guò)程中的安全防御,外部表決服務(wù)提供了異構(gòu)執(zhí)行體執(zhí)行結(jié)果的安全防御。

如圖5所示,內(nèi)部表決服務(wù)主要包括4個(gè)功能模塊:

1)表決信息接收處理。通過(guò)“內(nèi)部表決調(diào)用接口”接收來(lái)自N個(gè)異構(gòu)執(zhí)行體的內(nèi)部表決內(nèi)容,確定相應(yīng)的表決組件。

2)表決執(zhí)行。對(duì)N個(gè)異構(gòu)執(zhí)行體關(guān)鍵數(shù)據(jù)操作、重要功能模塊和第三方API參數(shù)進(jìn)行一致性表決。

3)魯棒性處理。表決異常時(shí),根據(jù)表決對(duì)象的魯棒性策略按需執(zhí)行魯棒性處理過(guò)程。

4)表決結(jié)果反饋。表決大多數(shù)一致時(shí),將表決結(jié)果返回給正常的N個(gè)異構(gòu)執(zhí)行體,若存在不一致的異構(gòu)執(zhí)行體調(diào)用管理服務(wù)進(jìn)行異常處理。表決不一致調(diào)用管理服務(wù)進(jìn)行異常處理。

圖5 內(nèi)部表決服務(wù)功能組成示意圖

Fig.5Schematic diagram of function composition ofinternal voting service

外部表決服務(wù)中大部分功能模塊與內(nèi)部表決服務(wù)相同,不同之處在于外部表決是對(duì)N個(gè)服務(wù)請(qǐng)求響應(yīng)的一致性表決,通過(guò)分發(fā)服務(wù)和外部表決服務(wù)之間的交互完成。

3.3 協(xié)同執(zhí)行服務(wù)概要設(shè)計(jì)

協(xié)同執(zhí)行服務(wù)具體驅(qū)動(dòng)第三方API的執(zhí)行,確保N個(gè)異構(gòu)執(zhí)行體API執(zhí)行結(jié)果的一致性,并提供執(zhí)行協(xié)同統(tǒng)一框架以支持協(xié)同執(zhí)行種類(lèi)的擴(kuò)展和配置。當(dāng)對(duì)N個(gè)異構(gòu)執(zhí)行體內(nèi)的第三方API內(nèi)部表決結(jié)果為一致時(shí),N個(gè)異構(gòu)執(zhí)行體通過(guò)異步方式調(diào)用協(xié)同執(zhí)行服務(wù)器進(jìn)行第三方API的統(tǒng)一執(zhí)行。當(dāng)接收到第1個(gè)協(xié)同執(zhí)行調(diào)用時(shí),完成對(duì)第三方API的協(xié)同執(zhí)行、將執(zhí)行結(jié)果返回給相應(yīng)的執(zhí)行體,并保存執(zhí)行結(jié)果;當(dāng)收到第2個(gè)~第N個(gè)執(zhí)行體的協(xié)同執(zhí)行調(diào)用時(shí),將保存的協(xié)同執(zhí)行結(jié)果返回給相應(yīng)的執(zhí)行體。

3.4 管理服務(wù)概要設(shè)計(jì)

管理服務(wù)包括管理服務(wù)器和運(yùn)行節(jié)點(diǎn)服務(wù)管理者和管理者服務(wù)代理,其中主要的功能模塊如圖6所示。

圖6 管理服務(wù)功能組成示意圖

Fig.6Schematic diagram of function composition ofmanagement service

管理服務(wù)器主要包括3個(gè)功能模塊:

1)擬態(tài)應(yīng)用管理模塊。創(chuàng)建和部署擬態(tài)應(yīng)用、匯總和處理節(jié)點(diǎn)上報(bào)應(yīng)用資源狀態(tài)日志信息、監(jiān)管擬態(tài)應(yīng)用執(zhí)行過(guò)程。

2)擬態(tài)資源管理模塊。包括擬態(tài)資源監(jiān)控、異構(gòu)執(zhí)行體調(diào)度和表決服務(wù)器資源調(diào)度。

3)擬態(tài)安全威脅診斷模塊。包括擬態(tài)運(yùn)行過(guò)程管理、告警和環(huán)境日志信息處理、安全威脅的清洗策略執(zhí)行。

運(yùn)行節(jié)點(diǎn)代理服務(wù)完成服務(wù)器節(jié)點(diǎn)資源狀態(tài)信息的采集,并將其上報(bào)給管理服務(wù)器,并且執(zhí)行管理服務(wù)器下發(fā)的管理命令。

4 模型實(shí)現(xiàn)

基于對(duì)示例應(yīng)用程序ybsapp.war的MCOE模型實(shí)現(xiàn)包括3個(gè)部分:1)異構(gòu)執(zhí)行體管理和資源調(diào)度;2)分發(fā)服務(wù)對(duì)各個(gè)異構(gòu)執(zhí)行體進(jìn)行服務(wù)請(qǐng)求分發(fā);3)對(duì)各個(gè)異構(gòu)體上的請(qǐng)求響應(yīng)結(jié)果進(jìn)行外部表決并將結(jié)果反饋管理服務(wù)。

4.1 管理過(guò)程

首先在異構(gòu)執(zhí)行體的基礎(chǔ)層(CPU類(lèi)型和操作系統(tǒng)類(lèi)型)和應(yīng)用支撐層(Web容器)上實(shí)現(xiàn)異構(gòu)。管理服務(wù)使用MySQL實(shí)現(xiàn)對(duì)異構(gòu)執(zhí)行體節(jié)點(diǎn)和資源的管理。異構(gòu)執(zhí)行體節(jié)點(diǎn)狀態(tài)示例如圖7所示,模型實(shí)現(xiàn)階段實(shí)際部署4個(gè)異構(gòu)執(zhí)行體應(yīng)用服務(wù)器,本文實(shí)驗(yàn)中執(zhí)行體1~執(zhí)行體4所用Web容器分別為Jboss、Tomcat8.0、Tomcat8.5、Tomcat9.0。

圖7 異構(gòu)執(zhí)行體節(jié)點(diǎn)狀態(tài)示例

異構(gòu)執(zhí)行體上的運(yùn)行節(jié)點(diǎn)代理服務(wù)將異構(gòu)執(zhí)行體狀態(tài)信息實(shí)時(shí)上報(bào)到管理服務(wù)器,管理服務(wù)器實(shí)時(shí)判定執(zhí)行體運(yùn)行狀態(tài)是否正常。

4.2 分發(fā)過(guò)程

分發(fā)服務(wù)通過(guò)改造Nginx反向代理服務(wù)[18],以及對(duì)Nginx主請(qǐng)求-子請(qǐng)求機(jī)制與Proxy反向代理機(jī)制的改進(jìn),實(shí)現(xiàn)服務(wù)請(qǐng)求的異構(gòu)化、服務(wù)請(qǐng)求的轉(zhuǎn)發(fā)、外部表決服務(wù)的調(diào)用,并將外部表決結(jié)果返回給客戶(hù)端。

客戶(hù)端(192.168.2.7:8080)發(fā)起示例應(yīng)用ybsapp服務(wù)請(qǐng)求,分發(fā)服務(wù)向管理服務(wù)發(fā)出資源調(diào)度請(qǐng)求,管理服務(wù)通過(guò)異構(gòu)最大化調(diào)度[19]和負(fù)載均衡算法[20]調(diào)度出此次執(zhí)行服務(wù)請(qǐng)求的3個(gè)異構(gòu)執(zhí)行體和外部表決地址,分發(fā)服務(wù)通過(guò)“擬態(tài)資源調(diào)度接口”獲取相應(yīng)節(jié)點(diǎn)執(zhí)行資源,再由分發(fā)服務(wù)構(gòu)建包含服務(wù)請(qǐng)求主鍵、異構(gòu)執(zhí)行體和表決服務(wù)器節(jié)點(diǎn)資源的地址文件,如圖8所示。

圖8 服務(wù)請(qǐng)求執(zhí)行資源分配profile示例

Fig.8 Example profile of a service request for resourceallocation

各個(gè)服務(wù)器間通過(guò)服務(wù)請(qǐng)求主鍵進(jìn)行關(guān)聯(lián),分發(fā)服務(wù)通過(guò)Nginx轉(zhuǎn)發(fā)地址文件到相應(yīng)的N個(gè)異構(gòu)執(zhí)行體和外部表決服務(wù)器,同時(shí)轉(zhuǎn)發(fā)服務(wù)請(qǐng)求到相應(yīng)的異構(gòu)執(zhí)行體上的服務(wù)請(qǐng)求轉(zhuǎn)發(fā)接口,如圖9所示。

圖9 分發(fā)服務(wù)Nginx轉(zhuǎn)發(fā)過(guò)程示例

Fig.9Example of forwarding process of distribution serviceNginx

圖9所示分發(fā)的是一個(gè)示例Web應(yīng)用ybs,經(jīng)過(guò)分發(fā)服務(wù)Nginx將異構(gòu)化的服務(wù)請(qǐng)求分發(fā)到3個(gè)異構(gòu)執(zhí)行體(執(zhí)行體1:192.168.2.28、執(zhí)行體2:192.168.2.75、執(zhí)行體3:192.168.2.32)上,同時(shí)調(diào)用外部表決服務(wù)器:192.168.2.36進(jìn)行服務(wù)請(qǐng)求響應(yīng)表決。

4.3 表決過(guò)程

外部表決服務(wù)基于擬態(tài)表決策略,采用一致性校驗(yàn)算法對(duì)服務(wù)請(qǐng)求響應(yīng)進(jìn)行一致性表決[21]。本文實(shí)驗(yàn)的擬態(tài)表決策略采用三取二表決,即2/3表決對(duì)象一致時(shí)表決結(jié)果為正常,其他情況表決結(jié)果為異常。

外部表決成功后的反饋結(jié)果如圖10所示,異構(gòu)執(zhí)行體1~執(zhí)行體4初始的表決成功次數(shù)均為0,對(duì)異構(gòu)執(zhí)行體1~執(zhí)行體3執(zhí)行服務(wù)請(qǐng)求表決,表決結(jié)果為成功(執(zhí)行體1~執(zhí)行體3表決對(duì)象一致),執(zhí)行體1~執(zhí)行體3的表決成功加1,而執(zhí)行體4作為備用執(zhí)行體不參與表決,其表決成功次數(shù)仍為0。表決成功后將返回表決結(jié)果給分發(fā)服務(wù),再由分發(fā)服務(wù)將服務(wù)請(qǐng)求響應(yīng)返回給客戶(hù)端。

圖10 表決成功后部署情況示例

外部表決成功后將最終的服務(wù)請(qǐng)求響應(yīng)結(jié)果返回給客戶(hù)端,客戶(hù)端得到的響應(yīng)頁(yè)面如圖11所示。

圖11 客戶(hù)端響應(yīng)頁(yè)面1

對(duì)異構(gòu)執(zhí)行體進(jìn)行網(wǎng)頁(yè)篡改攻擊后,同樣進(jìn)行服務(wù)請(qǐng)求分發(fā),表決結(jié)果如圖12所示,執(zhí)行體2被表決為異常,但由于異構(gòu)執(zhí)行體互相之間的異構(gòu)性,使得網(wǎng)頁(yè)篡改對(duì)執(zhí)行體1和執(zhí)行體3并未生效,此次表決結(jié)果仍為成功。

圖12 篡改攻擊、表決后部署情況示例

Fig.12 Example of deployment results after voting for tamper attacks

外部表決服務(wù)返回表決結(jié)果和異常執(zhí)行體地址信息給分發(fā)服務(wù),分發(fā)服務(wù)將服務(wù)請(qǐng)求響應(yīng)返回給客戶(hù)端,客戶(hù)端得到的響應(yīng)頁(yè)面如圖13所示,仍為正常的服務(wù)請(qǐng)求響應(yīng)頁(yè)面。分發(fā)服務(wù)將異常執(zhí)行體地址信息上報(bào)至管理服務(wù),由管理服務(wù)調(diào)用管理者服務(wù)代理進(jìn)行異常異構(gòu)執(zhí)行體替換和清洗恢復(fù)。

圖13 客戶(hù)端響應(yīng)頁(yè)面2

經(jīng)過(guò)實(shí)驗(yàn)驗(yàn)證,由于異構(gòu)執(zhí)行體本身的異構(gòu)性,當(dāng)出現(xiàn)系統(tǒng)安全攻擊時(shí)至多導(dǎo)致一個(gè)異構(gòu)執(zhí)行體出現(xiàn)異常,而基于3取2表決并不會(huì)影響最終返回給客戶(hù)端的服務(wù)請(qǐng)求響應(yīng)結(jié)果。MCOE對(duì)于異構(gòu)執(zhí)行體的部署和服務(wù)請(qǐng)求的分發(fā)、表決、管理可以達(dá)到防止網(wǎng)頁(yè)篡改的目的,保證返回給客戶(hù)端正確的服務(wù)請(qǐng)求響應(yīng)。

5 結(jié)束語(yǔ)

本文結(jié)合擬態(tài)防御理論,為擬態(tài)信息系統(tǒng)的N異構(gòu)執(zhí)行體設(shè)計(jì)系統(tǒng)化的運(yùn)行環(huán)境框架MCOE。通過(guò)改進(jìn)Nginx反向代理服務(wù)實(shí)現(xiàn)對(duì)服務(wù)請(qǐng)求分發(fā)和響應(yīng)結(jié)果的處理,同時(shí)使用一致性校驗(yàn)算法進(jìn)行服務(wù)請(qǐng)求響應(yīng)結(jié)果表決,有效防御應(yīng)用程序后門(mén)和漏洞引發(fā)的網(wǎng)頁(yè)篡改行為。下一步將對(duì)分發(fā)服務(wù)和表決服務(wù)進(jìn)行改進(jìn),提升MCOE框架使用場(chǎng)景的普適性。

猜你喜歡
服務(wù)管理
棗前期管理再好,后期管不好,前功盡棄
服務(wù)在身邊 健康每一天
加強(qiáng)土木工程造價(jià)的控制與管理
如何加強(qiáng)土木工程造價(jià)的控制與管理
服務(wù)在身邊 健康每一天
服務(wù)在身邊 健康每一天
服務(wù)在身邊 健康每一天
服務(wù)在身邊 健康每一天
招行30年:從“滿意服務(wù)”到“感動(dòng)服務(wù)”
商周刊(2017年9期)2017-08-22 02:57:56
“這下管理創(chuàng)新了!等7則
雜文月刊(2016年1期)2016-02-11 10:35:51
主站蜘蛛池模板: 日本AⅤ精品一区二区三区日| 国产老女人精品免费视频| 少妇精品网站| 久久综合五月婷婷| 99re精彩视频| 日韩一级毛一欧美一国产| 在线观看视频99| 67194在线午夜亚洲| 久久久久久高潮白浆| 69av在线| 成年免费在线观看| 欧美精品不卡| 欧亚日韩Av| 午夜性爽视频男人的天堂| 亚洲国内精品自在自线官| 国产最爽的乱婬视频国语对白 | 找国产毛片看| 国产综合另类小说色区色噜噜| h视频在线观看网站| 欧美不卡视频一区发布| 国产在线精品99一区不卡| 亚洲人成网站18禁动漫无码| 国产极品嫩模在线观看91| 看看一级毛片| 国产制服丝袜91在线| 国产亚洲现在一区二区中文| 欧美黑人欧美精品刺激| 伊人久久大线影院首页| jizz亚洲高清在线观看| 热99精品视频| 精品视频91| 久久综合国产乱子免费| 草草影院国产第一页| 亚洲第一区在线| 996免费视频国产在线播放| 美女视频黄又黄又免费高清| 免费国产在线精品一区 | 国产网友愉拍精品视频| 欧美不卡视频一区发布| 欧美成人一级| 国产精品成| 国产福利一区二区在线观看| 在线va视频| 国内精品久久九九国产精品| 亚洲精品国产精品乱码不卞| 成年A级毛片| 91精品啪在线观看国产91| 国产福利一区在线| 国产成人午夜福利免费无码r| 亚洲色大成网站www国产| 日韩福利在线观看| 国产后式a一视频| 成人无码区免费视频网站蜜臀| 日韩色图区| 日韩在线第三页| 免费又黄又爽又猛大片午夜| 亚洲精品高清视频| 午夜国产不卡在线观看视频| 国产av一码二码三码无码 | 欧美激情福利| 国产午夜福利亚洲第一| 亚洲男人的天堂在线观看| 国产免费精彩视频| 99精品福利视频| 国产欧美在线观看视频| 91综合色区亚洲熟妇p| 亚洲精品爱草草视频在线| 亚洲中文字幕国产av| 精品99在线观看| 91精品最新国内在线播放| 国产在线八区| 成人在线第一页| 国产网友愉拍精品| 毛片网站观看| 日韩精品无码免费一区二区三区| 色天堂无毒不卡| 2020精品极品国产色在线观看 | 国产在线精品美女观看| 香蕉国产精品视频| 国产性爱网站| 91po国产在线精品免费观看| 免费99精品国产自在现线|