时间:2024-09-03
◆匡石磊
(中国联通江西省分公司 江西 330000)
在IT 系统的日常运维操作过程中,4A 堡垒机的屏幕录像系统是一种常见的审计方法。4A 堡垒机的屏幕录像系统,通过实时对用户在当前堡垒机的操作进行录像,并记录下用户的操作行为数据,事后进行文件检索,达到图形化审计的目的,是堡垒机无盲区审计的重要功能。但是,面对海量的运维操作录像,仅靠人工逐帧查看屏幕录像开展审计,工作效率低且容易出现疏漏,当进行安全事件追溯时,海量录像让审计人员无从下手。本案例研究屏幕录像中运维操作命令的识别、检索和审计。通过对运维操作录像进行逐帧差异筛选识别,基于优先算法对录像中的重复帧进行高效去重;同时对IT 运维工具图像模型进行建模,提高运维操作识别的准确性。实现IT 运维录像的内容识别,审计员可通过文本检索方式,精确定位录像播放位置,极大提升安全事件追溯时屏幕录像的审计效率。
案例研究屏幕录像中运维操作命令的识别、检索和审计。通过对运维操作录像进行逐帧差异筛选识别,基于优先算法对录像中的重复帧进行高效去重;同时对IT 运维工具图像模型进行建模,提高运维操作识别的准确性。实现IT 运维录像的内容识别,审计员可通过文本检索方式,精确定位录像播放位置,极大提升屏幕录像的审计效率。
图1 系统功能框架流程图
定义收敛策略,即通过相邻区域帧图片的扫描结果进行收敛性判断,例如当相邻区域的扫描识别结果重叠度达到一定标准时即认为扫描识别结果收敛;定义抽样策略,即在一个帧图片扫描收敛后,在选择下一帧图片扫描时,可以依据抽样算法得到最大效率的下一帧抽样图像,做到信息不丢失的情况下最大限度减少重复特征帧的扫描。抽样策略包括前向抽样和后向抽样,每一次抽样策略的计算循环过程如下:在一个帧图像识别收敛后,通过前向策略计算下一帧的序列号,如该帧的扫描识别结果与前面的结果相似度在收敛域内,则说明该帧属于重帧,继续进行前向抽样计算;如果该帧的扫描识别结果与前面帧的结果相似度在收敛域外,则说明该帧属于非重帧,便进行后向策略计算,向后退回选择一个扫描帧。只有当选择的前向策略选择帧属于非重帧,且其后向策略选择帧属于重帧时,该前向策略选择帧即为下一个扫描帧。如图2:
图2 优先算法
S 点代表搜索起点,E 点代表搜索目标。灰色的圆代表单向搜索可能的搜索范围,绿色的2 个圆表示某次双向搜索的搜索范围,容易证明绿色的面积必定要比灰色的要小。
S 点与E 点之间的距离为R,两个小圆半径分别为R1、R2。
R=R1+R2
灰色面积:S1=πR²=π(R1+R2)²
绿色面积:S2=πR1²+πR2²
S2=π(R1²+R2²)
S2=π[(R1+R2)²-2R1R2]
S2=π(R1+R2)²-2πR1R2
S2=S1-2πR1R2
S1=S2+2πR1R2
S2 的值小于等于S1。
按照上述公式绿色面积必定要比灰色的要小。
S 点与E 点之间的距离为常量R,其中一小圆分半径为X,另一小圆半径为R-X,绿色面积为S。
S=π[X²+(R-X)²]
S=π(X²+R²-2RX+X²)
S=π(2X²-2RX+R²)
S=2π(X²-RX+R²2)
S=2π(X²-RX+R²4+R²4)
S=2π[(X-R/2)²+R²4]
因为(X-R/2)²>=0
所以当X-R/2=0 时,
Smin=2πR²4=πR²2
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 多万条文本型的运维操作记录。系统提供查询界面供审计管理员进行操作的全文检索,定位对应的录像文件和录像播放位置。
我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!