CN112470154B - 检测web网页安全性的方法和装置 - Google Patents
检测web网页安全性的方法和装置 Download PDFInfo
- Publication number
- CN112470154B CN112470154B CN201880095842.6A CN201880095842A CN112470154B CN 112470154 B CN112470154 B CN 112470154B CN 201880095842 A CN201880095842 A CN 201880095842A CN 112470154 B CN112470154 B CN 112470154B
- Authority
- CN
- China
- Prior art keywords
- web
- page
- dom tree
- tested
- dom
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 55
- 230000004044 response Effects 0.000 claims abstract description 164
- 238000002347 injection Methods 0.000 claims abstract description 35
- 239000007924 injection Substances 0.000 claims abstract description 35
- 238000004364 calculation method Methods 0.000 claims abstract description 24
- 238000012360 testing method Methods 0.000 claims description 93
- 238000001514 detection method Methods 0.000 claims description 60
- 238000009877 rendering Methods 0.000 claims description 10
- 238000012545 processing Methods 0.000 description 14
- 238000010586 diagram Methods 0.000 description 11
- 238000004891 communication Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 7
- 238000004422 calculation algorithm Methods 0.000 description 6
- 230000002441 reversible effect Effects 0.000 description 5
- 239000000243 solution Substances 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000000605 extraction Methods 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000006399 behavior Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000008030 elimination Effects 0.000 description 1
- 238000003379 elimination reaction Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000012806 monitoring device Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
- Storage Device Security (AREA)
- Information Transfer Between Computers (AREA)
Abstract
提供了一种检测web网页安全性的方法和装置,所述方法剔除每个web响应页面中的公共部分,所述每个web响应页面中的公共部分为与所述待测试web页面中的结构化查询语言SQL注入不相关的部分,并计算所述第一web响应页面的非公共部分与所述第二web响应页面的非公共部分的相似度,根据所述计算出来的相似度检测所述待测试网页的SQL注入风险,从而减少了web响应页面中通用内容对相似度计算的影响,以提高计算相似度的准确性。
Description
技术领域
本申请涉及网络安全领域,并且更具体地,涉及一种用于检测web网页安全性的方法和装置。
背景技术
结构化查询语言(structured query language,SQL)注入漏洞的检测是自动化漏洞扫描工具必须具备的扫描能力之一。在检测过程中,自动化工具需要向服务器接口发送多次请求,根据服务器的响应情况判断SQL注入漏洞是否存在。目前业界通用的SQL漏洞检测方案是基于访问参数为逻辑真的SQL语句或逻辑假的SQL语句的响应页面进行相似度判断,计算复杂度较高,同时准确度偏低。
发明内容
有鉴于此,本申请提供一种检测web网页安全性的方法和装置,提高计算相似度的准确性。
第一方面,提供了一种检测web网页安全性的方法,包括:向待测试web网页的服务器发送第一测试请求和第二测试请求,该第一测试请求包括合法的测试请求,该第二测试请求包括不合法的测试请求;接收该第一测试请求对应的第一web响应页面和该第二测试请求对应的第二web响应页面;剔除每个web响应页面中的公共部分,该每个web响应页面中的公共部分为与该待测试web页面中的SQL注入不相关的部分;计算该第一web响应页面的非公共部分与该第二web响应页面的非公共部分的相似度,根据该计算出来的相似度检测该待测试网页的SQL注入风险。
本申请实施例在计算web响应页面的相似度时,会排除掉网页中的公共部分对相似度计算的干扰,能够提高相似度计算的准确率。
结合第一方面,在第一方面的第一种可能的实现方式中,该剔除每个web响应页面中的公共部分,包括:
分别获取该第一web响应页面的文档对象模型DOM树与该第二web响应页面的DOM树;获取该待测试web页面的模板的DOM树,该待测试web页面的模板指示该待测试web页面的公共部分;根据该待测试web页面的模板的DOM树,剔除该第一web响应页面的DOM树中与该模板的DOM树相同的子树;根据该待测试web页面的模板的DOM树,剔除该第二web响应页面的DOM树中与该模板的DOM树相同的子树。
因此,本申请实施例通过使用待测试web页面的模板的DOM树,以实现对web响应页面的DOM树中公共内容的剔除,以便于计算相似度。
结合第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,该获取该待测试web页面的模板的DOM树,具体包括:
向该待测试web页面的服务器发送至少两个访问请求,其中,该至少两个访问请求包括不同的访问参数;接收至少两个访问响应页面;根据该至少两个访问响应页面,得到至少两个访问DOM树;根据该至少两个访问DOM树,获取该web网页的模板的DOM树,该web网页的模板的DOM树包括该至少两个访问DOM树的公共子树。
因此,本申请实施例通过向待测试web页面的服务器发送多个访问请求,以获取web网页的模板的DOM树。
结合第一方面的第二种可能的实现方式,在第一方面的第三种可能的实现方式中,该获取该web网页的模板的DOM树,具体包括:
逆向遍历该至少两个访问DOM树的节点,获取该至少两个访问DOM树的公共子树。
因此,本申请实施例可通过遍历的方式获取多个访问DOM树的公共子树,以便于准确得到web网页的模板的DOM树。
结合第一方面的第一种可能的实现方式、第二种可能的实现方式以及第三种可能的实现方式中的任意一种可能的实现方式,在第一方面的第四种可能的实现方式中,计算该第一web响应页面的非公共部分与该第二web响应页面的非公共部分的相似度,具体包括:
计算剔除子树后的该第一web响应页面的DOM树与剔除子树后的该第二web响应页面的DOM树的相似度。
因此,本申请实施例可直接计算该第一web响应页面的DOM树与剔除子树后的该第二web响应页面的DOM树的相似度,以便于得知待测试网页的SQL注入风险。
结合第一方面的第一种可能的实现方式、第二种可能的实现方式以及第三种可能的实现方式中的任意一种可能的实现方式,在第一方面的第五种可能的实现方式中,该计算该至少两个剔除后的测试DOM树的相似度,具体包括:
渲染剔除子树后的该第一web响应页面的DOM树与剔除子树后的该第二web响应页面的DOM树,生成至少两个测试图像;计算该至少两个测试图像的图像相似度。
因此,本申请实施例可先对该第一web响应页面的DOM树与剔除子树后的该第二web响应页面的DOM树分别进行渲染,得到多个测试图像,并使用图像相似度计算方法进行计算从而以便于得知待测试网页的SQL注入风险。另外,渲染得到的测试图像可以呈现出来,能够更直观地反映待测试网页,更有利于判断待测试网页的SQL注入风险。
第二方面,提供了一种web网页的安全性的检测装置,包括测试响应获取单元、相似度计算单元和公共部分获取单元。这些单元用于执行上述第一方面中及第一方面的多种表达方式中的方法。
第三方面,提供了一种计算设备,该计算设备包括至少一台处理器和存储单元;该存储单元,用于存储指令;该处理器与该存储单元耦合,当该至少一台处理器执行该指令时,该指令致使该处理器执行上述第一方面及第一方面的多种表达方式中任一种表达方式该的方法。
第四方面,提供了一种计算机程序产品,该计算机程序产品包括:程序代码,当该程序代码被计算设备的处理单元或收发器、处理器运行时,使得计算设备执行上述第一方面及其可能的实施方式中的任一方法。
第五方面,提供了一种计算机可读存储介质,该计算机可读存储介质存储有程序,该程序使得web网页的安全性的检测装置执行上述第一方面及其可能的实施方式中的任一方法。
附图说明
图1是应用本申请实施例的***架构的一个例子的示意图。
图2是一个网址的页面示意图。
图3是根据本申请实施例的检测web网页安全性的方法的示意性流程图。
图4是本申请实施例的一个例子的示意图。
图5是根据本申请实施例逆向遍历的一个流程图。
图6是根据本申请实施例的一个例子的示意图。
图7是根据本申请实施例的提取公共树的一个例子的示意图。
图8是根据本申请实施例的web网页的安全性的检测装置的示意性框图。
图9是根据本申请实施例的web网页的安全性的检测装置的示意性结构框图。
具体实施方式
下面将结合附图,对本申请中的技术方案进行描述。
本申请实施例的技术方案可以应用于网络安全检测***或网络安全扫描***,比如,自动化漏洞扫描工具、结构化查询语言(Structured Query Language,SQL)注入扫描***、云漏洞扫描工具、Web攻击扫描***等其他用于检测网络安全的工具。下面对涉及到的一些术语或概念进行简单描述。
SQL注入(injection)就是通过把SQL命令***到网络(比如,全球广域网或万维网(World Wide Web,Web),为了便于描述,下面以web为例进行描述,对此不作限定)表单提交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令的目的。具体来说,SQL注入是利用现有应用程序,将(恶意的)SQL命令注入到后台数据库引擎执行,它可以通过在Web表单中输入(恶意的)SQL语句得到一个存在安全漏洞的网站上的数据库。SQL注入是最常见的Web攻击方式之一。
文档对象模型(document object model,DOM),可以以一种独立于平台和语音的方式访问和修改一个文档的内容和结构,是表示和处理一个超文本标记语言(HyperTextMarkup Language,HTML)文档或可扩展标记语言(Extensible Markup Language,XML)文档的常用方法。DOM的设计可以用于任何编程语言。DOM技术使得用户面可以动态地变化,如可以动态地显示或隐藏一个元素,改变它们的属性,增加一个元素等。DOM技术使得页面的交互性大大地增强。DOM实际上是以面向对象方式描述的文档模型。DOM定义了表示和修改文档所需的对象、这些对象的行为和属性以及这些对象之间的关系。可以把DOM认为是页面上数据和结构的一个树形表示。
SQL注入的风险检测又称SQL注入的漏洞检测,可以通过相似度算法和阈值实现。具体即,相似度算法采用下述公式:其中,y表示相似度,b表示差异字符数,a表示总字符长度。可以看到,相似度的取值取决于该式中的差异字符数和总字符串长度。一个web网页的响应页面中很多字符都是和SQL注入漏洞不相关。也就是说,作为分母的总字符串长度中有很大一部分是通用的内容,web网页的任何响应,其通用部分的内容都是一样的,在分子差异字符数不变的情况下,分母总字符串长度中通用的内容越多,对相似度的影响越大,会造成相似度的敏感度偏低,最后造成检测结果存在较多的漏判。因此,本申请实施例拟提出一种方式尽可能地减少相似度算法的干扰项,以提高相似度计算的准确性。
图1是应用本申请实施例的***架构100的一个例子的示意图。如图1所示,该***架构100包括web网页的服务器110以及web网页的安全性检测装置120。安全性检测装置120用于检测web页面的SQL注入风险。
可选地,web网页的安全性检测装置120可以包括测试响应获取单元121、相似度计算单元122和公共部分获取单元123。所述测试响应获取单元121用于获取安全检测所需的web响应页面;所述相似度计算单元122用于根据测试响应获取单元121获取的web响应页面计算相似度进而判断所述web页面的SQL注入风险或SQL注入漏洞。公共部分获取单元123用于获取与每个web响应页面中的公共部分。
应理解,本申请实施例对web网页的服务器110的具体部署不作限定。可选地,web网页的服务器110可以是独立部署的服务器,也可以是部署在数据中心的服务器,例如,共有云、私有云或者混合云平台中的虚拟机。
还应理解,本申请实施例对web网页的安全性检测装置120的具体部署也不作限定。可选地,web网页的安全性检测装置120可以部署在独立于web网页的服务器的物理机/服务器上,也可以部署在web网页的服务器所在的数据中心,例如共有云、私有云或者混合云平台中的管理服务或者虚拟机。
还应理解,图1只是示意性地给出了本申请实施例的一个***架构图,并不对本申请实施例构成限定,实际上图1还可以包括其他与web网页的服务器110和/或web网页的安全性检测装置120交互或者通信的模块或单元。
本申请实施例的检测web网页安全性的方法可以由图1中的web网页的安全性检测装置120(可以简称为安全检测装置)执行。为了便于描述,下文以安全检测装置为例进行描述,这里作统一说明。
本申请实施例中,安全检测装置通过剔除web响应页面中的公共部分,即剔除与待测试web网页中的SQL注入不相关的部分,并根据剔除后的web响应页面计算相似度。
为了便于理解,这里结合图2中的例子描述web响应页面中的公共部分。图2示出了一个关于艺术家的页面示意图。如图2所示,在呈现出的网页内容中,若用户点击查看不同的艺术家,那么关于方框内“艺术家的具体内容呈现”会呈现出不同的内容,但是关于导航栏中的内容却是相同的。在该网页呈现的内容中,导航栏对应的内容可以理解为关于该网页的公共内容,包括“首页、分类、艺术家…”等内容,而“艺术家的具体内容呈现”可以认为是该web响应页面的非公共部分。也就是说,图2中网页对应的模板可以理解为公共部分组成的内容。应理解,图2只是示意性地给出网页中可能包括的内容。
下面详述本申请实施例中的检测web网页安全性的方法。
图3是根据本申请实施例的检测web网页安全性的方法300的示意性流程图。可选地,所述方法300可以由安全检测装置执行,比如,上述图1中的安全性检测装置120。所述方法300包括:
S310,向待测试web网页的服务器发送第一测试请求和第二测试请求,所述第一测试请求包括合法的测试请求,所述第二测试请求包括不合法的测试请求。
可选地,第二测试请求包括访问参数中的SQL语句逻辑为真的测试请求或访问参数中的SQL语句逻辑为假的测试请求。还应理解,除了第一测试请求和第二测试请求,还可以向待测试web网页的服务器同时发送至少一个访问参数中的SQL语句逻辑为真的测试请求和至少一个访问参数中的SQL语句逻辑为假的测试请求,以增加收到的web响应页面的数量,提高测试精度。这里,第一测试请求和第二测试请求可以是针对待测试web网页的同一访问参数而言的,比如,访问参数是“id=1”,第一测试请求的访问参数为“id=1”;第二测试请求的访问参数为“id=1 and 1=1”或者“id=1 and 1=2”,前者(即“id=1 and 1=1”)为访问参数中的SQL语句逻辑为真的测试请求,后者(即“id=1 and 1=2”)为访问参数中的SQL语句逻辑为假的测试请求。
其中,待测试web网页的服务器可以是图1中web网页的服务器110。
应理解,上述测试请求(包括真请求和假请求)只是示例性地描述,并不对本申请实施例构成限定,具体实现时还可以有其他请求。例如,访问参数中的SQL语句逻辑为真的请求还可以是一些逻辑条件:比如,“id=2 and id=1+1 or id=(3-1)*1”等,可以得到与“id=1 and 1=1”一样的响应内容。
具体比如,安全检测装置通过向服务器发送:
访问参数中的SQL语句逻辑为真的请求(http://testphp.vulnweb.com/artists.php?artist=2%20and%201=1),以及访问参数中的SQL语句逻辑为假的请求(http://testphp.vulnweb.com/artists.php?artist=2%20and%201=2)。
S320,接收所述第一测试请求对应的第一web响应页面和所述第二测试请求对应的第二web响应页面。
S330,剔除每个web响应页面中的公共部分,所述每个web响应页面中的公共部分为与所述待测试web页面中的SQL注入不相关的部分。
具体地,安全检测装置在得到第一web响应页面和第二web响应页面后,需要对web响应页面中的公共部分进行剔除。
需要说明的是,每个web响应页面中的公共部分可以理解为待测试web网页的通用内容。比如,针对同一待测试web网页发送多个访问请求,每个访问请求对应的响应页面中都会出现的内容,即为待测试web网页的公共部分。结合前文图2可知,web响应页面中的公共部分可以理解为网页内容中的公共部分的内容,比如图2中的导航栏。
可选地,S330包括:
分别获取所述第一web响应页面的文档对象模型DOM树与所述第二web响应页面的DOM树;
获取所述待测试web页面的模板的DOM树,所述待测试web页面的模板指示所述待测试web页面的公共部分;
根据所述待测试web页面的模板的DOM树,剔除所述第一web响应页面的DOM树中与所述模板的DOM树相同的子树;
根据所述待测试web页面的模板的DOM树,剔除所述第二web响应页面的DOM树中的子树。
具体而言,安全检测装置对第一web响应页面的内容进行解析,得到第一web响应页面的DOM树。接着,安全检测装置使用待测试web页面的模板的DOM树,对第一web响应页面的DOM树中的节点进行裁剪,剔除后的第一web响应页面的DOM树中不包含待测试web页面的公共部分对应的节点。类似地,安全检测装置对第二web响应页面的内容进行解析,得到第二web响应页面的DOM树,并采用上述待测试web页面的模板,对第二web响应页面的DOM树中的节点进行裁剪,剔除后的第二web响应页面的DOM树中不包含待测试web页面的公共部分对应的节点。
为了便于理解,这里结合图4中的例子描述剔除公共部分后的web响应页面。如图4所示,相比于图2,图4中web响应页面中公共部分的内容已剔除,剩下了“艺术家的具体内容呈现”。应理解,“艺术家的具体内容呈现”框中显示的内容可以是关于艺术家的详细内容,图4中没有具体展开。这里,图4可以理解为是剔除公共部分后的web网页的正常响应页面。另外,对于剔除公共部分后的web网页,本领域技术人员应理解,若向该web网页的服务器发送条件为真的测试请求,则理论上可以得到与图4相同的响应页面;若向该web网页的服务器发送条件为假的测试请求,则理论上得到的响应页面与图4的区别在于,“艺术家的具体内容呈现”框内的内容为空。
这样,安全检测装置得到的每个web响应页面中不包括与所述待测试web页面中的SQL注入不相关的部分。
可选地,安全检测装置可以获取待测试web网页的模板。其中,待测试web网页的模板可以理解为待测试web网页的通用内容组成的服务模型。
可选地,安全检测装置可以获取待测试web网页的模板的DOM树。下面详细介绍本申请实施例安全检测装置获取待测试web网页的模板的DOM树的具体方式。可选地,获取web页面的模板,具体可以包括:
安全检测装置向所述待测试web页面的服务器发送至少两个访问请求,其中,所述至少两个访问请求包括不同的访问参数;接收至少两个访问响应页面;根据所述至少两个访问响应页面,得到至少两个访问DOM树;根据所述至少两个访问DOM树,获取所述web网页的模板的DOM树,所述待测试web网页的模板的DOM树包括所述至少两个访问DOM树的公共子树。
具体而言,安全检测装置对可以向待测试web页面的服务器发送多个访问请求,多个访问请求中包括不同的访问参数,以期得到针对待测试web网页的不同响应内容。安全检测装置在得到多个访问请求的多个响应页面后,对多个响应页面进行解析,以得到多个DOM树。安全检测装置通过遍历比较多个DOM树上的节点,得到多个DOM树的公共子树。安全监测装置通过多个DOM树的公共子树,可得到待测试web网页的模板的DOM树。
可选地,安全检测装置通过逆向遍历至少两个访问DOM树的节点,获取所述至少两个访问DOM树的公共子树,具体方法在后文详述。
具体地,待测试web网页提供一个访问接口,通过具有不同访问参数的访问请求,获得待测试web网页在不同访问参数下的web响应页面。所述至少两个访问请求可以理解为针对同一网页服务接口的不同URL。举例来说,待测试web网页包括一个新闻网址接口,通过网址http://a.com/news.php?id=1呈现内容。待测试网页安全检测装置针对该同一新闻网址接口的服务参数是news.php?id=2的网页,以及服务参数是news.php?id=3的网页分别进行爬虫扫描,可以呈现出该新闻网址接口的不同网页内容。在服务参数是news.php?id=2呈现的网页内容以及服务参数是news.php?id=3呈现的网页内容中,除去新闻内容相关部分不一样外,网页的其他内容都比较类似,比如网页的公共导航条等公用信息。这些类似的部分可以理解为公共内容,公共内容组成了该新闻网址接口的模板。相应地,这些公共内容对应的DOM树就是该新闻网址接口的模板的DOM树。
应理解,安全检测装置也可以在本地保存有待测试web网页的模板,能够直接使用,对此不作限定。
S340,计算所述第一web响应页面的非公共部分与所述第二web响应页面的非公共部分的相似度,根据所述计算出来的相似度检测所述待测试网页的SQL注入风险。
需要说明的是,所述第一web响应页面的非公共部分可以理解为:对待测试web网页的服务器发送第一测试请求,得到的第一web响应页面中去除掉前文得到的web响应网页的公共部分,即为所述第一web响应页面的非公共部分。类似地,所述第二web响应页面的非公共部分可以理解为:对待测试web网页的服务器发送第二测试请求,得到的第二web响应页面中去除掉前文得到的web响应网页的公共部分,即为所述第二web响应页面的非公共部分。
具体而言,安全检测装置以第一web响应页面的非公共部分为参考,若第二测试请求是访问参数中的SQL语句逻辑为真的测试请求,那么当第二web响应页面的非公共部分和第一web响应页面的非公共部分的相似度超过第一阈值,可以认为SQL注入漏洞存在;若第二测试请求是访问参数中的SQL语句逻辑为假的测试请求,那么当第二web响应页面的非公共部分和第一web响应页面的非公共部分的相似度低于第二阈值,可以认为SQL注入漏洞存在。应理解,第一阈值和第二阈值是可以根据需求或经验预设的,对此不作限定。
还应理解,本申请实施例中,还可以向待测试web网页的服务器同时发送至少一个访问参数中的SQL语句逻辑为真的测试请求和至少一个访问参数中的SQL语句逻辑为假的测试请求,分别计算得到的多个web响应页面的非公共部分与第一web响应页面的非公共部分的相似度。根据计算所得的多个相似度和预设阈值,可以判断SQL注入漏洞是否存在,其中,预设阈值可以是一个或多个,根据计算所得的相似度和预设阈值判断SQL漏洞的方法在此不再赘述。
可选地,S340包括:分别计算剔除子树后的所述第一web响应页面的DOM树与所述第二web响应页面的DOM树的DOM树的相似度。
在本申请实施例中,安全检测装置通过剔除web响应页面中的公共部分,将无效节点全部移除,排除干扰节点,这样使得计算相似度时只需采用有效节点的字符串长度,无需将无效节点的字符串长度纳入相似度公式中计算,从而可以提高漏洞检测的准确率。
进一步地,由于页面真实呈现的内容跟后台代码有很大差异,有些隐藏代码在图像中是看不到的,但是SQL注入攻击,只关注用户看到的内容,因此用文本比对也还是不准确,因此在剔除子树后,本申请实施例还可以用图像(呈现给用户的有效区域图像进行相似度分析比对得到更准确的分析结果。
可选地,S340包括:渲染剔除子树后的所述第一web响应页面的DOM树与剔除子树后的所述第二web响应页面的DOM树,生成至少两个测试图像;
计算所述至少两个测试图像的图像相似度。
具体地,安全检测装置可以对得到的剔除子树后的所述第一web响应页面的DOM树进行图像渲染,并呈现出相应的图像;以及,安全检测装置可以对得到的剔除子树后的所述第二web响应页面的DOM树进行图像渲染,并呈现出相应的图像。这样,使得用户可以直观地对比相似度(渲染后的图像用户可以直观对比,可以不计算相似度),或者,也可以使用图像相似度方法计算网页相似度。可选地,图像相似度方法可以是二值化算法或图像领域中的其他相似度比较算法,对此不作限定。可选地,如果第一图像相似度满足相应的图像相似度阈值,且第二图像相似度满足相应的图像相似度阈值,则可以认为SQL注入漏洞存在。当然,图像相似度阈值也可以提前设定,对此不作限制。
另外,由于HTML文本中其实有很多注释之类字符串对文本相似图进行干扰,而注释和其他不可见元素在图形上都不会呈现,因此采用图像渲染的方式可以避免注释之类字符串对相似度计算的干扰。也就是说,如果采用相似度公式计算,那么注释之类字符串会增加额外的字符串长度,从而影响了相似度计算的准确度,而使用图像渲染的方式可以避免这些问题。
这里结合图6中的例子描述。如图6所示,对于URL:http://testphp.vulnweb.com/ artists.php?artist=2%20and%201=1,在采用本申请实施例的方法剔除掉该网址的源代码对应的DOM树中的div#siteInfo、div#masthead和div#navBar,保留div#content。图6中的左边是剔除div#siteInfo、div#masthead和div#navBar后该网址对应的源代码(其中,源代码可以通过DOM元素查看器进行查看,或者采用其他方式获取,对此不作限定),图6的右边是源代码的渲染图像。从图6中右侧的图像可以看出:剔除后的网页中只显示了非公共部分的内容,即div#content对应的内容。并且,源代码中还存在注释字符串(本领域技术人员可以知道,图6中只是示意性地框出一部分注释字符串,实际上还有其他的注释字符串)。类似地,网页源代码中的隐藏节点或者层叠样式表(Cascading Style Sheets,CSS),Java脚本代码与上述注释之类字符串类似,也会增加额外的字符串长度,从而影响了相似度计算的准确度,而使用图像渲染的方式可以避免这些问题。
可选地,安全检测装置获取所述web网页的模板的DOM树,具体包括:通过逆向遍历至少两个访问DOM树的节点,获取至少两个访问DOM树的公共子树,所述至少两个访问DOM树的公共子树即为所述web网页的模板的DOM树。
具体而言,安全检测装置通过逆向遍历多个访问DOM树的节点,具体即,按照以下顺序依次向上层遍历:叶子节点、父节点、子树、最大子树等,通过比较以获取多个DOM树的公共子树。下面结合图5描述本申请实施例提取公共子树的过程。以两个DOM树为例,具体流程如图5所示,安全检测装置通过对两个DOM树的叶子节点的有效可见文本分布进行提取,判断两个DOM树叶子节点的内容是否相同,如果相同,则继续进行遍历;如果不同,则最大子树提取结束。若两个DOM树存在相同内容的叶子节点,还需要进一步提取两个DOM树中存在相同内容的叶子节点的父节点,然后再判断双方的父节点是否相同。若父节点相同,则还需要判断两个DOM树中除了这个相同的父节点外,是否存在其他子树,若父节点不同,则最大子树提取结束。如果父节点相同,且判断出两个DOM树中除了父节点还存在其他子树,则继续对其他子树执行遍历过程;如果父节点相同,若判断出两个DOM树中除了父节点不存在其他子树,则继续提取双方的父节点。应理解,这里是以两个DOM树为例进行描述提取公共子树的过程,本申请实施例并不对DOM的数量作限定。
下面结合图7中的DOM进行详细描述。如图7中所示,这里选取DOM树1(id=1)和DOM树2(id=2)的第一个标签为a的叶子节点进行比较,比如,DOM树1的标签为a的叶子节点和DOM树2的标签为a的叶子节点在网页中对应的内容均为“About Us”,则认为DOM树1的叶子节点a和DOM树2的叶子节点a是相同的。接着,提取id=1的DOM树中标签为a的叶子节点的父节点和id=2的DOM树中标签为a的叶子节点的父节点,判断两个父节点是否相同,如果父节点不相同,则最大子树提取结束。这里,由于DOM树1和DOM树2的标签为a的叶子节点对应的父节点相同,且还存在其他标签为a的叶子节点,因此还需要对DOM树1中的父节点和DOM树2中的父节点下的其他标签为a的叶子节点也进行比较,结果也是相同的。以此类推继续进行上层父节点的比对。在比对子树时,由于树1和树2存在内容不同的子树,比如树1中包括内容1的子树,与树2中包括内容2的子树是不同的,因此此次提取出来的一颗最大公共子树就是子树x。类似地,从其他叶子节点逆向推导,还可以提取出其他最大公共子树,比如子树y。因此,子树x与子树y构成待测试web网页的模板的DOM树。
应理解,图2、图4至图7中的例子仅仅是为了便于本领域技术人员理解本申请实施例,并非要将本申请实施例限于例示的具体场景。本领域技术人员根据图2、图4至图7的例子,显然可以进行各种等价的修改或变化,这样的修改或变化也落入本申请实施例的范围内。上文结合图1至图7详细描述了根据本申请实施例的web网页的安全性的检测方法。下面将结合图8和图9描述根据本申请实施例的web网页的安全性的检测装置。应理解,方法实施例所描述的技术特征同样适用于以下装置实施例。
图8示出了根据本申请实施例的web网页的安全性的检测装置800的示意性框图,检测装置800可用于图1中安全性检测装置120。可选地,所述装置800的具体可以通过软件和/或硬件实现,本申请实施例对此不作限定。所述装置800包括:
测试响应获取单元810和相似度计算单元820;
所述测试响应获取单元810用于:
向待测试web网页的服务器发送第一测试请求和第二测试请求,所述第一测试请求包含合法的测试参数,所述第二测试请求包含不合法的测试参数;
接收所述第一测试请求对应的第一web响应页面和所述第二测试请求对应的第二web响应页面;
所述相似度计算单元820用于:
剔除每个web响应页面中的公共部分,所述每个web响应页面中的公共部分为与所述待测试web网页中的SQL注入不相关的部分;
计算所述第一web响应页面的非公共部分与所述第二web响应页面的非公共部分的相似度,根据所述计算出来的相似度检测所述待测试web网页的SQL注入风险。
可选地,所述检测装置800还包括:公共部分获取单元公共部分获取单元830,
其中,所述公共部分获取单元公共部分获取单元830用于获取所述待测试web页面的模板的DOM树,所述待测试web页面的模板指示所述待测试web页面的公共部分;
所述相似度计算单元820用于剔除每个web响应页面中的公共部分,具体包括:
分别获取所述第一web响应页面的DOM树与所述第二web响应页面的DOM树;
根据所述公共部分获取单元公共部分获取单元830获取的所述待测试web页面的模板的DOM树,剔除所述第一web响应页面的DOM树中的子树;
根据所述待测试web页面的模板的DOM树,剔除所述第二web响应页面的DOM树中的子树。
在一种可选的实现方式中,所述相似度计算单元820用于获取所述待测试web页面的模板的DOM树,具体包括:
向所述待测试web网页的服务器发送至少两个访问请求,其中所述至少两个访问请求包含不同的访问参数;
接收至少两个访问响应页面;
根据所述至少两个访问响应页面,得到至少两个访问DOM树;
根据所述至少两个访问DOM树,获取所述web网页的模板的DOM树,所述web网页的模板的DOM树包括所述至少两个访问DOM树的公共子树。
可选地,所述相似度计算单元820用于获取所述web网页的模板的DOM树,具体包括:
逆向遍历所述至少两个访问DOM树的节点,获取所述至少两个访问DOM树的公共子树。
在一种可选的实现方式中,所述相似度计算单元820用于计算所述第一web响应页面的非公共部分与所述第二web响应页面的非公共部分的相似度,具体包括:
计算剔除子树后的所述第一web响应页面的DOM树与剔除子树后的所述第二web响应页面的DOM树的相似度。
在一种可选的实现方式中,所述相似度计算单元820用于计算所述至少两个剔除后的测试DOM树的相似度,具体包括:
渲染剔除子树后的所述第一web响应页面的DOM树与剔除子树后的所述第二web响应页面的DOM树,生成至少两个测试图像;
计算所述至少两个测试图像的图像相似度。
应理解,根据本申请实施例的web网页的安全性的检测装置800可对应于前述方法实施例中web网页的安全性的检测方法,比如,图3中的方法,并且装置800中的各个模块的上述和其它管理操作和/或功能分别为了实现前述方法实施例的方法的相应步骤,因此也可以实现前述方法实施例中的有益效果,为了简洁,这里不作赘述。
图9示出了根据本申请实施例的web网页的安全性的检测装置900的示意性结构图。如图9所示,检测装置900包括处理单元901和通信接口902,处理单元901用于执行检测装置900上运行的操作***以及各种软件程序所定义的功能,例如,上述图8中所示出的安全检测装置800上各种软件组件的功能,具体地,例如,处理单元901用于实现相似度计算单元820的功能。通信接口902用于与其他计算节点进行通信交互,通信接口902用于实现测试响应获取单元810的功能。其他计算节点可以是其它物理服务器,具体地,通信接口902可以是网络适配卡。可选地,该检测装置900还可以包括输入/输出接口903,输入/输出接口903连接有输入/输出设备,用于接收输入的信息,输出操作结果。输入/输出接口903可以为鼠标、键盘、显示器、或者光驱等。可选地,该物理服务器还可以包括辅助存储器904,一般也称为外存,辅助存储器904的存储介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如光盘)、或者半导体介质(例如固态硬盘)等。处理单元901可以有多种具体实现形式,例如处理单元901可以包括处理器9011和内存9012,处理器9011根据内存9012中存储的程序单元执行相关的操作,处理器9011可以为中央处理器(CPU)或图像处理器(graphicsprocessing unit,GPU),处理器2011可以是单核处理器或多核处理器。处理单元901也可以单独采用内置处理逻辑的逻辑器件来实现,例如现场可编程门阵列(field programmablegate array,FPGA)或数字信号处理器(digital signal processor,DSP)等。此外,图9仅仅是一个安全检测装置的一个例子,安全检测装置可能包含相比于图9展示的更多或者更少的组件,或者有不同的组件配置方式。
上述本申请实施例揭示的方法可以应用于处理器中,或者由处理器实现。处理器可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法实施例的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(FieldProgrammable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件,还可以是***芯片(system on chip,SoC),还可以是中央处理器(centralprocessor unit,CPU),还可以是网络处理器(network processor,NP),还可以是数字信号处理电路(digital signal processor,DSP),还可以是微控制器(micro controllerunit,MCU),还可以是可编程控制器(programmable logic device,PLD)或其他集成芯片。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。
可以理解,本申请实施例中的存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read-only memory,ROM)、可编程只读存储器(programmable ROM,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(random access memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(static RAM,SRAM)、动态随机存取存储器(dynamic RAM,DRAM)、同步动态随机存取存储器(synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(double data rateSDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(directrambus RAM,DR RAM)。应注意,本文描述的***和方法的存储器旨在包括但不限于这些和任意其它适合类型的存储器。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的***、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的***、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (11)
1.一种检测web网页安全性的方法,其特征在于,包括:
向待测试web网页的服务器发送第一测试请求和第二测试请求,所述第一测试请求包括合法的测试请求,所述第二测试请求包括不合法的测试请求;
接收所述第一测试请求对应的第一web响应页面和所述第二测试请求对应的第二web响应页面;
剔除每个web响应页面中的公共部分,所述每个web响应页面中的公共部分为与所述待测试web页面中的结构化查询语言SQL注入不相关的部分,包括:分别获取所述第一web响应页面的文档对象模型DOM树与所述第二web响应页面的DOM树;获取所述待测试web页面的模板的DOM树,所述待测试web页面的模板指示所述待测试web页面的公共部分;根据所述待测试web页面的模板的DOM树,剔除所述第一web响应页面的DOM树中与所述模板的DOM树相同的子树;根据待测试web页面的模板的DOM树,剔除所述第二web响应页面的DOM树中与所述模板的DOM树相同的子树;
计算所述第一web响应页面的非公共部分与所述第二web响应页面的非公共部分的相似度,根据所述计算出来的相似度检测所述待测试网页的SQL注入风险。
2.根据权利要求1所述的方法,其特征在于,所述获取所述待测试web页面的模板的DOM树,具体包括:
向所述待测试web页面的服务器发送至少两个访问请求,其中,所述至少两个访问请求包括不同的访问参数;
接收至少两个访问响应页面;
根据所述至少两个访问响应页面,得到至少两个访问DOM树;
根据所述至少两个访问DOM树,获取所述web网页的模板的DOM树,所述web网页的模板的DOM树包括所述至少两个访问DOM树的公共子树。
3.根据权利要求2所述的方法,其特征在于,所述获取所述web网页的模板的DOM树,具体包括:
逆向遍历所述至少两个访问DOM树的节点,获取所述至少两个访问DOM树的公共子树。
4.根据权利要求1-3中任一项所述的方法,其特征在于,所述计算所述第一web响应页面的非公共部分与所述第二web响应页面的非公共部分的相似度,具体包括:
计算剔除子树后的所述第一web响应页面的DOM树与剔除子树后的所述第二web响应页面的DOM树的相似度。
5.根据权利要求1-3中任一项所述的方法,其特征在于,所述计算所述至少两个剔除后的测试DOM树的相似度,具体包括:
渲染剔除子树后的所述第一web响应页面的DOM树与剔除子树后的所述第二web响应页面的DOM树,生成至少两个测试图像;
计算所述至少两个测试图像的图像相似度。
6.一种web网页的安全性的检测装置,其特征在于,所述检测装置包括测试响应获取单元、公共部分获取单元和相似度计算单元;
所述测试响应获取单元用于:
向待测试web网页的服务器发送第一测试请求和第二测试请求,所述第一测试请求包含合法的测试参数,所述第二测试请求包含不合法的测试参数;
接收所述第一测试请求对应的第一web响应页面和所述第二测试请求对应的第二web响应页面;
所述公共部分获取单元用于:
获取所述待测试web页面的模板的DOM树,所述待测试web页面的模板指示所述待测试web页面的公共部分;
所述相似度计算单元用于:
剔除每个web响应页面中的公共部分,所述每个web响应页面中的公共部分为与所述待测试web网页中的SQL注入不相关的部分,具体包括:
分别获取所述第一web响应页面的DOM树与所述第二web响应页面的DOM树;
根据所述公共部分获取单元获取的所述待测试web页面的模板的DOM树,剔除所述第一web响应页面的DOM树中与所述模板的DOM树相同的子树;
根据所述待测试web页面的模板的DOM树,剔除所述第二web响应页面的DOM树中与所述模板的DOM树相同的子树;
计算所述第一web响应页面的非公共部分与所述第二web响应页面的非公共部分的相似度,根据所述计算出来的相似度检测所述待测试web网页的SQL注入风险。
7.根据权利要求6中所述的检测装置,其特征在于,所述相似度计算单元用于获取所述待测试web页面的模板的DOM树,具体包括:
向所述待测试web网页的服务器发送至少两个访问请求,其中所述至少两个访问请求包含不同的访问参数;
接收至少两个访问响应页面;
根据所述至少两个访问响应页面,得到至少两个访问DOM树;
根据所述至少两个访问DOM树,获取所述web网页的模板的DOM树,所述web网页的模板的DOM树包括所述至少两个访问DOM树的公共子树。
8.根据权利要求7中所述的检测装置,其特征在于,所述相似度计算单元用于获取所述web网页的模板的DOM树,具体包括:
逆向遍历所述至少两个访问DOM树的节点,获取所述至少两个访问DOM树的公共子树。
9.根据权利要求6-8中任一项所述的检测装置,其特征在于,所述相似度计算单元用于计算所述第一web响应页面的非公共部分与所述第二web响应页面的非公共部分的相似度,具体包括:
计算剔除子树后的所述第一web响应页面的DOM树与剔除子树后的所述第二web响应页面的DOM树的相似度。
10.根据权利要求6-8中任一项所述的检测装置,其特征在于,所述相似度计算单元用于计算所述至少两个剔除后的测试DOM树的相似度,具体包括:
渲染剔除子树后的所述第一web响应页面的DOM树与剔除子树后的所述第二web响应页面的DOM树,生成至少两个测试图像;
计算所述至少两个测试图像的图像相似度。
11.一种计算设备,所述计算设备包括至少一台处理器和存储单元;
所述存储单元,用于存储指令;
所述处理器与所述存储单元耦合,当所述至少一台处理器执行所述指令时,所述指令致使所述处理器执行权利要求1-5中任一项所述的方法。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2018/101148 WO2020034212A1 (zh) | 2018-08-17 | 2018-08-17 | 检测web网页安全性的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112470154A CN112470154A (zh) | 2021-03-09 |
CN112470154B true CN112470154B (zh) | 2024-03-05 |
Family
ID=69524556
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201880095842.6A Active CN112470154B (zh) | 2018-08-17 | 2018-08-17 | 检测web网页安全性的方法和装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN112470154B (zh) |
WO (1) | WO2020034212A1 (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2598412A (en) | 2020-08-18 | 2022-03-02 | Clario Tech Ltd | A method for detecting a web skimmer on a "payment page" |
CN113377867B (zh) * | 2021-06-10 | 2022-10-21 | 四川省明厚天信息技术股份有限公司 | 一种数据同步方法、装置及电子设备 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102831345A (zh) * | 2012-07-30 | 2012-12-19 | 西北工业大学 | Sql注入漏洞检测中的注入点提取方法 |
CN106919503A (zh) * | 2016-11-15 | 2017-07-04 | 阿里巴巴集团控股有限公司 | 应用程序的测试方法及装置 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8510237B2 (en) * | 2011-03-15 | 2013-08-13 | Qualcomm Incorporated | Machine learning method to identify independent tasks for parallel layout in web browsers |
CN102799830B (zh) * | 2012-08-06 | 2015-06-17 | 厦门市美亚柏科信息股份有限公司 | 一种改进的sql注入漏洞检测方法 |
CN105279086B (zh) * | 2015-10-16 | 2018-01-19 | 山东大学 | 一种基于流程图的自动检测电子商务网站逻辑漏洞的方法 |
CN106503244A (zh) * | 2016-11-08 | 2017-03-15 | 天津海量信息技术股份有限公司 | 一种统一资源定位符相似度的处理方法 |
-
2018
- 2018-08-17 CN CN201880095842.6A patent/CN112470154B/zh active Active
- 2018-08-17 WO PCT/CN2018/101148 patent/WO2020034212A1/zh active Application Filing
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102831345A (zh) * | 2012-07-30 | 2012-12-19 | 西北工业大学 | Sql注入漏洞检测中的注入点提取方法 |
CN106919503A (zh) * | 2016-11-15 | 2017-07-04 | 阿里巴巴集团控股有限公司 | 应用程序的测试方法及装置 |
Non-Patent Citations (2)
Title |
---|
基于DOM树序列值比对的SQL注入漏洞检测;罗明宇;《计算机工程与设计》;第第36卷卷(第第2期期);第350-354页 * |
基于网页DOM树比对的SQL注入漏洞检测;张晨;《计算机工程》;第第38卷卷(第第18期期);第111-115页 * |
Also Published As
Publication number | Publication date |
---|---|
CN112470154A (zh) | 2021-03-09 |
WO2020034212A1 (zh) | 2020-02-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8560940B2 (en) | Detecting repeat patterns on a web page using signals | |
US20150295942A1 (en) | Method and server for performing cloud detection for malicious information | |
US20150067476A1 (en) | Title and body extraction from web page | |
JP6203374B2 (ja) | ウェブページ・スタイルアドレスの統合 | |
CN108021692B (zh) | 一种监控网页的方法、服务器及计算机可读存储介质 | |
US20090070366A1 (en) | Method and system for web document clustering | |
EP2657853A1 (en) | Webpage information detection method and system | |
CN105279277A (zh) | 知识数据的处理方法和装置 | |
CN107908959A (zh) | 网站信息检测方法、装置、电子设备及存储介质 | |
CN106021383A (zh) | 网页相似度计算方法及装置 | |
CN103942211B (zh) | 一种正文页的识别方法及装置 | |
CN112470154B (zh) | 检测web网页安全性的方法和装置 | |
CN106547895B (zh) | 一种网页信息的提取方法及装置 | |
CN109271598B (zh) | 一种抽取新闻网页内容的方法、装置及存储介质 | |
CN106874502A (zh) | 一种视频搜索的方法、装置及终端 | |
CN114528811B (zh) | 文章内容抽取方法、装置、设备及存储介质 | |
Mehta et al. | DOM tree based approach for web content extraction | |
CN107786529B (zh) | 网站的检测方法、装置及*** | |
CN111460803A (zh) | 基于工业物联网设备Web管理页面的设备识别方法 | |
CN112579937A (zh) | 一种字符的高亮显示方法及装置 | |
CN111125704B (zh) | 一种网页挂马识别方法及*** | |
CN107783983B (zh) | 信息展示方法及装置 | |
CN110598115A (zh) | 一种基于人工智能多引擎的敏感网页识别方法及*** | |
US11514241B2 (en) | Method, apparatus, and computer-readable medium for transforming a hierarchical document object model to filter non-rendered elements | |
CN105677827B (zh) | 一种表单的获取方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20220208 Address after: 550025 Huawei cloud data center, jiaoxinggong Road, Qianzhong Avenue, Gui'an New District, Guiyang City, Guizhou Province Applicant after: Huawei Cloud Computing Technologies Co.,Ltd. Address before: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen Applicant before: HUAWEI TECHNOLOGIES Co.,Ltd. |
|
TA01 | Transfer of patent application right | ||
GR01 | Patent grant | ||
GR01 | Patent grant |