Web页面前端特征指纹提取方法、装置、设备和存储介质与流程
本发明涉及网络安全,特别是涉及一种无预设指纹库的web页面前端特征指纹提取方法、装置、设备和存储介质。
背景技术:
1、现有web系统识别技术通常依赖预先构建的指纹库进行匹配识别。该类指纹库一般包括页面标题、响应头字段、特定路径、静态资源文件名、页面关键字、图标哈希、javascript文件特征、html注释信息等特征条目。识别系统在获取目标web页面内容后,提取页面中的各项特征,并将其与预设指纹库中的特征条目进行比对,从而判断目标系统的类型、厂商或产品名称。
2、然而,现有技术存在以下缺陷:
3、第一,现有指纹识别方法高度依赖人工维护的指纹库,当面对未收录系统、新上线系统、区域性供应商系统、定制化采购系统、办公协同系统等未知通用web系统时,预置指纹库无法提供有效识别结果,导致识别失败。
4、第二,人工提取指纹依赖安全人员或运维人员的经验,通常需要人工查看页面源码,从html标签属性、css类名、dom节点、javascript路径、注释内容、接口路径片段等位置寻找特殊字符串,再通过检索验证,该过程效率低下、主观性较强,难以规模化应用。
5、第三,部分现有方法采用页面整体哈希、标题匹配、图标哈希或静态文件路径匹配等简单特征,这类方法对页面改版、资源压缩、cdn替换、定制化部署、前端构建产物变化较为敏感,泛化能力不足。
6、因此,亟需一种无预设指纹库的web页面前端特征指纹提取技术,能够摆脱对人工维护指纹库的依赖,自动从目标页面中提取具有系统特异性的稳定特征,并有效降低页面改版、资源压缩及前端构建变化带来的干扰。
技术实现思路
1、鉴于现有技术中的上述缺陷或不足,本发明提供了一种无预设指纹库的web页面前端特征指纹提取方法、装置、设备和存储介质,以解决背景技术提及的上述技术问题。
2、本发明的一个方面,提供了一种无预设指纹库的web页面前端特征指纹提取方法,包括以下步骤:
3、获取多个web页面,构成样本集合;
4、对所述样本集合中的每个web页面进行解析,提取页面中的文本型字符串数据,对所述文本型字符串数据进行词元化处理,得到多个词元;
5、基于每个词元在所述样本集合中出现的网页数量、字段类型、样本集合的网页总数量和归一化后的字符串,构建词元通用度数据表;
6、对待识别的目标web页面的页面内容进行词元化处理,提取目标web页面中的多个目标词元;确定每个目标词元的页面位置权重、字段类型权重、字符串长度权重、组合共现关系权重、噪声抑制权重和结构稳定性权重;将每个目标词元的字段类型和归一化后的字符串组成查询键,在所述词元通用度数据表中查询与每个目标词元具有相同的字段类型和归一化后的字符串的词元的网页数量;
7、根据下式计算每个目标词元的指纹候选得分:
8、
9、其中,为词元通用度数据表中与每个目标词元具有相同的字段类型和归一化后的字符串的词元的网页数量;为样本集合的网页总数量;为页面位置权重;为字段类型权重;为字符串长度权重;为组合共现关系权重;为噪声抑制权重;为结构稳定性权重;
10、将每个目标词元按照所述指纹候选得分排序,生成并输出一个或多个候选指纹。
11、本发明的另一方面,还提供了一种无预设指纹库的web页面前端特征指纹提取装置,包括:
12、样本集构建模块,用于获取多个web页面,构成样本集合;
13、页面解析与词元提取模块,用于对所述样本集合中的每个web页面进行解析,提取页面中的文本型字符串数据,对所述文本型字符串数据进行词元化处理,得到多个词元;
14、通用度数据表构建模块,用于基于每个词元在所述样本集合中出现的网页数量、字段类型、样本集合的网页总数量和归一化后的字符串,构建词元通用度数据表;
15、目标词元提取与处理模块,用于对待识别的目标web页面的页面内容进行词元化处理,提取目标web页面中的多个目标词元;确定每个目标词元的页面位置权重、字段类型权重、字符串长度权重、组合共现关系权重、噪声抑制权重和结构稳定性权重;将每个目标词元的字段类型和归一化后的字符串组成查询键,在所述词元通用度数据表中查询与每个目标词元具有相同的字段类型和归一化后的字符串的词元的网页数量;
16、指纹候选得分计算模块,用于根据下式计算每个目标词元的指纹候选得分:
17、
18、其中,为词元通用度数据表中与每个目标词元具有相同的字段类型和归一化后的字符串的词元的网页数量;为样本集合的网页总数量;为页面位置权重;为字段类型权重;为字符串长度权重;为组合共现关系权重;为噪声抑制权重;为结构稳定性权重;
19、指纹生成与输出模块,用于将每个目标词元按照所述指纹候选得分排序,生成并输出一个或多个候选指纹。
20、本发明提供的一种无预设指纹库的web页面前端特征指纹提取方法、装置、设备和存储介质,具有如下有益效果:
21、第一,本发明不要求事先知道目标web系统的厂商、产品名称或预设指纹规则,而是通过通用网页样本构建词元通用度数据表,从目标页面中自动提取候选指纹,降低了对人工指纹库的依赖。
22、第二,本发明能够自动解析页面、提取词元、计算得分并输出候选指纹,减少人工分析时间,提高了未知web系统识别效率。
23、第三,本发明通过统计词元在大量普通网页中的出现频率,识别并降低高频通用词的权重,避免将常见词误用为系统指纹,降低了检索噪声。
24、第四,本发明不仅可以使用单个字符串作为指纹,还可以使用多个低通用度词元的组合特征作为指纹,提高了指纹提取的稳定性。
1.一种无预设指纹库的web页面前端特征指纹提取方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的一种无预设指纹库的web页面前端特征指纹提取方法,其特征在于,通过如下步骤确定所述页面位置权重:
3.根据权利要求1所述的一种无预设指纹库的web页面前端特征指纹提取方法,其特征在于,通过如下步骤确定所述字段类型权重:
4.根据权利要求1所述的一种无预设指纹库的web页面前端特征指纹提取方法,其特征在于,通过如下步骤确定所述字符串长度权重:
5.根据权利要求1所述的一种无预设指纹库的web页面前端特征指纹提取方法,其特征在于,通过如下步骤确定所述组合共现关系权重:
6.根据权利要求1所述的一种无预设指纹库的web页面前端特征指纹提取方法,其特征在于,通过如下步骤确定所述噪声抑制权重:
7.根据权利要求1所述的一种无预设指纹库的web页面前端特征指纹提取方法,其特征在于,通过如下步骤确定结构稳定性权重:
8.一种无预设指纹库的web页面前端特征指纹提取装置,其特征在于,包括:
9.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至7中任意一项所述的无预设指纹库的web页面前端特征指纹提取方法。
10.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现如权利要求1至7中任意一项所述的无预设指纹库的web页面前端特征指纹提取方法。
版权声明:本站专利文献数据主要来源于国家知识产权局等公开渠道,由 技术新讯 进行整理汇编。页面设计及数据汇编的著作权归本站所有。全部内容仅供个人学习、科研评估与技术交流参考,严禁用于任何商业用途(包括但不限于直接生产制造、技术转让、倒卖数据等)。
免责条款:专利技术具有时效性,本站不对资料的绝对准确性、完整性和可实施性提供任何明示或暗示的担保。因参考本站内容造成的直接或间接损失,本站不承担相关法律责任。若您认为本站内容有侵权问题,请及时提供权属证明与我们联系,本站将在核实后依法处理。反馈意见:yyfuon@163.com