发明名称 检测网页内容变更的方法及装置
摘要 本发明提供一种检测网页内容变更的方法及装置,该方法包括:将第一网页生成第一文档对象模型DOM树,将第二网页生成第二DOM树;将第一DOM树和第二DOM树进行比较,确定第一DOM树和第二DOM树为同源DOM树;将第一DOM树中所有的子树与第二DOM树中所有的子树进行匹配,确定第一DOM树中与第二DOM树中每一子树的变更类型;若子树的变更类型为预设的需要进行合法验证的变更类型,则获取该子树对应的变更内容;查询内容权重列表,确定该子树对应的变更内容的权重等级;若该子树对应的变更内容的权重等级大于预设的非法变更等级,则确定该子树的变更类型为非法变更,解决现有的检测网页内容变更的方法检测效率低的问题。
申请公布号 CN102682098B 申请公布日期 2014.05.14
申请号 CN201210129996.7 申请日期 2012.04.27
申请人 北京神州绿盟信息安全科技股份有限公司 发明人 张振虎;王晓明;龙柯;王兴;罗宇;付德龙
分类号 G06F17/30(2006.01)I 主分类号 G06F17/30(2006.01)I
代理机构 北京同立钧成知识产权代理有限公司 11205 代理人 刘芳
主权项 一种检测网页内容变更的方法,其特征在于,包括:将第一网页生成第一文档对象模型DOM树,将第二网页生成第二DOM树;将第一DOM树和第二DOM树进行比较,确定所述第一DOM树和所述第二DOM树为同源DOM树;其中,所述将第一DOM树和第二DOM树进行比较,确定所述第一DOM树和所述第二DOM树为同源DOM树,具体包括:确定所述第一DOM树与所述第二DOM树中所有子树的哈希值hash_dom;所述hash_dom值是以当前节点为根节点的整棵DOM树的hash值;分别将所述第一DOM树中所有子树的hash_dom值与所述第二DOM树中所有子树的hash_dom值按照预设的顺序组成第一哈希序列和第二哈希序列;利用相似度算法计算所述第一哈希序列与所述第二哈希序列的相似度,若所述第一哈希序列与所述第二哈希序列的相似度大于哈希序列相似度阈值,则确定所述第一DOM树与所述第二DOM树为同源DOM树;将所述第一DOM树中所有的子树与所述第二DOM树中所有的子树进行匹配,确定所述第一DOM树中与所述第二DOM树中每一子树的变更类型;若所述子树的变更类型为预设的需要进行合法验证的变更类型,则获取所述子树对应的变更内容;查询内容权重列表,确定所述子树对应的变更内容的权重等级;若所述子树对应的变更内容的权重等级大于预设的非法变更等级,则确定所述子树的变更类型为非法变更;其中,若所述第一DOM树为源DOM树,所述第二DOM树为所述第一DOM树的同源DOM树;所述将所述第一DOM树中所有的子树与所述第二DOM树中所有的子树进行匹配,确定所述第一DOM树中与所述第二DOM树中每一子树的变更类型具体包括:查找所述第一DOM树的第一级子树集合A,若确定存在与第二DOM树的第一级子树集合B中任一子树b<sub>i</sub>具有相同hash_dom值的子树a<sub>i</sub>,则确定所述具有相同hash_dom值的子树a<sub>i</sub>是否已被标记,若所述具有相同hash_dom值的子树子树a<sub>i</sub>被标记,则确定所述具有相同hash_dom值的子树a<sub>i</sub>的变更类型增加复制,确定与所述具有相同hash_dom值的子树a<sub>i</sub>对应的子树b<sub>i</sub>的变更类型为复制,若所述具有相同hash_dom值的子树a<sub>i</sub>未被标记,则对所述具有相同hash_dom值的子树a<sub>i</sub>进行标记,并确定所述具有相同hash_dom值的子树a<sub>i</sub>和与所述具有相同hash_dom值的子树a<sub>i</sub>对应的子树b<sub>i</sub>的变更类型为相同;或者,所述将所述第一DOM树中所有的子树与所述第二DOM树中所有的子树进行匹配,确定所述第一DOM树中与所述第二DOM树中每一子树的变更类型定具体包括:查找所述第一DOM树的第一级子树集合A,若确定存在与第二DOM树的第一级子树集合B中任一子树b<sub>i</sub>的hash_dom值不相同、且不同源的子树a<sub>i</sub>,则查找所述第一DOM树中所有子树集合确定是否存在与所述第二DOM树的第一级子树集合B中任一子树b<sub>i</sub>具有相同hash_dom值的子树a<sub>j</sub>;若存在所述具有相同hash_dom值的子树a<sub>j</sub>,则确定所述具有相同hash_dom值的子树a<sub>j</sub>是否被标记,若所述具有相同hash_dom值的子树a<sub>j</sub>被标记,则确定所述具有相同hash_dom值的子树a<sub>j</sub>的变更类型增加移动,所述具有相同hash_dom值的子树a<sub>j</sub>对应的子树b<sub>i</sub>的变更类型为复制;若所述具有相同hash_dom值的子树a<sub>j</sub>未被标记,则对所述具有相同hash_dom值的子树a<sub>j</sub>进行标记,并确定所述具有相同hash_dom值的子树a<sub>j</sub>和所述具有相同hash_dom值的子树a<sub>j</sub>对应的子树b<sub>i</sub>的变更类型为移动;若所述第二DOM树的第一级子树集合B中存在与所述第一DOM树中所有子树集合中的任一子树a<sub>j</sub>的hash_dom值不相同、且不同源的子树b<sub>i</sub>,则确定所述子树b<sub>i</sub>的变更类型为插入;或者,所述将所述第一DOM树中所有的子树与所述第二DOM树中所有的子树进行匹配,确定所述第一DOM树中与所述第二DOM树中每一子树的变更类型具体包括:查找第一DOM树的第一级子树集合A,若确定存在与第二DOM树的第一级子树集合B中任一子树b<sub>i</sub>同源的子树a<sub>k</sub>,则对所述子树a<sub>k</sub>进行标记,确定所述子树a<sub>k</sub>和与所述子树a<sub>k</sub>同源的子树b<sub>i</sub>的变更类型为修改;或者,所述将所述第一DOM树中所有的子树与所述第二DOM树中所有的子树进行匹配,确定所述第一DOM树中与所述第二DOM树中每一子树的变更类型具体包括:查询所述第一DOM树的所有子树集合;若确定存在与所述第二DOM树的所有子树集合中任一子树b<sub>i</sub>的hash_dom值不相同的子树a<sub>j</sub>,且所述子树a<sub>j</sub>未被标记,则确定所述子树a<sub>j</sub>的变更类型为删除。
地址 100089 北京市海淀区北洼路4号益泰大厦3层