◆匡石磊
(中國聯通江西省分公司 江西 330000)
在IT 系統的日常運維操作過程中,4A 堡壘機的屏幕錄像系統是一種常見的審計方法。4A 堡壘機的屏幕錄像系統,通過實時對用戶在當前堡壘機的操作進行錄像,并記錄下用戶的操作行為數據,事后進行文件檢索,達到圖形化審計的目的,是堡壘機無盲區審計的重要功能。但是,面對海量的運維操作錄像,僅靠人工逐幀查看屏幕錄像開展審計,工作效率低且容易出現疏漏,當進行安全事件追溯時,海量錄像讓審計人員無從下手。本案例研究屏幕錄像中運維操作命令的識別、檢索和審計。通過對運維操作錄像進行逐幀差異篩選識別,基于優先算法對錄像中的重復幀進行高效去重;同時對IT 運維工具圖像模型進行建模,提高運維操作識別的準確性。實現IT 運維錄像的內容識別,審計員可通過文本檢索方式,精確定位錄像播放位置,極大提升安全事件追溯時屏幕錄像的審計效率。
案例研究屏幕錄像中運維操作命令的識別、檢索和審計。通過對運維操作錄像進行逐幀差異篩選識別,基于優先算法對錄像中的重復幀進行高效去重;同時對IT 運維工具圖像模型進行建模,提高運維操作識別的準確性。實現IT 運維錄像的內容識別,審計員可通過文本檢索方式,精確定位錄像播放位置,極大提升屏幕錄像的審計效率。

圖1 系統功能框架流程圖
定義收斂策略,即通過相鄰區域幀圖片的掃描結果進行收斂性判斷,例如當相鄰區域的掃描識別結果重疊度達到一定標準時即認為掃描識別結果收斂;定義抽樣策略,即在一個幀圖片掃描收斂后,在選擇下一幀圖片掃描時,可以依據抽樣算法得到最大效率的下一幀抽樣圖像,做到信息不丟失的情況下最大限度減少重復特征幀的掃描。抽樣策略包括前向抽樣和后向抽樣,每一次抽樣策略的計算循環過程如下:在一個幀圖像識別收斂后,通過前向策略計算下一幀的序列號,如該幀的掃描識別結果與前面的結果相似度在收斂域內,則說明該幀屬于重幀,繼續進行前向抽樣計算;如果該幀的掃描識別結果與前面幀的結果相似度在收斂域外,則說明該幀屬于非重幀,便進行后向策略計算,向后退回選擇一個掃描幀。只有當選擇的前向策略選擇幀屬于非重幀,且其后向策略選擇幀屬于重幀時,該前向策略選擇幀即為下一個掃描幀。如圖2:

圖2 優先算法
S 點代表搜索起點,E 點代表搜索目標。灰色的圓代表單向搜索可能的搜索范圍,綠色的2 個圓表示某次雙向搜索的搜索范圍,容易證明綠色的面積必定要比灰色的要小。
S 點與E 點之間的距離為R,兩個小圓半徑分別為R1、R2。
R=R1+R2
灰色面積:S1=πR2=π(R1+R2)2
綠色面積:S2=πR12+πR22
S2=π(R12+R22)
S2=π[(R1+R2)2-2R1R2]
S2=π(R1+R2)2-2πR1R2
S2=S1-2πR1R2
S1=S2+2πR1R2
S2 的值小于等于S1。
按照上述公式綠色面積必定要比灰色的要小。
S 點與E 點之間的距離為常量R,其中一小圓分半徑為X,另一小圓半徑為R-X,綠色面積為S。
S=π[X2+(R-X)2]
S=π(X2+R2-2RX+X2)
S=π(2X2-2RX+R2)
S=2π(X2-RX+R22)
S=2π(X2-RX+R24+R24)
S=2π[(X-R/2)2+R24]
因為(X-R/2)2>=0
所以當X-R/2=0 時,
Smin=2πR24=πR22
X=R/2,兩小圓面積相等時,即X 點處于中間時,兩小圓面積最小。
優先算法去重幀步驟:
1)獲取N 分鐘的視頻數據,并計算采集頻次,假設幀圖像采集頻次為M 秒
2)直接獲取0s 和Ms 處的幀圖像
3)對兩張幀圖像的像素點進行減法運算
4)如結果為0,那么0s 和Ms 之間的幀圖像屬于重復幀,不進行內容識別
5)繼續,獲取M*2s 處的幀圖片與Ms 處的幀圖片進行減法運行
6)如結果為0,那么Ms 和2Ms 處的幀圖像屬于重復幀,不進行內容識別
7)如果Ms 和2Ms 處的幀圖像計算結果不為0,那么獲取(M+2M)2s 處的幀圖像與Ms 處的圖像進行對應
8)如Ms 和(M+2M)2s 不同時,繼續回跳到5M4s 處與Ms的幀圖像進行對比
9)如幀圖像相同,那么獲取上次對比的幀圖像進行內容識別,以此類推,繼續獲取幀圖片進行對比
舉例說明:
如定義2s 為采集頻率,間隔2s 的幀圖像和當前幀圖像對比,如不同,往回跳1s,與當前幀圖像再對比,依次類推,發現相同時,取上次對比的幀圖片進行內容識別,如圖3。

圖3 舉例1
如定義2s 為采集頻率,間隔2s 的幀圖像和當前幀圖像對比,如相同,往前跳2s,與當前幀圖像再對比,依次類推,當發現不同時,在2s 內,往回跳時,發現相同時,取上次對比的幀圖像進行內容識別,如圖4。

圖4 舉例2
基于IT 運維工具圖像建模,對維護工具關鍵區域的圖像特征進行針對分析,提升錄像圖片的內容識別效率和識別精確度。建模過程主要包括圖像輸入和處理、工具劃分區域、關聯業務、提取特征,定向識別,如圖5:

圖5 算法建模
1)圖像輸入和處理:通過已構建的運維工具模型獲取識別區域,識別區域定為當前應用的活動窗口區域,定位窗口當前位置,并配合窗口名稱識別當前進程;通過構建的工具模型提升主要文本區的對比度,抑制非文本區圖像。
2)劃分區域:針對已知運維工具特殊布局劃分功能區塊,結合功能區塊內業務特點,建立針對區塊的內容識別規則。為文本區和非文本區,其中文本區通常主要為文字信息占優的區域,基于預設的文檔模型,且知其背景通常為純色,如文本編輯類型的白色或命令窗口的黑色;非文本區通常可視作圖像區,如工具的菜單欄、分割欄、狀態欄等。
以通用Oracle 訪問工具PLSQL Developer 舉例,通常劃分為菜單區域、文本輸入區域,結果區域等,每個區域的特征和識別規則如下:
文本輸入區域:關注DDL 和DML 語句,根據操作命令尋找命令特征,如select、update 等操作,不關注注釋內容的識別率,再配合詞典select、updte 關鍵詞的配置進行內容識別;
結果區域:根據結果區域的表格特征,每列字段類型都是一致的,因此按列內容識別,識別過程加入正則表達的判斷,如此列為電話號碼、郵箱地址、身份證號碼等正則進行識別。
菜單區域:菜單區域文字內容根據不存在變化,事先預定義菜單矩陣,如a11…a1n 代表“文件”菜單下的按鈕,a21…a2n 代表“工程”菜單下的按鈕,以此類推。

類似情況,以FTP 客戶端訪問工具FlashFXp 舉例,主要關注操作區域和結果區域,如圖6:

圖6 主要關注操作區域和結果區域
操作區域:關注當前目錄名稱,而目錄名稱是由英文和漢字組成,配合字體字號固定,進而進行文字識別。
工具結果區域:主要為連接、斷開、文件交換信息,按照列和行雙向識別,第一列都是[*],當行[*]后是數字時代表信息的代碼,此工具信息碼是固定的,識別后,可根據預設固定信息碼糾錯識別的字符串信息。
3)關聯業務:運維工具是和業務場景進行關聯的,每個運維工具一般只適用于一類業務場景,如plsql 工具主要是Oracle 維護訪問場景,FlashFXP 工具是針對FTP 服務器進行文件上傳和下載操作,識別過程會自動分類識別到的文字信息,如數據庫識別內容、主機識別內容、業務系統識別內容等。
4)提煉特征:根據運維工具特征,識別過程將包括提取行數據(行切分)、基于分隔符的單詞或短語提取(詞切分)和基于語法和經驗模型的字符提取(字符切分),對于分割出的字符計算特征向量(特征提取),輸入到分類器中識別輸出對應的字符或字,結合詞切分和行切分結果(詞組合),基于字典庫組合輸出最終的字符串文本,如圖7。

圖7 提煉特征
5)定向識別:根據實際工具中可能出現的語言類別主要有簡體中文和英文,因此,文本識別處理的語言類別擬限定為這兩類,并分別為中文和英文創建相應的特征庫,并按照菜單欄、編輯區、狀態欄等工具固有區域進行文字識別。
因此根據特定運維環境、特定運維工具、業務特征進行運維工具的建模,如圖8。

圖8 進行運維工具的建模
1)識別后的文字存儲在大數據中,根據大數據的分析能力,計算詞頻,優化已定義詞典。
2)對于已知應用類型的圖像采用文檔模型匹配方式,快速對內容區域分類;對于未提供應用類型的圖像擬采取自適應方法分類,并更新已有文檔模型。
3)自適應圖像區域分類:基于文本和圖片的固有特征,將圖像內容區域類型分成文本區和圖片區兩類。
流程圖如圖9。

圖9 流程圖
該案例在IT 系統的4A 堡壘機中全面推廣應用,屏幕錄像完善了4A 堡壘機審計覆蓋盲區,基于屏幕錄像的圖形識別審計案例則充分提升了錄像圖片的內容識別效率和安全事件溯源的審計效率,實現了屏幕錄像的運維操作內容高效識別,并可根據運維操作內容定位錄像文件和錄像播放位置。審計管理員不用再通過播放錄像去尋找關鍵審計點,直接檢索審計關鍵詞,即可找到對應的錄像文件和該關鍵操作在錄像中的時間點,極大提升了屏幕錄像的審計效率。
在業支現網中,目前每月分析屏幕錄像文件約40G(500 個錄像文件),識別生成2000 多萬條文本型的運維操作記錄。系統提供查詢界面供審計管理員進行操作的全文檢索,定位對應的錄像文件和錄像播放位置。