CN111695075B - 一种网站cms识别方法、安全漏洞检测方法及装置 - Google Patents
一种网站cms识别方法、安全漏洞检测方法及装置 Download PDFInfo
- Publication number
- CN111695075B CN111695075B CN202010534459.5A CN202010534459A CN111695075B CN 111695075 B CN111695075 B CN 111695075B CN 202010534459 A CN202010534459 A CN 202010534459A CN 111695075 B CN111695075 B CN 111695075B
- Authority
- CN
- China
- Prior art keywords
- cms
- website
- information
- identified
- list
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/958—Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
-
- 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
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/577—Assessing vulnerabilities and evaluating computer system security
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请提供了一种网站CMS识别方法、安全漏洞检测方法及装置,该识别方法结合CMS分类模型及指纹库规则匹配算法,对待识别CMS进行识别,可以提高CMS识别的准确度。并且,CMS分类模型是基于多种特征训练得到的,使CMS分类模型训练的更充分,保证CMS分类模型进行分类的准确性,在此基础上,进一步提高最终对CMS识别的准确度。
Description
技术领域
本申请涉及信息安全技术领域,特别涉及一种网站CMS识别方法、安全漏洞检测方法及装置。
背景技术
随着互联网的逐步发展,越来越多的网站建设者选择使用CMS(内容管理***)来建设网站,因此互联网中存在着大量使用CMS搭建的网站。而,识别网站所使用的CMS,有助于网站的安全测试工作的开展。
目前,一般采用基于人工构建的特征指纹库对CMS进行识别。而,采用人工构建的特征指纹库对CMS进行识别的准确率难以达到精度要求。
发明内容
为解决上述技术问题,本申请实施例提供一种网站CMS识别方法、安全漏洞检测方法及装置,以达到提高CMS识别准确性的目的,技术方案如下:
一种网站CMS识别方法,该方法包括:
从待识别CMS的源码程序中提取第一设定类型的静态信息,将所述静态信息作为白盒特征;
从所述待识别CMS所属网站的访问信息中提取第二设定类型的动态信息,将所述动态信息作为黑盒特征;
将所述白盒特征和所述黑盒特征输入到预先训练好的CMS分类模型,得到所述CMS分类模型输出的分类结果列表,将所述分类结果列表作为第一识别结果列表,所述分类结果列表包括多个分类结果,所述CMS分类模型为预先利用基于不同类型的网站CMS,提取到的白盒特征及黑盒特征训练得到的;
基于指纹库规则匹配算法,对所述待识别CMS进行识别,得到第二识别结果;
基于所述第一识别结果列表和所述第二识别结果,对所述待识别CMS进行识别。
优选的,所述基于指纹库规则匹配算法,对所述待识别CMS进行识别,得到第二识别结果,包括:
获取表征所述待识别网站身份的信息;
判断预先构建的指纹库信息中是否存在与所述表征所述待识别网站身份的信息相匹配的CMS类型信息;
若存在,将与所述表征所述待识别网站身份的信息相匹配的CMS类型信息,作为第二识别结果。
优选的,所述基于所述第一识别结果列表和所述第二识别结果,对所述待识别CMS进行识别,包括:
确定所述第一识别结果列表中各个分类结果的决策权重及所述第二识别结果的决策权重;
在所述第一识别结果列表中各个分类结果与所述第二识别结果均不同的情况下,将所述决策权重中最大值对应的结果,作为所述待识别CMS的识别结果;
在所述第一识别结果列表中各个分类结果中存在与所述第二识别结果相同的分类结果的情况下,将所述第一识别结果列表中与所述第二识别结果相同的分类结果的决策权重与所述第二识别结果的决策权重相加,将相加后的决策权重作为目标决策权重;
将所述目标决策权重及所述第一识别结果列表中与所述第二识别结果不同的分类结果的决策权重中最大值对应的结果,作为所述待识别CMS的识别结果。
优选的,所述第一设定类型的静态信息,包括:
目标路径树和静态资源列表;
所述从所述待识别CMS所属网站的访问信息中提取第二设定类型的动态信息,将所述动态信息作为黑盒特征,包括:
从所述待识别CMS所属网站的访问信息中提取HTTP返回头内容、HTTP内容关键字和爬虫协议文件内容;
基于所述目标路径树,从所述待识别CMS所属网站的访问信息中提取路径特征,所述路径特征为第一URL的个数,所述第一URL为基于所述目录路径树生成的,且基于所述第一URL能成功访问所述待识别网站;
基于所述静态资源列表,从所述待识别CMS所属网站的访问信息中提取静态资源加载特征,所述静态资源加载特征为所述待识别CMS所属网站的访问信息中静态资源日志中与所述静态资源列表中相同的静态资源的个数;
将所述HTTP返回头内容、所述HTTP内容关键字、所述爬虫协议文件内容、所述路径特征及所述静态资源加载特征,作为黑盒特征。
一种网站CMS的安全漏洞检测方法,包括:
从待识别CMS的源码程序中提取第一设定类型的静态信息,将所述静态信息作为白盒特征;
基于所述白盒特征,从所述待识别CMS所属网站的访问信息中提取第二设定类型的动态信息,将所述动态信息作为黑盒特征;
将所述白盒特征和所述黑盒特征输入到预先训练好的CMS分类模型,得到所述CMS分类模型输出的分类结果列表,将所述分类结果列表作为第一识别结果列表,所述分类结果列表包括多个分类结果,所述CMS分类模型为预先利用基于不同类型的网站CMS,提取到的白盒特征及黑盒特征训练得到的;
基于指纹库规则匹配算法,对所述待识别CMS进行识别,得到第二识别结果;
基于所述第一识别结果列表和所述第二识别结果,对所述待识别CMS进行识别;
基于对所述待识别CMS进行识别的结果,获取网站资产信息;
基于所述网站资产信息与预先设定的漏洞数据库,对所述待识别CMS进行安全漏洞检测。
一种网站CMS识别装置,包括:
第一提取模块,用于从待识别CMS的源码程序中提取第一设定类型的静态信息,将所述静态信息作为白盒特征;
第二提取模块,用于从所述待识别CMS所属网站的访问信息中提取第二设定类型的动态信息,将所述动态信息作为黑盒特征;
第一识别模块,用于将所述白盒特征和所述黑盒特征输入到预先训练好的CMS分类模型,得到所述CMS分类模型输出的分类结果列表,将所述分类结果列表作为第一识别结果列表,所述分类结果列表包括多个分类结果,所述CMS分类模型为预先利用基于不同类型的网站CMS,提取到的白盒特征及黑盒特征训练得到的;
第二识别模块,用于基于指纹库规则匹配算法,对所述待识别CMS进行识别,得到第二识别结果;
第三识别模块,用于基于所述第一识别结果列表和所述第二识别结果,对所述待识别CMS进行识别。
优选的,所述第二识别模块,具体用于:
获取表征所述待识别网站身份的信息;
判断预先构建的指纹库信息中是否存在与所述表征所述待识别网站身份的信息相匹配的CMS类型信息;
若存在,将与所述表征所述待识别网站身份的信息相匹配的CMS类型信息,作为第二识别结果。
优选的,所述第三识别模块,具体用于:
确定所述第一识别结果列表中各个分类结果的决策权重及所述第二识别结果的决策权重;
在所述第一识别结果列表中各个分类结果与所述第二识别结果均不同的情况下,将所述决策权重中最大值对应的结果,作为所述待识别CMS的识别结果;
在所述第一识别结果列表中各个分类结果中存在与所述第二识别结果相同的分类结果的情况下,将所述第一识别结果列表中与所述第二识别结果相同的分类结果的决策权重与所述第二识别结果的决策权重相加,将相加后的决策权重作为目标决策权重;
将所述目标决策权重及所述第一识别结果列表中与所述第二识别结果不同的分类结果的决策权重中最大值对应的结果,作为所述待识别CMS的识别结果。
优选的,所述第一设定类型的静态信息,包括:
目标路径树和静态资源列表;
所述第二提取模块,具体用于:
从所述待识别CMS所属网站的访问信息中提取HTTP返回头内容、HTTP内容关键字和爬虫协议文件内容;
基于所述目标路径树,从所述待识别CMS所属网站的访问信息中提取路径特征,所述路径特征为第一URL的个数,所述第一URL为基于所述目录路径树生成的,且基于所述第一URL能成功访问所述待识别网站;
基于所述静态资源列表,从所述待识别CMS所属网站的访问信息中提取静态资源加载特征,所述静态资源加载特征为所述待识别CMS所属网站的访问信息中静态资源日志中与所述静态资源列表中相同的静态资源的个数;
将所述HTTP返回头内容、所述HTTP内容关键字、所述爬虫协议文件内容、所述路径特征及所述静态资源加载特征,作为黑盒特征。
一种网站CMS的安全漏洞检测装置,包括:
第一提取模块,用于从待识别CMS的源码程序中提取第一设定类型的静态信息,将所述静态信息作为白盒特征;
第二提取模块,用于从所述待识别CMS所属网站的访问信息中提取第二设定类型的动态信息,将所述动态信息作为黑盒特征;
第一识别模块,用于将所述白盒特征和所述黑盒特征输入到预先训练好的CMS分类模型,得到所述CMS分类模型输出的分类结果列表,将所述分类结果列表作为第一识别结果列表,所述分类结果列表包括多个分类结果,所述CMS分类模型为预先利用基于不同类型的网站CMS,提取到的白盒特征及黑盒特征训练得到的;
第二识别模块,用于基于指纹库规则匹配算法,对所述待识别CMS进行识别,得到第二识别结果;
第三识别模块,用于基于所述第一识别结果列表和所述第二识别结果,对所述待识别CMS进行识别;
获取模块,用于基于对所述待识别CMS进行识别的结果,获取网站资产信息;
检测模块,用于基于所述网站资产信息与预先设定的漏洞数据库,对所述待识别CMS进行安全漏洞检测。
与现有技术相比,本申请的有益效果为:
在本申请中,结合CMS分类模型及指纹库规则匹配算法,对待识别CMS进行识别,可以提高CMS识别的准确度。
并且,CMS分类模型是基于多种特征(即,白盒特征和黑盒特征)训练得到的,使CMS分类模型训练的更充分,保证CMS分类模型进行分类的准确性,在此基础上,进一步提高最终对CMS识别的准确度。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例1提供的一种网站CMS识别方法的流程图;
图2是本申请实施例2提供的一种网站CMS识别方法的流程图;
图3是本申请提供的一种确定识别结果的具体场景示意图;
图4是本申请实施例3提供的一种网站CMS识别方法的流程图;
图5是本申请提供的一种网站CMS的安全漏洞检测方法的流程图;
图6是本申请提供的一种网站CMS识别装置的逻辑结构示意图;
图7是本申请提供的一种网站CMS的安全漏洞检测装置的逻辑结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
参照图1,为本申请实施例1提供的一种网站CMS识别方法的流程图,如图1所示,该方法可以包括但并不局限于以下步骤:
步骤S11、从待识别CMS的源码程序中提取第一设定类型的静态信息,将所述静态信息作为白盒特征。
第一设定类型可以根据需要进行设置,在本实施例中不做限制。
静态信息,可以理解为:从待识别CMS的源码程序中能确定的不会发生变化的信息,如,静态目录路径。
步骤S12、从所述待识别CMS所属网站的访问信息中提取第二设定类型的动态信息,将所述动态信息作为黑盒特征。
第二设定类型可以根据需要进行设置,在本实施例中不做限制。
动态信息,可以理解为:随着待识别网站的访问,可能会发生变化的信息,如,HTTP信息。
本实施例中,可以使用Python的异步分布式框架Celery,以分布式异步的方式提取不同待识别CMS所对应的黑盒特征。Celery的工作模式是一个负责管理的Master进程和多个负责具体执行任务的Worker进程。Master进程监听任务列表是否有新的任务进行提交,如果存在新的提交任务,则会创建Worker进程执行具体任务内容,且每个Worker进程间独立。本实施例中,对每个提交的待识别CMS所属网站,均会创建Worker进程独立执行Selenium,以启动一个浏览器内核驱动模拟用户的正常访问行为,并采集访问期间的特征信息,实现特征提取效率的大幅度提升。
步骤S13、将所述白盒特征和所述黑盒特征输入到预先训练好的CMS分类模型,得到所述CMS分类模型输出的分类结果列表,将所述分类结果列表作为第一识别结果列表。
所述分类结果列表包括多个分类结果,所述CMS分类模型为预先利用基于不同类型的网站CMS,提取到的白盒特征及黑盒特征训练得到的。
基于不同类型的网站CMS,提取到的白盒特征的提取过程,可以包括:
分别从不同类型的网站CMS所属的待识别CMS的源码程序中提取第一设定类型的静态信息,将提取到的静态信息作为白盒特征。
基于不同类型的网站CMS,提取到的黑盒特征的提取过程,可以包括:
分别从不同类型的网站CMS所属的待识别CMS的源码程序中提取第二设定类型的动态信息,将提取到的动态信息作为黑盒特征。
本实施例中,CMS分类模型可以为但不局限于:MLP多层感知机二分类模型。
步骤S14、基于指纹库规则匹配算法,对所述待识别CMS进行识别,得到第二识别结果。
本实施例中,所述基于指纹库规则匹配算法,对所述待识别CMS进行识别,得到第二识别结果的过程,可以包括:
S141、获取表征所述待识别网站身份的信息。
表征所述待识别网站身份的信息可以包括但不局限于:通过Selenium获得的待识别网站的特殊文件md5值、响应主体内容或头信息的关键字或URL关键字。
S142、判断预先构建的指纹库中是否存在与所述表征所述待识别网站身份的信息相匹配的CMS类型信息。
预先构建的指纹库中至少包含表征网站身份的特征信息及网站的CMS类型信息的映射关系。
若存在,则执行步骤S143。
S143、将与所述表征所述待识别网站身份的信息相匹配的CMS类型信息,作为第二识别结果。
步骤S15、基于所述第一识别结果列表和所述第二识别结果,对所述待识别CMS进行识别。
本实施例中,基于所述第一识别结果列表和所述第二识别结果,对所述待识别CMS进行识别,相比于基于第一识别结果列表或第二识别结果,对所述待识别CMS进行识别,准确率高。
在本申请中,结合CMS分类模型及指纹库规则匹配算法,对待识别CMS进行识别,可以提高CMS识别的准确度。
并且,CMS分类模型是基于多种特征(即,白盒特征和黑盒特征)训练得到的,使CMS分类模型训练的更充分,保证CMS分类模型进行分类的准确性,在此基础上,进一步提高最终对CMS识别的准确度。
作为本申请另一可选实施例,参照图2,为本申请实施例2提供的一种网站CMS识别方法的流程图,本实施例主要是对上述实施例1描述的网站CMS识别方法的细化方案,如图2所示,该方法可以包括但并不局限于以下步骤:
步骤S21、从待识别CMS的源码程序中提取第一设定类型的静态信息,将所述静态信息作为白盒特征。
步骤S22、从所述待识别CMS所属网站的访问信息中提取第二设定类型的动态信息,将所述动态信息作为黑盒特征;
步骤S23、将所述白盒特征和所述黑盒特征输入到预先训练好的CMS分类模型,得到所述CMS分类模型输出的分类结果列表,将所述分类结果列表作为第一识别结果列表。
所述分类结果列表包括多个分类结果,所述CMS分类模型为预先利用基于不同类型的网站CMS,提取到的白盒特征及黑盒特征训练得到的。
步骤S24、基于指纹库规则匹配算法,对所述待识别CMS进行识别,得到第二识别结果。
步骤S21-S24的详细过程可以参见实施例1中步骤S11-S14的相关介绍,在此不再赘述。
步骤S25、确定所述第一识别结果列表中各个分类结果的决策权重及所述第二识别结果的决策权重。
本实施例中,可以例如如下关系式,确定第一识别结果列表中各个分类结果的决策权重:
其中,w表示CMS分类模型的初始权重,accuracya表示CMS分类模型的准确率,W表示第一识别结果列表中各个分类结果的决策权重。
第二识别结果的决策权重可以根据需要进行设置。
步骤S26、在所述第一识别结果列表中各个分类结果与所述第二识别结果均不同的情况下,将所述决策权重中最大值对应的结果,作为所述待识别CMS的识别结果。
步骤S27、在所述第一识别结果列表中各个分类结果中存在与所述第二识别结果相同的分类结果的情况下,将所述第一识别结果列表中与所述第二识别结果相同的分类结果的决策权重与所述第二识别结果的决策权重相加,将相加后的决策权重作为目标决策权重。
步骤S28、将所述目标决策权重及所述第一识别结果列表中与所述第二识别结果不同的分类结果的决策权重中最大值对应的结果,作为所述待识别CMS的识别结果。
现举例对步骤S27-S28进行说明,例如,如图3所示,MLP多层感知机二分类模型得到多个分类结果,分别为CMS-A、CMS-B、CMS-C,基于指纹库规则匹配算法,得到的第二识别结果为CMS-A,将两个CMS-A的决策权重相加,得到目标决策权重,并比较目标决策权重、CMS-B的决策权重及CMS-C的决策权重,比较结果为目标决策权重最大,则将CMS-A作为待识别CMS的识别结果。
步骤S25-S28为实施例1中步骤S15的一种具体实施方式。
作为本申请另一可选实施例,参照图4,为本申请实施例3提供的一种网站CMS识别方法的流程图,本实施例主要是对上述实施例1描述的网站CMS识别方法的细化方案,如图4所示,该方法可以包括但并不局限于以下步骤:
步骤S31、从待识别CMS的源码程序中提取目标路径树和静态资源列表,将所述目标路径树和所述静态资源列表作为白盒特征。
从待识别CMS的源码程序中提取目标路径树的过程,可以包括:在获得待识别CMS的源码程序的基础上,通过深度优先遍历算法递归地对待识别CMS的源码程序中的CMS目录进行扫描遍历,并按照目录深度进行逐层编号存储,最终生成目标路径树。
其中,遍历过程中对CMS目录下的文件进行哈希操作并存放哈希信息。并利用Python的pickle库对目标路径树及目标路径树下的文件进行序列化操作,得到序列化文件并存储到***,以便后续对目标路径树及目标路径树下的文件随时进行查询调用。
对目标路径树及目标路径树下的文件行序列化操作,可以理解为:对目标路径树及目标路径树下的文件转换为二进制数据流。
从待识别CMS的源码程序中提取目标路径树和静态资源列表的过程,可以包括:
从待识别CMS的源码程序中获取所有CMS源码文件;
对获取的所有CMS源码文件进行扫描遍历,得到包含所有文件的后缀的列表;
将包含所有文件的后缀的列表中的后缀去重,并去除以php、html等后缀,得到新的后缀列表;
对上述序列化文件进行反序列化操作,得到目标路径树下的文件;
从目标路径树下的文件中提取新的后缀列表中各个后缀所对应的静态资源,将提取出的静态资源组成静态资源列表。
步骤S31为实施例1中步骤S11的一种具体实施方式。
步骤S32、从所述待识别CMS所属网站的访问信息中提取HTTP返回头内容、HTTP内容关键字和爬虫协议文件内容。
步骤S33、基于所述目标路径树,从所述待识别CMS所属网站的访问信息中提取路径特征,所述路径特征为第一URL的个数,所述第一URL为基于所述目录路径树生成的,且基于所述第一URL能成功访问所述待识别网站。
步骤S34、基于所述静态资源列表,从所述待识别CMS所属网站的访问信息中提取静态资源加载特征,所述静态资源加载特征为所述待识别CMS所属网站的访问信息中静态资源日志中与所述静态资源列表中相同的静态资源的个数。
步骤S35、将所述HTTP返回头内容、所述HTTP内容关键字、所述爬虫协议文件内容、所述路径特征及所述静态资源加载特征,作为黑盒特征。
步骤S32-S35为实施例1中步骤S12的一种具体实施方式。
步骤S36、将所述白盒特征和所述黑盒特征输入到预先训练好的CMS分类模型,得到所述CMS分类模型输出的分类结果列表,将所述分类结果列表作为第一识别结果列表。
所述分类结果列表包括多个分类结果,所述CMS分类模型为预先利用基于不同类型的网站CMS,提取到的白盒特征及黑盒特征训练得到的。
步骤S37、基于指纹库规则匹配算法,对所述待识别CMS进行识别,得到第二识别结果。
步骤S38、基于所述第一识别结果列表和所述第二识别结果,对所述待识别CMS进行识别。
步骤S36-S38的详细过程可以参见实施例1中步骤S13-S15的相关介绍,在此不再赘述。
在本申请的另一个实施例中,提供一种网站CMS的安全漏洞检测方法,请参见图5,该方法可以包括以下步骤:
步骤S41、从待识别CMS的源码程序中提取第一设定类型的静态信息,将所述静态信息作为白盒特征;
步骤S42、基于所述白盒特征,从所述待识别CMS所属网站的访问信息中提取第二设定类型的动态信息,将所述动态信息作为黑盒特征;
步骤S43、将所述白盒特征和所述黑盒特征输入到预先训练好的CMS分类模型,得到所述CMS分类模型输出的分类结果列表,将所述分类结果列表作为第一识别结果列表,所述分类结果列表包括多个分类结果,所述CMS分类模型为预先利用基于不同类型的网站CMS,提取到的白盒特征及黑盒特征训练得到的;
步骤S44、基于指纹库规则匹配算法,对所述待识别CMS进行识别,得到第二识别结果;
步骤S45、基于所述第一识别结果列表和所述第二识别结果,对所述待识别CMS进行识别。
步骤S41-S45的详细过程可以参见实施例1中步骤S11-S15的相关介绍,在此不再赘述。
步骤S46、基于对所述待识别CMS进行识别的结果,获取网站资产信息。
网站资产信息可以包括但不局限于:中间件信息、CDN信息、IP段信息及操作***信息。
步骤S47、基于所述网站资产信息与预先设定的漏洞数据库,对所述待识别CMS进行安全漏洞检测。
基于所述网站资产信息与预先设定的漏洞数据库,对所述待识别CMS进行用户交互式的安全漏洞检测。
基于所述网站资产信息与预先设定的漏洞数据库,对所述待识别CMS进行用户交互式的安全漏洞检测,可以理解为:
通过Web页面内容将网站资产信息进行展示,基于ttyd提供的支持Web端交互的漏洞自助检测功能(该漏洞自助检测功能中包含预先设定的漏洞数据库),对待识别CMS进行安全漏洞检测。
ttyd可以理解为:一个能够将命令行终端通过Web服务投射在浏览器的工具,其拥有如下特性:
1.基于C的Libwebsockets库开发,拥有高性能;
2.基于Xterm.js全功能终端,支持CJK和IME;
3.基于OpenSSL以支持SSL;
4.可以使用选项运行任何命令;
5.支持权限验证和其他定制化选项;
6.跨平台兼容:macOS、Linux、FreeBSD/OpenBSD、OpenWrt/LEDE和Windows。
通过上述Web端形式的漏洞自助检测,有助于从网站资产信息的获取到利用信息进行安全漏洞检测的平滑过渡,提高安全维护者操作便利性和体验度。
在本申请中,结合CMS分类模型及指纹库规则匹配算法,对待识别CMS进行识别,可以提高CMS识别的准确度。并且,CMS分类模型是基于多种特征(即,白盒特征和黑盒特征)训练得到的,使CMS分类模型训练的更充分,保证CMS分类模型进行分类的准确性,在此基础上,进一步提高最终对CMS识别的准确度。
在提高CMS识别结果的准确度的基础上,基于对所述待识别CMS进行识别的结果,获取网站资产信息,可以提高网站资产信息获取的准确性,进而可以提高对CMS进行安全漏洞检测的准确性。
接下来对本申请提供的网站CMS识别装置进行介绍,下文介绍的网站CMS识别装置与上文介绍的网站CMS识别方法可相互对应参照。
请参见图6,网站CMS识别装置包括:第一提取模块11、第二提取模块12、第一识别模块13、第二识别模块14和第三识别模块15。
第一提取模块11,用于从待识别CMS的源码程序中提取第一设定类型的静态信息,将所述静态信息作为白盒特征。
第二提取模块12,用于从所述待识别CMS所属网站的访问信息中提取第二设定类型的动态信息,将所述动态信息作为黑盒特征。
第一识别模块13,用于将所述白盒特征和所述黑盒特征输入到预先训练好的CMS分类模型,得到所述CMS分类模型输出的分类结果列表,将所述分类结果列表作为第一识别结果列表,所述分类结果列表包括多个分类结果,所述CMS分类模型为预先利用基于不同类型的网站CMS,提取到的白盒特征及黑盒特征训练得到的。
第二识别模块14,用于基于指纹库规则匹配算法,对所述待识别CMS进行识别,得到第二识别结果.
第三识别模块15,用于基于所述第一识别结果列表和所述第二识别结果,对所述待识别CMS进行识别。
本实施例中,所述第二识别模块14,具体可以用于:
获取表征所述待识别网站身份的信息;
判断预先构建的指纹库信息中是否存在与所述表征所述待识别网站身份的信息相匹配的CMS类型信息;
若存在,将与所述表征所述待识别网站身份的信息相匹配的CMS类型信息,作为第二识别结果。
所述第三识别模块15,具体可以用于:
确定所述第一识别结果列表中各个分类结果的决策权重及所述第二识别结果的决策权重;
在所述第一识别结果列表中各个分类结果与所述第二识别结果均不同的情况下,将所述决策权重中最大值对应的结果,作为所述待识别CMS的识别结果;
在所述第一识别结果列表中各个分类结果中存在与所述第二识别结果相同的分类结果的情况下,将所述第一识别结果列表中与所述第二识别结果相同的分类结果的决策权重与所述第二识别结果的决策权重相加,将相加后的决策权重作为目标决策权重;
将所述目标决策权重及所述第一识别结果列表中与所述第二识别结果不同的分类结果的决策权重中最大值对应的结果,作为所述待识别CMS的识别结果。
本实施例中,所述第一设定类型的静态信息,可以包括:
目标路径树和静态资源列表;
所述第二提取模块12,具体可以用于:
从所述待识别CMS所属网站的访问信息中提取HTTP返回头内容、HTTP内容关键字和爬虫协议文件内容;
基于所述目标路径树,从所述待识别CMS所属网站的访问信息中提取路径特征,所述路径特征为第一URL的个数,所述第一URL为基于所述目录路径树生成的,且基于所述第一URL能成功访问所述待识别网站;
基于所述静态资源列表,从所述待识别CMS所属网站的访问信息中提取静态资源加载特征,所述静态资源加载特征为所述待识别CMS所属网站的访问信息中静态资源日志中与所述静态资源列表中相同的静态资源的个数;
将所述HTTP返回头内容、所述HTTP内容关键字、所述爬虫协议文件内容、所述路径特征及所述静态资源加载特征,作为黑盒特征。
接下来对本申请提供的网站CMS的安全漏洞检测装置进行介绍,下文介绍的网站CMS的安全漏洞检测装置与上文介绍的网站CMS的安全漏洞检测方法可相互参照。
请参见图7,网站CMS的安全漏洞检测装置包括:第一提取模块21、第二提取模块22、第一识别模块23、第二识别模块24、第三识别模块25、获取模块26和检测模块27。
第一提取模块21,用于从待识别CMS的源码程序中提取第一设定类型的静态信息,将所述静态信息作为白盒特征。
第二提取模块22,用于从所述待识别CMS所属网站的访问信息中提取第二设定类型的动态信息,将所述动态信息作为黑盒特征。
第一识别模块23,用于将所述白盒特征和所述黑盒特征输入到预先训练好的CMS分类模型,得到所述CMS分类模型输出的分类结果列表,将所述分类结果列表作为第一识别结果列表,所述分类结果列表包括多个分类结果,所述CMS分类模型为预先利用基于不同类型的网站CMS,提取到的白盒特征及黑盒特征训练得到的。
第二识别模块24,用于基于指纹库规则匹配算法,对所述待识别CMS进行识别,得到第二识别结果。
第三识别模块25,用于基于所述第一识别结果列表和所述第二识别结果,对所述待识别CMS进行识别。
第一提取模块21、第二提取模块22、第一识别模块23、第二识别模块24和第三识别模块25可以参见上述第一提取模块11、第二提取模块12、第一识别模块13、第二识别模块14和第三识别模块15的相关介绍,在此不再赘述。
获取模块26,用于基于对所述待识别CMS进行识别的结果,获取网站资产信息;
检测模块27,用于基于所述网站资产信息与预先设定的漏洞数据库,对所述待识别CMS进行安全漏洞检测。
需要说明的是,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例或者实施例的某些部分所述的方法。
以上对本申请所提供的一种webshell脚本检测方法及装置进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (8)
1.一种网站CMS 识别方法,其特征在于,该方法包括:
从待识别CMS的源码程序中提取第一设定类型的静态信息,将所述静态信息作为白盒特征,所述第一设定类型的静态信息,包括:目标路径树和静态资源列表;
从所述待识别CMS所属网站的访问信息中提取第二设定类型的动态信息,将所述动态信息作为黑盒特征;所述从所述待识别CMS所属网站的访问信息中提取第二设定类型的动态信息,将所述动态信息作为黑盒特征,包括:从所述待识别CMS所属网站的访问信息中提取HTTP返回头内容、HTTP内容关键字和爬虫协议文件内容;基于所述目标路径树,从所述待识别CMS所属网站的访问信息中提取路径特征,所述路径特征为第一URL的个数,所述第一URL为基于所述目标路径树生成的,且基于所述第一URL能成功访问所述待识别CMS所属网站;基于所述静态资源列表,从所述待识别CMS所属网站的访问信息中提取静态资源加载特征,所述静态资源加载特征为所述待识别CMS所属网站的访问信息中静态资源日志中与所述静态资源列表中相同的静态资源的个数;将所述HTTP返回头内容、所述HTTP内容关键字、所述爬虫协议文件内容、所述路径特征及所述静态资源加载特征,作为黑盒特征;
将所述白盒特征和所述黑盒特征输入到预先训练好的CMS分类模型,得到所述CMS分类模型输出的分类结果列表,将所述分类结果列表作为第一识别结果列表,所述分类结果列表包括多个分类结果,所述CMS分类模型为预先利用基于不同类型的网站CMS,提取到的白盒特征及黑盒特征训练得到的;
基于指纹库规则匹配算法,对所述待识别CMS进行识别,得到第二识别结果;
基于所述第一识别结果列表和所述第二识别结果,对所述待识别CMS进行识别。
2.根据权利要求1所述的方法,其特征在于,所述基于指纹库规则匹配算法,对所述待识别CMS进行识别,得到第二识别结果,包括:
获取表征所述待识别CMS所属网站身份的信息;
判断预先构建的指纹库信息中是否存在与所述表征所述待识别CMS所属网站身份的信息相匹配的CMS类型信息;
若存在,将与所述表征所述待识别CMS所属网站身份的信息相匹配的CMS类型信息,作为第二识别结果。
3.根据权利要求1所述的方法,其特征在于,所述基于所述第一识别结果列表和所述第二识别结果,对所述待识别CMS进行识别,包括:
确定所述第一识别结果列表中各个分类结果的决策权重及所述第二识别结果的决策权重;
在所述第一识别结果列表中各个分类结果与所述第二识别结果均不同的情况下,将所述决策权重中最大值对应的结果,作为所述待识别CMS的识别结果;
在所述第一识别结果列表中各个分类结果中存在与所述第二识别结果相同的分类结果的情况下,将所述第一识别结果列表中与所述第二识别结果相同的分类结果的决策权重与所述第二识别结果的决策权重相加,将相加后的决策权重作为目标决策权重;
将所述目标决策权重及所述第一识别结果列表中与所述第二识别结果不同的分类结果的决策权重中最大值对应的结果,作为所述待识别CMS的识别结果。
4.一种网站CMS的安全漏洞检测方法,其特征在于,包括:
从待识别CMS的源码程序中提取第一设定类型的静态信息,将所述静态信息作为白盒特征,所述第一设定类型的静态信息,包括:目标路径树和静态资源列表;
基于所述白盒特征,从所述待识别CMS所属网站的访问信息中提取第二设定类型的动态信息,将所述动态信息作为黑盒特征;所述从所述待识别CMS所属网站的访问信息中提取第二设定类型的动态信息,将所述动态信息作为黑盒特征,包括:从所述待识别CMS所属网站的访问信息中提取HTTP返回头内容、HTTP内容关键字和爬虫协议文件内容;基于所述目标路径树,从所述待识别CMS所属网站的访问信息中提取路径特征,所述路径特征为第一URL的个数,所述第一URL为基于所述目标路径树生成的,且基于所述第一URL能成功访问所述待识别CMS所属网站;基于所述静态资源列表,从所述待识别CMS所属网站的访问信息中提取静态资源加载特征,所述静态资源加载特征为所述待识别CMS所属网站的访问信息中静态资源日志中与所述静态资源列表中相同的静态资源的个数;将所述HTTP返回头内容、所述HTTP内容关键字、所述爬虫协议文件内容、所述路径特征及所述静态资源加载特征,作为黑盒特征;
将所述白盒特征和所述黑盒特征输入到预先训练好的CMS分类模型,得到所述CMS分类模型输出的分类结果列表,将所述分类结果列表作为第一识别结果列表,所述分类结果列表包括多个分类结果,所述CMS分类模型为预先利用基于不同类型的网站CMS,提取到的白盒特征及黑盒特征训练得到的;
基于指纹库规则匹配算法,对所述待识别CMS进行识别,得到第二识别结果;
基于所述第一识别结果列表和所述第二识别结果,对所述待识别CMS进行识别;
基于对所述待识别CMS进行识别的结果,获取网站资产信息;
基于所述网站资产信息与预先设定的漏洞数据库,对所述待识别CMS进行安全漏洞检测。
5.一种网站CMS识别装置,其特征在于,包括:
第一提取模块,用于从待识别CMS的源码程序中提取第一设定类型的静态信息,将所述静态信息作为白盒特征,所述第一设定类型的静态信息,包括:目标路径树和静态资源列表;
第二提取模块,用于从所述待识别CMS所属网站的访问信息中提取第二设定类型的动态信息,将所述动态信息作为黑盒特征;所述第二提取模块,具体用于:从所述待识别CMS所属网站的访问信息中提取HTTP返回头内容、HTTP内容关键字和爬虫协议文件内容;基于所述目标路径树,从所述待识别CMS所属网站的访问信息中提取路径特征,所述路径特征为第一URL的个数,所述第一URL为基于所述目标路径树生成的,且基于所述第一URL能成功访问所述待识别CMS所属网站;基于所述静态资源列表,从所述待识别CMS所属网站的访问信息中提取静态资源加载特征,所述静态资源加载特征为所述待识别CMS所属网站的访问信息中静态资源日志中与所述静态资源列表中相同的静态资源的个数;将所述HTTP返回头内容、所述HTTP内容关键字、所述爬虫协议文件内容、所述路径特征及所述静态资源加载特征,作为黑盒特征;
第一识别模块,用于将所述白盒特征和所述黑盒特征输入到预先训练好的CMS分类模型,得到所述CMS分类模型输出的分类结果列表,将所述分类结果列表作为第一识别结果列表,所述分类结果列表包括多个分类结果,所述CMS分类模型为预先利用基于不同类型的网站CMS,提取到的白盒特征及黑盒特征训练得到的;
第二识别模块,用于基于指纹库规则匹配算法,对所述待识别CMS进行识别,得到第二识别结果;
第三识别模块,用于基于所述第一识别结果列表和所述第二识别结果,对所述待识别CMS进行识别。
6.根据权利要求5所述的装置,其特征在于,所述第二识别模块,具体用于:
获取表征所述待识别CMS所属网站身份的信息;
判断预先构建的指纹库信息中是否存在与所述表征所述待识别CMS所属网站身份的信息相匹配的CMS类型信息;
若存在,将与所述表征所述待识别CMS所属网站身份的信息相匹配的CMS类型信息,作为第二识别结果。
7.根据权利要求5所述的装置,其特征在于,所述第三识别模块,具体用于:
确定所述第一识别结果列表中各个分类结果的决策权重及所述第二识别结果的决策权重;
在所述第一识别结果列表中各个分类结果与所述第二识别结果均不同的情况下,将所述决策权重中最大值对应的结果,作为所述待识别CMS的识别结果;
在所述第一识别结果列表中各个分类结果中存在与所述第二识别结果相同的分类结果的情况下,将所述第一识别结果列表中与所述第二识别结果相同的分类结果的决策权重与所述第二识别结果的决策权重相加,将相加后的决策权重作为目标决策权重;
将所述目标决策权重及所述第一识别结果列表中与所述第二识别结果不同的分类结果的决策权重中最大值对应的结果,作为所述待识别CMS的识别结果。
8.一种网站CMS的安全漏洞检测装置,其特征在于,包括:
第一提取模块,用于从待识别CMS的源码程序中提取第一设定类型的静态信息,将所述静态信息作为白盒特征,所述第一设定类型的静态信息,包括:目标路径树和静态资源列表;
第二提取模块,用于从所述待识别CMS所属网站的访问信息中提取第二设定类型的动态信息,将所述动态信息作为黑盒特征;所述第二提取模块,具体用于:从所述待识别CMS所属网站的访问信息中提取HTTP返回头内容、HTTP内容关键字和爬虫协议文件内容;基于所述目标路径树,从所述待识别CMS所属网站的访问信息中提取路径特征,所述路径特征为第一URL的个数,所述第一URL为基于所述目标路径树生成的,且基于所述第一URL能成功访问所述待识别CMS所属网站;基于所述静态资源列表,从所述待识别CMS所属网站的访问信息中提取静态资源加载特征,所述静态资源加载特征为所述待识别CMS所属网站的访问信息中静态资源日志中与所述静态资源列表中相同的静态资源的个数;将所述HTTP返回头内容、所述HTTP内容关键字、所述爬虫协议文件内容、所述路径特征及所述静态资源加载特征,作为黑盒特征;
第一识别模块,用于将所述白盒特征和所述黑盒特征输入到预先训练好的CMS分类模型,得到所述CMS分类模型输出的分类结果列表,将所述分类结果列表作为第一识别结果列表,所述分类结果列表包括多个分类结果,所述CMS分类模型为预先利用基于不同类型的网站CMS,提取到的白盒特征及黑盒特征训练得到的;
第二识别模块,用于基于指纹库规则匹配算法,对所述待识别CMS进行识别,得到第二识别结果;
第三识别模块,用于基于所述第一识别结果列表和所述第二识别结果,对所述待识别CMS进行识别;
获取模块,用于基于对所述待识别CMS进行识别的结果,获取网站资产信息;
检测模块,用于基于所述网站资产信息与预先设定的漏洞数据库,对所述待识别CMS进行安全漏洞检测。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010534459.5A CN111695075B (zh) | 2020-06-12 | 2020-06-12 | 一种网站cms识别方法、安全漏洞检测方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010534459.5A CN111695075B (zh) | 2020-06-12 | 2020-06-12 | 一种网站cms识别方法、安全漏洞检测方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111695075A CN111695075A (zh) | 2020-09-22 |
CN111695075B true CN111695075B (zh) | 2023-04-18 |
Family
ID=72480762
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010534459.5A Active CN111695075B (zh) | 2020-06-12 | 2020-06-12 | 一种网站cms识别方法、安全漏洞检测方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111695075B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113420818A (zh) * | 2021-06-27 | 2021-09-21 | 杭州迪普科技股份有限公司 | 内容管理***识别方法及装置 |
CN115277396B (zh) * | 2022-08-04 | 2024-03-26 | 北京智慧星光信息技术有限公司 | 一种用于模拟浏览器操作的消息驱动方法和*** |
CN116991978B (zh) * | 2023-09-26 | 2024-01-02 | 杭州今元标矩科技有限公司 | 一种cms碎片特征提取方法、***、电子设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9032531B1 (en) * | 2012-06-28 | 2015-05-12 | Middlegate, Inc. | Identification breach detection |
CN109886022A (zh) * | 2019-02-20 | 2019-06-14 | 北京丁牛科技有限公司 | Cms类型识别方法及装置 |
CN110825941A (zh) * | 2019-10-17 | 2020-02-21 | 北京天融信网络安全技术有限公司 | 一种内容管理***识别方法、装置和存储介质 |
CN111177618A (zh) * | 2019-12-17 | 2020-05-19 | 腾讯科技(深圳)有限公司 | 网站搭建方法、装置、设备及计算机可读存储介质 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150213389A1 (en) * | 2014-01-29 | 2015-07-30 | Adobe Systems Incorporated | Determining and analyzing key performance indicators |
US11537272B2 (en) * | 2016-12-21 | 2022-12-27 | Aon Global Operations Se, Singapore Branch | Content management system extensions |
-
2020
- 2020-06-12 CN CN202010534459.5A patent/CN111695075B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9032531B1 (en) * | 2012-06-28 | 2015-05-12 | Middlegate, Inc. | Identification breach detection |
CN109886022A (zh) * | 2019-02-20 | 2019-06-14 | 北京丁牛科技有限公司 | Cms类型识别方法及装置 |
CN110825941A (zh) * | 2019-10-17 | 2020-02-21 | 北京天融信网络安全技术有限公司 | 一种内容管理***识别方法、装置和存储介质 |
CN111177618A (zh) * | 2019-12-17 | 2020-05-19 | 腾讯科技(深圳)有限公司 | 网站搭建方法、装置、设备及计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111695075A (zh) | 2020-09-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111695075B (zh) | 一种网站cms识别方法、安全漏洞检测方法及装置 | |
CN108090351B (zh) | 用于处理请求消息的方法和装置 | |
CN106599160B (zh) | 一种内容规则库管理***及其编码方法 | |
CN112749284B (zh) | 知识图谱构建方法、装置、设备及存储介质 | |
US10169005B2 (en) | Consolidating and reusing portal information | |
US20160306852A1 (en) | Answering natural language table queries through semantic table representation | |
Roy Choudhary et al. | Cross-platform feature matching for web applications | |
CN111597490A (zh) | Web指纹识别方法、装置、设备及计算机存储介质 | |
CN112688966A (zh) | webshell检测方法、装置、介质和设备 | |
CN113918794B (zh) | 企业网络舆情效益分析方法、***、电子设备及存储介质 | |
WO2016093839A1 (en) | Structuring of semi-structured log messages | |
CN114285641A (zh) | 网络攻击检测方法及装置、电子设备、存储介质 | |
CN114139503A (zh) | 文档内容处理方法、装置、设备及存储介质 | |
CN114006749A (zh) | 安全验证方法、装置、设备及存储介质 | |
CN111177600B (zh) | 一种基于移动应用的内置网页加载方法及装置 | |
CN115801455B (zh) | 一种基于网站指纹的仿冒网站检测方法及装置 | |
US9720814B2 (en) | Template identification for control of testing | |
CN115982503B (zh) | 一种基于云平台的网站信息采集方法及*** | |
CN107203714B (zh) | 数据校验文件的配置方法和装置 | |
CN116361793A (zh) | 代码检测方法、装置、电子设备及存储介质 | |
CN109684844B (zh) | 一种webshell检测方法、装置以及计算设备、计算机可读存储介质 | |
CN113806667B (zh) | 一种支持网页分类的方法和*** | |
CN111400623B (zh) | 用于搜索信息的方法和装置 | |
CN109145220B (zh) | 数据处理方法、装置及电子设备 | |
CN112199573A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |