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

基于B/S架構(gòu)的工業(yè)主機衛(wèi)士軟件設(shè)計與實現(xiàn)

2022-02-14 12:13:36任軍鋒楊立源
自動化儀表 2022年1期
關(guān)鍵詞:進程規(guī)則管理

任軍鋒,楊立源

(上海工業(yè)自動化儀表研究院有限公司,上海 200233)

0 引言

隨著“中國制造2025”行動綱領(lǐng)的推出和近年工業(yè)互聯(lián)網(wǎng)的迅速發(fā)展,全球各地爆發(fā)的工業(yè)互聯(lián)網(wǎng)安全事故讓越來越多的人意識到,工業(yè)生產(chǎn)環(huán)境不再是信息孤島,工業(yè)生產(chǎn)環(huán)境的系統(tǒng)安全防護已經(jīng)迫在眉睫。工業(yè)生產(chǎn)環(huán)境一旦遭到攻擊,造成的損失往往是巨大的。伊朗核電站遭受的震網(wǎng)病毒和富士康工廠遭受的勒索病毒,都是很好的例證。在整個工業(yè)互聯(lián)網(wǎng)安全防御中,主機的安全防護是工業(yè)互聯(lián)網(wǎng)的最后一道防線。

工業(yè)生產(chǎn)環(huán)境的主機系統(tǒng)中,運行軟件和運行環(huán)境相對固定,但是未知軟件程序的威脅卻是不可預(yù)知的。因此,工業(yè)現(xiàn)場的主機不適用黑名單規(guī)則,而適用白名單規(guī)則[1]。以當前安全的基礎(chǔ)軟件環(huán)境為基準點,分別按照可執(zhí)行的控制文件(包含COM、EXE、OCX、DLL文件)、網(wǎng)卡設(shè)備和U盤設(shè)備生成多組白名單規(guī)則。采用國密SM3算法生成各條白名單規(guī)則的指紋信息。主機衛(wèi)士軟件將實時監(jiān)控本機系統(tǒng)運行情況,根據(jù)配置的白名單規(guī)則,實時對運行過程中產(chǎn)生的進程事件、U盤插拔事件、網(wǎng)卡啟用/禁用事件進行行為審計,并對不在白名單內(nèi)的行為事件生成實時告警信息。同時,主機衛(wèi)士支持切換審計和保護兩種模式。審計模式下,系統(tǒng)對白名單規(guī)則外的事件只生成告警信息,而不會阻斷該行為。保護模式下,系統(tǒng)對白名單規(guī)則外的事件既阻斷該事件行為,又生成阻斷的告警信息。

1 需求分析和技術(shù)選擇

1.1 需求分析

工業(yè)主機衛(wèi)士的主要功能是基于白名單規(guī)則對可執(zhí)行文件、U盤和網(wǎng)卡等進行實時監(jiān)控。該產(chǎn)品支持審計和保護兩種模式。用戶可以通過Web頁面對指定的、已安裝主機衛(wèi)士的主機設(shè)置白名單規(guī)則;通過切換主機衛(wèi)士模式,可在Web頁面查看到實時的告警事件和阻斷事件信息。該需求需要分六步實現(xiàn)。①主機衛(wèi)士與管理平臺通信接口服務(wù):選擇性能健壯,耦合度低,簡潔易用。②瀏覽器/服務(wù)器(browser/server,B/S)分布式架構(gòu)設(shè)計的擴展性:采用Web層、中間件層、主機層三層架構(gòu)。③白名單規(guī)則的設(shè)計。④消息應(yīng)用程序編程接口(application programming interface,API)結(jié)構(gòu)流程設(shè)計:消息收發(fā)必須經(jīng)過確認,設(shè)置快、慢消息隊列,以防止消息擁堵。⑤阻斷進程和U盤網(wǎng)卡外設(shè)的技術(shù)方式:選擇Windows API Hook技術(shù),開發(fā)便捷,易于擴展,且能在真正運行前阻斷。⑥數(shù)據(jù)存儲:選擇輕量、便捷存儲的數(shù)據(jù)庫,以節(jié)約主機資源。

1.2 技術(shù)選擇

與其他緩存產(chǎn)品相比,Redis消息中間件有以下特點:①支持數(shù)據(jù)持久化;②支持key-value、列表、集合結(jié)構(gòu)的存儲;③支持數(shù)據(jù)備份及主從模式部署。主機衛(wèi)士軟件系統(tǒng)和管理平臺可以自由設(shè)計消息結(jié)構(gòu),通過該Redis消息中間件傳遞數(shù)據(jù),降低了系統(tǒng)和平臺的端耦合度。主機衛(wèi)士軟件系統(tǒng)和管理平臺的接口開發(fā)都不受平臺和開發(fā)語言的影響,提高了程序的兼容性和可用性[2]。

1.2.1 國密SM3加密算法

SM3加密算法是我國自主設(shè)計的密碼雜湊算法,適用于商用密碼中數(shù)字簽名和驗證消息認證碼的生成與驗證,以及隨機數(shù)的生成,可滿足多種密碼應(yīng)用的安全需求[3]。在白名單規(guī)則的指紋信息生成部分,主機衛(wèi)士采用了SM3算法,安全性優(yōu)于MD5和SHA-1算法。

SQLite數(shù)據(jù)庫是一個進程內(nèi)的庫,實現(xiàn)了自給自足的、無服務(wù)器的、零配置的、事務(wù)性的結(jié)構(gòu)化查詢語言(structured query language,SQL)數(shù)據(jù)庫引擎。它具有不依賴服務(wù)、無需安裝、跨平臺、支持標準SQL語句等特點,是輕量級數(shù)據(jù)庫。主機衛(wèi)士軟件中主要存儲白名單規(guī)則信息和模式配置信息。SQLite數(shù)據(jù)庫完全能滿足需求且使用便捷[4]。

1.2.2 Windows API Hook技術(shù)

Hook技術(shù)是對Windows 的 API 進行攔截的技術(shù),可以截獲系統(tǒng)中的消息流,如鍵盤和鼠標輸入等。根據(jù)處理消息范圍的不同,攔截技術(shù)可分為Local Hook和Remote Hook。①Local Hook僅能阻斷屬于自身進程的事件,使用范圍有限[5]。②Remote Hook不僅可以阻斷自身進程事件,還可以阻斷其他進程事件。根據(jù)主機衛(wèi)士白名單外進程事件阻斷的需求,Remote Hook更適用[6]。遠線程插入技術(shù)可以通過動態(tài)庫的方式實現(xiàn)。Windows系統(tǒng)中新進程的創(chuàng)建都會調(diào)用CreateProces()函數(shù),通過寫一個新的函數(shù)CreateProcessNew()注入進程,替換原來調(diào)用的CreateProcess()函數(shù)在進程內(nèi)存中的位置。如果可執(zhí)行文件在白名單內(nèi),則CreateProcessNew()函數(shù)正常調(diào)用CreateProcess()函數(shù);反之,則阻止調(diào)用Create Process()函數(shù),以達到阻斷創(chuàng)建新進程的目的[7]。

2 軟件架構(gòu)設(shè)計與實現(xiàn)

2.1 系統(tǒng)架構(gòu)圖

系統(tǒng)架構(gòu)如圖1所示。整個系統(tǒng)分為Web業(yè)務(wù)層、中間件服務(wù)層和主機群層。Web服務(wù)器通過Redis通道將控制指令和規(guī)則策略下發(fā)到指定的主機節(jié)點。主機節(jié)點在收到指令和規(guī)則策略后,配置主機安全策略,更新本地主機數(shù)據(jù)庫信息。主機實時監(jiān)控本機運行過中的風險事件和行為,上傳消息至Redis消息中間件。Web業(yè)務(wù)層從中間件服務(wù)層獲取相關(guān)數(shù)據(jù)信息后,實時存入主機衛(wèi)士管理平臺數(shù)據(jù)庫(data base,DB)。用戶可以通過終端Web瀏覽器實時查看各主機節(jié)點的安全事件詳情。

圖1 系統(tǒng)架構(gòu)圖Fig.1 System structure diagram

以上架構(gòu)的層次設(shè)計可以保證程序有較好的擴展性和跨平臺兼容性。當主機節(jié)點數(shù)據(jù)量增加時,只需增加相應(yīng)的Web服務(wù)器即可滿足一般的擴展需求。中間件服務(wù)層的設(shè)計也讓系統(tǒng)具備跨平臺兼容性。例如:主機衛(wèi)士管理平臺可以支持Linux和Windows這兩種操作系統(tǒng),但是主機衛(wèi)士軟件系統(tǒng)不需要因為管理平臺操作系統(tǒng)的不一樣而去開發(fā)、維護多套程序。軟件系統(tǒng)與管理平臺的通信只與Redis消息中間件接口相關(guān),節(jié)約了開發(fā)和維護成本。

2.2 通信接口流程圖

通信接口流程如圖2所示。由圖2可知,主機衛(wèi)士中有獨立的線程處理數(shù)據(jù)上傳和數(shù)據(jù)接收。對于不同的業(yè)務(wù)數(shù)據(jù),處理線程和隊列分為快、慢兩種。這樣既可以保證配置規(guī)則及時下發(fā)、及時響應(yīng)需要快速響應(yīng)的消息,又可以保證大批量實時告警信息的正常上傳。多線程和隊列的配合使用,大大提高了程序各環(huán)節(jié)處理數(shù)據(jù)的并發(fā)能力,優(yōu)化了程序性能。

圖2 通信接口流程圖Fig.2 Flowchart of communication interface

2.3 技術(shù)要點分析

2.3.1 接口通信設(shè)計

接口通信設(shè)計滿足消息中轉(zhuǎn)傳輸功能要求,同時接口不依賴平臺和開發(fā)語言,具有持久化特點。例如:主機衛(wèi)士軟件系統(tǒng)和管理平臺的通信接口部分,主要使用Redis消息中間件,上傳數(shù)據(jù)告警信息,下發(fā)管理平臺配置信息。確定接口后,主機衛(wèi)士軟件系統(tǒng)和管理平臺可以并行開發(fā)。主機衛(wèi)士軟件系統(tǒng)和管理平臺可以各自專注于自身業(yè)務(wù)功能,而無需關(guān)注通信層問題。而且Redis具有持久化特點,即使管理平臺臨時發(fā)生故障,軟件系統(tǒng)上傳的數(shù)據(jù)也不會丟失,從而保證了數(shù)據(jù)的完整性。

2.3.2 B/S分布式架構(gòu)

設(shè)計系統(tǒng)時要考慮實際使用場景和后期可擴展性。傳統(tǒng)的主機衛(wèi)士是單機版的裝機軟件。對于主機分散的工廠生產(chǎn)環(huán)境,沒有統(tǒng)一的管理平臺,只能靠用戶查看來獲取每臺主機的告警信息,工作效率極低。采用B/S架構(gòu)模式,一個Web服務(wù)器可以同時管理多臺主機衛(wèi)士節(jié)點。一次部署完成后,只要通過管理平臺就能進行統(tǒng)一監(jiān)控,節(jié)約了人力成本。B/S分布式架構(gòu)采用Web層、中間件層、主機三級架構(gòu)。當主機數(shù)量增多、出現(xiàn)性能瓶頸時,只需增加服務(wù)器設(shè)備,部署中間件和Web服務(wù)器,就能快速解決性能瓶頸。

2.3.3 白名單規(guī)則的設(shè)計

基于白名單規(guī)則控制主機安全,就必須保證生成的白名單指紋具有唯一性和安全性。對于可執(zhí)行文件,不能依賴于文件名和路徑,而需要根據(jù)文件內(nèi)容生成白名單。SM3算法滿足此需求。文件內(nèi)容、U盤的系列號、網(wǎng)卡的媒體訪問控制(media access control,MAC)地址都可以作為SM3算法的自變量來生成指紋信息。

2.3.4 消息API結(jié)構(gòu)和流程設(shè)計

通過Redis傳輸?shù)南⒔Y(jié)構(gòu)設(shè)計要具有統(tǒng)一的格式和規(guī)范。所有的請求消息必須有響應(yīng),確認消息已送達。在消息結(jié)構(gòu)中要區(qū)分快發(fā)送的消息和慢發(fā)送的消息。告警信息數(shù)據(jù)量大,時效性要求略低。因此,可將該類數(shù)據(jù)加入慢發(fā)送隊列。主機上傳的狀態(tài)數(shù)據(jù)、響應(yīng)消息和管理平臺下發(fā)的白名單規(guī)則數(shù)據(jù),時效性要求高,由Web頁面實時等待反饋。因此,將這些數(shù)據(jù)加入快發(fā)送隊列。快、慢兩種發(fā)送方式的協(xié)作,可保證系統(tǒng)穩(wěn)定、流暢地運行。

2.3.5 阻斷進程和U盤網(wǎng)卡外設(shè)的技術(shù)方式

對于阻斷可執(zhí)行文件白名單外的進程,需要在進程啟動前就終止進程。Windows API Hook的遠程動態(tài)鏈接庫(dynamic link library,DLL)注入方式可以滿足該功能。創(chuàng)建參數(shù)與CreateProcess()函數(shù)相同的新函數(shù)CreateProcessNew(),生成待注入的阻斷DLL文件。針對32位進程和64位進程注入,需要分別生成32位和64位阻斷DLL。

調(diào)用Windows API 函數(shù)HANDLE WINAPI CreateRemoteThread(),將動態(tài)庫遠程注入指定進程,例如explorer.exe、taskmgr.exe等。

EnumProcessModules()函數(shù)則可以列出啟動該進程所依賴的DLL、OCX文件,阻斷不在白名單內(nèi)的DLL、OCX文件的調(diào)用和運行[7]。

USB阻斷API函數(shù)為BOOL WINAPI DeviceloControl()。網(wǎng)卡阻斷API函數(shù)為INetConnection類的virtual HRESULT STDMETHODCALLTYPE Disconnect(void)=0[8]。

2.4 消息接口設(shè)計

Redis消息接口請求內(nèi)容:

request =

{

"message_id":"99882121",

#消息ID

"strategy":

{

"strategy_type":1,

#策略類型:1文件,2 USB,3網(wǎng)卡

"strategy_id":554,

#策略編號

"c_tag":"2",

#動作類型:2新建,3模式切換

"content":["C:\dest"],

#策略內(nèi)容,與策略類型相關(guān)

"sourceip":"192.168.2.108",

#接收策略的主機衛(wèi)士IP

"event":2

#事件類型

}

}

Redis消息接口響應(yīng)內(nèi)容:

response =

{

"message_id":"99882121",

#消息ID

"sourceip":"192.168.2.108",

#響應(yīng)的主機衛(wèi)士IP

"status":1,

#收到請求:0否,1是

"result":{}

#響應(yīng)結(jié)果

}

2.5 部署測試

按照以上的系統(tǒng)架構(gòu)設(shè)計軟件,在編碼開發(fā)完成后,需要對整個軟件需求的功能進行部署測試。建議至少準備三臺主機設(shè)備:一臺Linux服務(wù)器和兩臺Windows系統(tǒng)計算機。Linux服務(wù)器部署主機衛(wèi)士管理平臺、Windows系統(tǒng)計算機,并安裝主機衛(wèi)士軟件。部署測試主要包含四個部分。

①生成白名單規(guī)則功能測試:該功能是本系統(tǒng)軟件的基本功能。用戶可以通過指定IP設(shè)備和路徑自動生成主機衛(wèi)士的可執(zhí)行文件白名單,通過推薦U盤和網(wǎng)卡的指紋信息生成外設(shè)USB和網(wǎng)卡的白名單規(guī)則,簡單易用。

②主機衛(wèi)士審計模式測試:使用管理平臺將主機衛(wèi)士界面切換到審計模式下,使系統(tǒng)可以實時生成白名單外的進程和USB、網(wǎng)卡的告警信息。同時,白名單規(guī)則內(nèi)的程序和外設(shè)可以正常運行、加載。

③主機衛(wèi)士保護模式測試:管理平臺將主機衛(wèi)士界面切換到保護模式下,系統(tǒng)可以實時生成白名單外的進程和USB、網(wǎng)卡的告警信息,同時阻斷白名單規(guī)則內(nèi)的程序和外設(shè)的運行和加載。

④系統(tǒng)可靠性、健壯性測試:該測試是指主機衛(wèi)士需要對主機設(shè)備進行7×24 h的實時告警和防護,保證主機衛(wèi)士軟件的正常工作。

3 結(jié)論

工業(yè)互聯(lián)網(wǎng)是新一代信息技術(shù) (information technology,IT)與傳統(tǒng)工業(yè)操作技術(shù)(operation technology,OT)全方位深度融合所形成的產(chǎn)業(yè)和應(yīng)用生態(tài)。為了管理和控制的一體化,實現(xiàn)生產(chǎn)和管理的高效率、高效益,工業(yè)企業(yè)深度融合IT/OT,在拓展了工業(yè)控制系統(tǒng)發(fā)展空間的同時,也帶來了一系列的工業(yè)網(wǎng)絡(luò)安全問題[9]。

本文基于B/S架構(gòu)的工業(yè)主機衛(wèi)士軟件設(shè)計,為解決工業(yè)場景下的主機安全問題提供了有效的解決思路。通過詳細的需求調(diào)研、分析數(shù)據(jù)、設(shè)計開發(fā)、部署測試,很好地滿足了工業(yè)場景下主機防護的基本需求,是主機類產(chǎn)品研發(fā)的全新的實例。下一步還可以對主機的EventID等事件進行審計分析。本文所提出的軟件設(shè)計方法,對實際問題的解決有一定參考價值。

猜你喜歡
進程規(guī)則管理
棗前期管理再好,后期管不好,前功盡棄
撐竿跳規(guī)則的制定
數(shù)獨的規(guī)則和演變
債券市場對外開放的進程與展望
中國外匯(2019年20期)2019-11-25 09:54:58
讓規(guī)則不規(guī)則
Coco薇(2017年11期)2018-01-03 20:59:57
TPP反腐敗規(guī)則對我國的啟示
“這下管理創(chuàng)新了!等7則
雜文月刊(2016年1期)2016-02-11 10:35:51
人本管理在我國國企中的應(yīng)用
社會進程中的新聞學(xué)探尋
我國高等教育改革進程與反思
主站蜘蛛池模板: 中文字幕亚洲乱码熟女1区2区| 婷婷伊人久久| 91丝袜美腿高跟国产极品老师| 性色一区| 中国特黄美女一级视频| 欧美在线天堂| 中国丰满人妻无码束缚啪啪| www.国产福利| 久无码久无码av无码| 97人妻精品专区久久久久| 国产精品浪潮Av| 欧美综合成人| 亚洲免费人成影院| www.youjizz.com久久| 亚洲一区二区约美女探花| 欧美中文字幕在线二区| 久久黄色影院| 成人国产一区二区三区| 她的性爱视频| 色悠久久久久久久综合网伊人| 黄色福利在线| 国产欧美精品一区aⅴ影院| 久久亚洲日本不卡一区二区| 亚洲欧美成人综合| 亚洲va在线∨a天堂va欧美va| 欧美日韩精品一区二区在线线| 国产综合日韩另类一区二区| 欧美午夜久久| 久久久久88色偷偷| 全免费a级毛片免费看不卡| 国产成人AV综合久久| 久久男人视频| 亚洲三级a| 97久久超碰极品视觉盛宴| 成人国产精品视频频| 久久精品亚洲专区| 欧美乱妇高清无乱码免费| 色偷偷一区| 国产sm重味一区二区三区| 精品国产一区91在线| 亚洲熟妇AV日韩熟妇在线| 黄色网在线| 91精品国产一区| h网站在线播放| 九九热精品视频在线| 露脸真实国语乱在线观看| 在线观看的黄网| 日本www在线视频| 91在线播放免费不卡无毒| 中文字幕永久在线看| 片在线无码观看| 第九色区aⅴ天堂久久香| 亚洲天堂免费| 日韩av无码精品专区| a网站在线观看| 亚洲男女在线| 亚洲AⅤ波多系列中文字幕| 欧美日韩国产在线人| 黄色三级毛片网站| 国产剧情无码视频在线观看| 中日韩一区二区三区中文免费视频 | 污网站在线观看视频| 99热国产在线精品99| 91极品美女高潮叫床在线观看| 欧美一区二区丝袜高跟鞋| 极品国产在线| 亚洲一区二区三区国产精华液| 久久不卡精品| 国产本道久久一区二区三区| 久久国产精品娇妻素人| 国产精品香蕉在线观看不卡| 99久久精品国产麻豆婷婷| 国内精品视频| 992tv国产人成在线观看| 亚洲中文精品人人永久免费| 欧美一级在线| 88国产经典欧美一区二区三区| 欧美国产精品不卡在线观看| 欧美a在线看| 日本一本正道综合久久dvd | 女人18毛片一级毛片在线| 免费人成在线观看成人片|