CN117081801A - 网站的内容管理系统的指纹识别方法、装置及介质 - Google Patents
网站的内容管理系统的指纹识别方法、装置及介质 Download PDFInfo
- Publication number
- CN117081801A CN117081801A CN202311028924.8A CN202311028924A CN117081801A CN 117081801 A CN117081801 A CN 117081801A CN 202311028924 A CN202311028924 A CN 202311028924A CN 117081801 A CN117081801 A CN 117081801A
- Authority
- CN
- China
- Prior art keywords
- website
- cms
- information
- sample
- fingerprint
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 51
- 238000007637 random forest analysis Methods 0.000 claims abstract description 56
- 230000004044 response Effects 0.000 claims abstract description 55
- 238000003066 decision tree Methods 0.000 claims description 60
- 238000004590 computer program Methods 0.000 claims description 17
- 238000012549 training Methods 0.000 claims description 17
- 238000003860 storage Methods 0.000 claims description 13
- 238000004422 calculation algorithm Methods 0.000 claims description 5
- 238000005422 blasting Methods 0.000 claims description 4
- 238000010586 diagram Methods 0.000 description 12
- 238000012545 processing Methods 0.000 description 10
- 230000006870 function Effects 0.000 description 7
- 230000008569 process Effects 0.000 description 5
- 239000013598 vector Substances 0.000 description 5
- 238000009434 installation Methods 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000035515 penetration Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 240000002393 Murraya koenigii Species 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1433—Vulnerability analysis
-
- 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
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/243—Classification techniques relating to the number of classes
- G06F18/24323—Tree-organised classifiers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
- G06N20/20—Ensemble learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/01—Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
- H04L63/1416—Event detection, e.g. attack signature detection
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Data Mining & Analysis (AREA)
- Computing Systems (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Computer Hardware Design (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Artificial Intelligence (AREA)
- Software Systems (AREA)
- Databases & Information Systems (AREA)
- Mathematical Physics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Biology (AREA)
- Computational Linguistics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Medical Informatics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本公开提供了一种网站的内容管理系统CMS的指纹识别方法、装置及介质,涉及网络安全技术领域,所述方法包括:获取所述网站的特征信息,其中,所述特征信息包括所述网站的图标哈希值、网站路径、对所述网站路径进行请求的应答信息中的至少一种;利用预先训练的随机森林模型根据所述特征信息识别所述网站的CMS的指纹,其中,所述指纹包括所述CMS的类型或版本中的至少一者。
Description
技术领域
本公开涉及网络安全技术,尤其是一种网站的内容管理系统(ContentManagement System,CMS)的指纹识别方法、装置及计算机可读存储介质。
背景技术
随着互联网行业的迅速发展,网络安全的重要性也日益突显。如何对网站的安全性进行检查,是网络安全人员关注的重点。在对网站的安全漏洞进行检查时,对网站的CMS指纹进行识别是必不可少的环节。通过识别网站的CMS指纹可以划定网站可能存在的安全漏洞范围,使网络安全人员可以有针对性地对网站存在的安全漏洞进行测试和处理,可以有效提高工作效率。
传统的CMS指纹识别主要依赖于将待识别的网站的CMS指纹与指纹库中的CMS指纹进行匹配,从而确定待识别网站的CMS的类型。该方法需要维护数据量庞大的指纹库,且识别的准确率较低。此外,在进行匹配前需要将待识别网站的CMS指纹中的重要字段进行人工标注,利用人工标注的内容与指纹库中已知的指纹进行比对,浪费人工成本,网站的CMS识别效率较低。
发明内容
为了解决上述问题中的至少一些,本公开实施例提供了如下技术方案。
根据本公开实施例的一方面,提供一种网站的内容管理系统CMS指纹识别方法,包括:获取所述网站的特征信息,其中,所述特征信息包括所述网站的图标哈希值、网站路径、对所述网站路径进行请求的应答信息中的至少一种;利用预先训练的随机森林模型根据所述特征信息识别所述网站的CMS的指纹,其中,所述指纹包括所述CMS的类型或版本中的至少一者。
在一些实施例中,所述特征信息包括所述网站路径和所述应答信息,所述获取所述网站的特征信息包括:经由所述网站的首页的访问链接对所述网站进行敏感目录爆破,以获取所述网站的全部链接;基于所述网站的全部链接提取所述网站的网站路径;以及基于所述网站的网站路径获得所述应答信息。
在一些实施例中,所述获取所述网站的特征信息还包括:判断所述应答信息中的状态码是否为特定状态码;响应于确定所述应答信息中的第一应答信息中的状态码为特定状态码,从所提取的网站路径中移除与第一应答信息对应的第一网站路径。
在一些实施例中,所述应答信息包括正文哈希值、标题信息、服务器信息、头部信息中的至少一个。
在一些实施例中,所述应答信息包括应答正文的哈希值,所述获取所述网站的特征信息包括:对所述网站路径进行请求以获得应答正文;以及采用sim哈希算法计算所述应答正文的哈希值。
在一些实施例中,所述利用预先训练的随机森林模型根据所述特征信息识别所述网站的CMS的指纹包括:利用所述随机森林模型的多棵决策树中的每一棵决策树对所述特征信息进行特征匹配,以获得分类结果;根据所述多棵决策树的分类结果进行投票表决以确定所述网站的CMS的指纹。
在一些实施例中,所述特征信息包括所述应答信息,所述应答信息包括应答正文的哈希值,所述利用所述随机森林模型的多棵决策树中的每一棵决策树对所述特征信息进行特征匹配包括:由每一棵决策树的特定决策节点:计算所述应答正文的哈希值与预设哈希值之间的汉明距离;基于汉明距离与阈值的比较,确定该特定决策节点的特征匹配的结果。
在一些实施例中,所述特征信息包括除应答正文的哈希值之外的另一特征,所述利用所述随机森林模型的多棵决策树中的每一棵决策树对所述特征信息进行特征匹配包括:由每一棵决策树的特定决策节点:基于所述另一特征的字符串内容与预设字符串内容的比较,确定该特定决策节点的特征匹配的结果。
在一些实施例中,所述根据所述多棵决策树的分类结果进行投票表决以确定所述网站的CMS的指纹包括:根据所述投票表决中获得最多选票的分类结果确定所述网站的CMS的指纹。
在一些实施例中,所述随机森林模型是基于多个样本网站的样本特征信息和所述多个样本网站的CMS的样本指纹训练得到的,所述样本指纹与所述指纹一致地包括CMS的类型或版本中的至少一者。
在一些实施例中,所述随机森林模型根据如下方式训练得到:获取所述多个样本网站的样本特征信息,其中,所述样本特征信息包括所述多个样本网站的图标哈希值、网站路径、对所述网站路径进行请求的应答信息中的至少一种;以所述多个样本网站的样本特征信息和所述多个样本网站的CMS的样本指纹作为训练数据对所述随机森林模型的一棵决策树进行训练;重复所述训练以获取所述随机森林模型的多颗决策树,所述多棵决策树形成所述随机森林模型。
在一些实施例中,每一棵决策树的最大深度与该决策树从所述样本特征信息中随机选取的特征数量相关联。
在一些实施例中,所述样本指纹包括CMS的多个类型或多个版本中的至少一者。
根据本公开实施例的还一方面,提供一种网站的内容管理系统CMS指纹识别装置,包括:用于执行上述任意一个实施例所述的方法的模块。
根据本公开实施例的还一方面,提供一种网站的内容管理系统CMS指纹识别装置,包括:存储器;以及耦接至所述存储器的处理器,所述处理器被配置为基于存储在所述存储器的指令执行上述任意一个实施例所述的方法。
根据本公开实施例的还一方面,提供一种计算机可读存储介质,包括计算机程序指令,其中,所述计算机程序指令被处理器执行时实现上述任意一个实施例所述的方法。
根据本公开实施例的还一方面,提供一种计算机程序产品,包括计算机程序,其中,所述计算机程序被处理器执行时实现上述任意一个实施例所述的方法。
本公开实施例中,通过获取网站的特征信息,并利用预先训练的随机森林模型根据特征信息识别网站的CMS指纹。通过上述方式,网络安全人员无需对网站的CMS指纹中的重要字段进行人工标注即可自动获取网站的特征信息,节省了人工成本,提高了网站的CMS识别效率。此外,本方案采用预先训练的随机森林模型识别网站的CMS指纹,无需维护指纹库。同时,利用随机森林模型根据特征信息识别网站的CMS指纹还提高了识别的准确率。
下面通过附图和实施例,对本公开的技术方案做进一步的详细描述。
附图说明
为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据本公开一些实施例的网站的CMS指纹识别方法的流程示意图;
图2是根据本公开一些实施例的随机森林模型识别CMS指纹的流程示意图;
图3是根据本公开一些实施例的随机森林模型的一棵决策树的结构示意图;
图4是根据本公开一些实施例的随机森林模型的训练步骤的流程示意图;
图5是根据本公开一些实施例的网站的CMS指纹识别装置的结构示意图;
图6是根据本公开又一些实施例的网站的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识别为前一个版本的CMS。这会导致安全人员在划定网站可能存在的安全漏洞范围时出现错误,致使重复劳动或者遗漏本应处理的安全漏洞,进而导致网站的安全性降低。
为了提高网站的CMS指纹识别的效率和准确率,本公开实施例提供了如下技术方案。
图1是根据本公开一些实施例的网站的CMS指纹识别方法的流程示意图。
如图1所示,网站的CMS指纹识别方法包括步骤102和步骤104。
在步骤102中,获取网站的特征信息。特征信息包括网站的图标哈希值(iconhash)、网站路径、对网站路径进行请求的应答信息中的至少一种。网站是指需要进行CMS指纹识别的网站,即,待识别网站。
CMS有自己独特的图标集,在一些实施例中,图标集中的图标可以用于识别CMS指纹。通过计算网站的图标的哈希值并与已知CMS的图标哈希值进行比对,可以确定网站所使用的CMS的类型和/或版本。
在一些实施例中,通过网站的图标哈希值可以判断网站的图标是否被篡改,有助于提高网站的安全性。
网站路径是指网站在服务器上的存储位置或文件目录结构。在一些实施例中,网站路径可以用于识别CMS指纹。网站路径在识别CMS指纹时主要可以从一下两个方面提供帮助:(1)网站路径可以帮助确定CMS的安装位置:不同的CMS通常在服务器上有特定的安装位置和文件目录结构。通过分析网站路径,可以识别出网站所使用的CMS的安装位置,从而进行CMS指纹识别。(2)提供关键信息用于CMS指纹识别:网站路径中可能包含特定的文件或目录名称,这些名称与特定的CMS相关联。通过识别这些特定的文件或目录名称,可以辅助进行CMS指纹识别。
在一些实施例中,通过网站路径支持对网站的漏洞扫描和安全评估。不同的CMS在服务器上的文件目录结构和路径命名规则可能存在不同的安全风险和漏洞。通过分析网站路径,可以帮助漏洞扫描工具或安全评估工具针对特定CMS的已知漏洞进行扫描和评估,从而进一步提高网站的安全性。
对网站路径进行请求的应答信息可以提供关于网站的CMS的信息,在一些实施例中,对网站路径进行请求的应答信息可以用于识别CMS指纹。
在一些实施例中,对网站路径进行请求的应答信息包括正文哈希值(body hash)、标题(title)信息、服务器(server)信息、头部(head)信息中的至少一个。其中正文哈希值是指应答正文的哈希值。
在一些实施例中,应答信息包括应答正文。采用相同CMS的网站,针对某个请求的应答信息的正文的文本相似度较高,应答正文的相似度可以用于识别网站的CMS指纹。
在一些实施例中,应答信息包括应答正文的哈希值,步骤102获取网站的特征信息包括:对网站路径进行请求以获得应答正文;以及采用sim哈希算法计算应答正文的哈希值。应答正文的正文哈希值可以用于识别网站的CMS指纹。
通过sim哈希算法计算正文哈希值包括如下步骤:(1)分词:对应答正文的文本进行分词,提取各个词的特征向量,并对各个特征向量进行权重设置。(2)哈希:通过哈希函数计算各个特征向量的哈希值。(3)加权:在哈希值的基础上,给所有特征向量进行加权。(4)合并:将上述各个特征向量的加权结果累加,得到一个序列串。(5)降维:对于累加结果,如果大于0则置1,否则置0,从而得到应答正文的sim哈希值。
在一些实施例中,通过正文哈希值可以计算应答文本和特定应答文本的相似度,相似度越高则应答文本和特定应答文本源自同一网站的概率就越高。通过上述方式可以识别网站的CMS指纹。
在一些实施例中,特征信息包括网站路径和应答信息,步骤102获取网站的特征信息包括:经由网站的首页的访问链接对网站进行敏感目录爆破,以获取网站的全部链接;基于网站的全部链接提取网站的网站路径;以及基于网站的网站路径获得应答信息。通过敏感目录爆破,可以自动地获取网站的全部链接,包括隐藏的目录和文件。这样可以确保获取到网站的完整路径列表,不会遗漏任何一个路径,并且可以节省时间和人力资源。此外,通过直接访问获取网站路径和应答信息,可以获取到客观的、实时的数据。这样可以避免依赖过时的或不准确的信息,确保获取到的网站路径和应答信息的准确性。
在一些实施例中,获取网站的特征信息还包括:判断应答信息中的状态码是否为特定状态码;响应于确定应答信息中的第一应答信息中的状态码为特定状态码,从所提取的网站路径中移除与第一应答信息对应的第一网站路径。应答信息中的状态码反映了网站的服务器处理对网站路径的请求的状态。通过上述方式可以去除没有识别意义的信息,简化后续的CMS识别过程。
在一些实施例中,状态码是超文本传输协议(Hyper Text Transfer Protocol,HTTP)应答码,它反映了万维网(World Wide Web,Web)服务器处理HTTP请求的状态。
在一些实施例中,状态码由3位数字组成,首位数字定义了状态码的类型。例如,首位数字为1的状态码代表收到请求,正在进一步的处理中。首位数字为2的状态码代表请求被正确接收,理解和处理。例如,200OK。首位数字为3的状态码代表请求没有成功,用户必须采取进一步的动作。首位数字为4的状态码代表提交的请求有错误。例如,404NOT Found,请求的网页不存在。再例如,400,服务器不理解请求语法。首位数字为5的状态码代表服务器不能完成对请求的处理。例如,500,服务器内部错误。
在一些实施例中,特定状态码包括400、404和500中的至少一个。
在步骤104中,利用预先训练的随机森林模型根据特征信息识别网站的CMS的指纹。CMS的指纹包括CMS的类型或版本中的至少一者。
通过上述方式,网络安全人员无需对网站的CMS指纹中的重要字段进行人工标注即可自动获取网站的特征信息,节省了人工成本,提高了网站的CMS识别效率。此外,本方案采用预先训练的随机森林模型识别网站的CMS指纹,无需维护指纹库。同时,利用随机森林模型根据特征信息识别网站的CMS指纹还提高了识别的准确率。
图2是根据本公开一些实施例的随机森林模型识别CMS指纹的流程示意图。
在一些实施例中,步骤104利用预先训练的随机森林模型根据特征信息识别网站的CMS的指纹包括如图2所示的步骤201和步骤203。
在步骤201中,利用随机森林模型的多棵决策树中的每一棵决策树对特征信息进行特征匹配,以获得分类结果。
在步骤203中,根据多棵决策树的分类结果进行投票表决以确定网站的CMS的指纹。
随机森林模型通过集成多棵决策树进行CMS指纹识别,提高了识别的准确性。并且基于随机森林模型的特点,即使在输入的特征信息存在部分错误的情况下也可以保持较好的识别能力,有助于对复杂的、不完美的特征数据进行处理。此外,随机森林模型可以有效地处理大量的特征数据。
在一些实施例中,特征信息包括应答信息,应答信息包括应答正文的哈希值,步骤203,利用随机森林模型的多棵决策树中的每一棵决策树对特征信息进行特征匹配包括:由每一棵决策树的特定决策节点:计算应答正文的哈希值与预设哈希值之间的汉明距离;基于汉明距离与阈值的比较,确定该特定决策节点的特征匹配的结果。
通过汉明距离对比两个哈希值计算文本相似度的方式简单快捷,适用于处理大规模的数据,且对于哈希值的长度和排列顺序以及获取哈希值的算法没有限制,对于处理排列不同但内容相似的文本非常有效。
为便于理解,下面举例进行说明。
图3是根据本公开一些实施例的随机森林模型的一棵决策树的结构示意图。
如图3所示,决策树由结点(包括内部节点和叶节点,内部节点,也即决策节点,在图3中用圆形表示。例如节点a和节点c。叶节点,在图3中用方框表示,例如节点b、节点d和节点e。)和向边(在图3中用箭头表示)组成。向边上标注有匹配条件,h代表应答正文的哈希值,h1、h2代表对应向边的起始节点的预设哈希值。函数H代表计算汉明距离。G1和G2代表对应向边的阈值。
在节点a处,计算H(h,h1),当H(h,h1)小于阈值G1时,代表节点b匹配成功,网站的CMS被该决策树分类为A类型。当H(h,h1)大于或等于阈值G1时,代表节点b匹配不成功,节点c匹配成功。在节点c处,计算H(h,h2)。当H(h,h2)小于阈值G2时,代表节点d匹配成功,网站的CMS被该决策树分类为B类型1版本。当H(h,h2)小于阈值G2时,代表节点d匹配不成功,节点e匹配成功,网站的CMS被该决策树分类为B类型2版本。
在一些实施例中,特征信息包括除应答正文的哈希值之外的另一特征,步骤201利用随机森林模型的多棵决策树中的每一棵决策树对特征信息进行特征匹配包括:由每一棵决策树的特定决策节点:基于另一特征的字符串内容与预设字符串内容的比较,确定该特定决策节点的特征匹配的结果。
在一些实施例中,步骤203根据多棵决策树的分类结果进行投票表决以确定网站的CMS的指纹包括:根据投票表决中获得最多选票的分类结果确定网站的CMS的指纹。例如,预先训练的随机森林模型有5棵决策树,在对网站的CMS指纹进行识别时,5棵决策树的分类结果分别为A类型、A类型、B类型、C类型和A类型,则获得最多选票的分类结果为A类型,该网站的CMS的类型被确定为A类型。再例如,5棵决策树的分类结果分别为A类型1版本、A类型1版本、B类1版本、A类型2版本和A类型1版本,则获得最多选票的分类结果为A类型1版本,该网站的CMS的类型和版本被确定为A类型1版本。
通过投票选出准确概率最高的分类结果、根据该分类结果确定网站的CMS的指纹可以提高识别的准确性和识别结果的容错率。
在一些实施例中,随机森林模型是基于多个样本网站的样本特征信息和多个样本网站的CMS的样本指纹训练得到的。样本指纹与指纹一致地包括CMS的类型或版本中的至少一者。采用多个样本网站的CMS指纹训练随机森林模型可以使随机森林模型的适用范围更广、识别准确率更高。
为便于理解,下面结合图4介绍预设的随机森林模型的训练步骤。
图4是根据本公开一些实施例的随机森林模型的训练步骤的流程示意图。
如图4所示,随机森林模型的训练包括步骤402至步骤406。
在步骤402中,获取多个样本网站的样本特征信息。样本特征信息包括多个样本网站的图标哈希值、网站路径、对网站路径进行请求的应答信息中的至少一种。
在步骤404中,以多个样本网站的样本特征信息和多个样本网站的CMS的样本指纹作为训练数据对随机森林模型的一棵决策树进行训练。
在一些实施例中,样本指纹包括CMS的多个类型或多个版本中的至少一者。例如,当样本指纹包括CMS的类型时,随机森林模型用于识别网站的CMS的类型。当样本指纹包括CMS的版本时,随机森林模型用于识别网站的CMS的版本。再例如,当样本指纹包括CMS的类型和版本时,随机森林模型用于识别网站的CMS的类型和版本。
在步骤406中,重复步骤404的训练以获取随机森林模型的多棵决策树,多棵决策树形成随机森林模型。
在一些实现方式中,训练一棵决策树时,随机有放回地从全部的样本网站中选择部分样本网站的特征信息进行训练。在训练其他决策树时重复上述步骤,以获得随机森林模型的多棵决策树。
通过上述方式训练得到的随机森林模型可以自动地对网站的CMS指纹进行识别,提高了识别效率,节省了人工成本,还提高了识别的准确率。
在一些实施例中,每一棵决策树的最大深度与该决策树从样本特征信息中随机选取的特征数量相关联。决策树的最大深度,表示从根节点(即初始的内部节点)到叶节点的最长路径的长度。决策树的特征数量可以控制决策树的多样性。上述方式下,每一棵决策树的最大深度和特征数量的相关联,可以避免决策树的深度过大使得决策树复杂度较高而产生过拟合。
在一些实施例中,特征数量小于样本特征的总特征数量,以保证每一棵决策树的多样性,有助于提高随机森林模型的预测性能。
在一些实施例中,一棵决策树的最大深度由d表示,该决策树的特征数量为k,k=log2d。
在一些实施例中,d是一个预设值,可以根据需求设定。
在一些实施例中,本公开还提供一种网站的CMS指纹识别装置,包括用于执行上述任意一个实施例所述的方法的模块。
图5是根据本公开一些实施例的网站的CMS指纹识别装置的结构示意图。
在一些实施例中,如图5所示,网站的CMS指纹识别装置包括获取模块501和识别模块502。
获取模块501被配置为获取网站的特征信息。特征信息包括网站的图标哈希值、网站路径、对网站路径进行请求的应答信息中的至少一种。
识别模块502被配置为利用预先训练的随机森林模型根据特征信息识别网站的CMS的指纹。指纹包括CMS的类型或版本中的至少一者。
在一些实施例中,网站的CMS指纹识别装置还可以包括其他模块以执行上述其他实施例的方法。
本说明书中各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似的部分相互参见即可。对于装置实施例而言,由于其与方法实施例基本对应,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
图6是根据本公开又一些实施例的网站的CMS指纹识别装置的结构示意图。
如图6所示,网站的CMS指纹识别装置600包括存储器601以及耦接至该存储器601的处理器602,处理器602被配置为基于存储在存储器601中的指令,执行前述任意一个实施例的方法。
存储器601例如可以包括系统存储器、固定非易失性存储介质等。系统存储器例如可以存储有操作系统、应用程序、引导装载程序(Boot Loader)以及其他程序等。
网站的CMS指纹识别装置600还可以包括输入输出接口603、网络接口604、存储接口605等。输入输出接口603、网络接口604、存储接口605之间,以及存储器601与处理器602之间例如可以通过总线606连接。输入输出接口603为显示器、鼠标、键盘、触摸屏等输入输出设备提供连接接口。网络接口604为各种联网设备提供连接接口。存储接口605为SD卡、U盘等外置存储设备提供连接接口。
本公开实施例还提供了一种计算机可读存储介质,包括计算机程序指令,该计算机程序指令被处理器执行时实现上述任意一个实施例的方法。
本公开实施例还提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述任意一个实施例的方法。
至此,已经详细描述了本公开的各实施例。为了避免遮蔽本公开的构思,没有描述本领域所公知的一些细节。本领域技术人员根据上面的描述,完全可以明白如何实施这里公开的技术方案。
本领域内的技术人员应当明白,本公开的实施例可提供为方法、系统或计算机程序产品。因此,本公开可采用完全硬件实施例、完全软件实施例,或结合软件和硬件方面的实施例的形式。而且,本公开可采用在一个或多个其中包含有计算机可用程序代码的计算机可用非瞬时性存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本公开是参照根据本公开实施例的方法、设备(系统)和计算机程序产品的流程图和/或方框图来描述的。应理解,可由计算机程序指令实现流程图中一个流程或多个流程和/或方框图中一个方框或多个方框中指定的功能。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
虽然已经通过示例对本公开的一些特定实施例进行了详细说明,但是本领域的技术人员应该理解,以上示例仅是为了进行说明,而不是为了限制本公开的范围。本领域的技术人员应该理解,可在不脱离本公开的范围和精神的情况下,对以上实施例进行修改或者对部分技术特征进行等同替换。本公开的范围由所附权利要求来限定。
Claims (16)
1.一种网站的内容管理系统CMS指纹识别方法,包括:
获取所述网站的特征信息,其中,所述特征信息包括所述网站的图标哈希值、网站路径、对所述网站路径进行请求的应答信息中的至少一种;
利用预先训练的随机森林模型根据所述特征信息识别所述网站的CMS的指纹,其中,所述指纹包括所述CMS的类型或版本中的至少一者。
2.根据权利要求1所述的方法,其中,所述特征信息包括所述网站路径和所述应答信息,所述获取所述网站的特征信息包括:
经由所述网站的首页的访问链接对所述网站进行敏感目录爆破,以获取所述网站的全部链接;
基于所述网站的全部链接提取所述网站的网站路径;以及
基于所述网站的网站路径获得所述应答信息。
3.根据权利要求2所述的方法,其中,所述获取所述网站的特征信息还包括:
判断所述应答信息中的状态码是否为特定状态码;
响应于确定所述应答信息中的第一应答信息中的状态码为特定状态码,从所提取的网站路径中移除与第一应答信息对应的第一网站路径。
4.根据权利要求1所述的方法,其中,所述应答信息包括正文哈希值、标题信息、服务器信息、头部信息中的至少一个。
5.根据权利要求1所述的方法,其中,所述应答信息包括应答正文的哈希值,所述获取所述网站的特征信息包括:
对所述网站路径进行请求以获得应答正文;以及
采用sim哈希算法计算所述应答正文的哈希值。
6.根据权利要求1所述的方法,其中,所述利用预先训练的随机森林模型根据所述特征信息识别所述网站的CMS的指纹包括:
利用所述随机森林模型的多棵决策树中的每一棵决策树对所述特征信息进行特征匹配,以获得分类结果;
根据所述多棵决策树的分类结果进行投票表决以确定所述网站的CMS的指纹。
7.根据权利要求6所述的方法,其中,所述特征信息包括所述应答信息,所述应答信息包括应答正文的哈希值,所述利用所述随机森林模型的多棵决策树中的每一棵决策树对所述特征信息进行特征匹配包括:
由每一棵决策树的特定决策节点:
计算所述应答正文的哈希值与预设哈希值之间的汉明距离;
基于汉明距离与阈值的比较,确定该特定决策节点的特征匹配的结果。
8.根据权利要求6所述的方法,其中,所述特征信息包括除应答正文的哈希值之外的另一特征,所述利用所述随机森林模型的多棵决策树中的每一棵决策树对所述特征信息进行特征匹配包括:
由每一棵决策树的特定决策节点:
基于所述另一特征的字符串内容与预设字符串内容的比较,确定该特定决策节点的特征匹配的结果。
9.根据权利要求6所述的方法,其中,所述根据所述多棵决策树的分类结果进行投票表决以确定所述网站的CMS的指纹包括:
根据所述投票表决中获得最多选票的分类结果确定所述网站的CMS的指纹。
10.根据权利要求1所述的方法,其中,所述随机森林模型是基于多个样本网站的样本特征信息和所述多个样本网站的CMS的样本指纹训练得到的,所述样本指纹与所述指纹一致地包括CMS的类型或版本中的至少一者。
11.根据权利要求10所述的方法,其中,所述随机森林模型根据如下方式训练得到:
获取所述多个样本网站的样本特征信息,其中,所述样本特征信息包括所述多个样本网站的图标哈希值、网站路径、对所述网站路径进行请求的应答信息中的至少一种;
以所述多个样本网站的样本特征信息和所述多个样本网站的CMS的样本指纹作为训练数据对所述随机森林模型的一棵决策树进行训练,其中,所述样本指纹包括所述多个样本网站的CMS的类型和版本;
重复所述训练以获取所述随机森林模型的多颗决策树,所述多棵决策树形成所述随机森林模型。
12.根据权利要求11所述的方法,其中,每一棵决策树的最大深度与该决策树从所述样本特征信息中随机选取的特征数量相关联。
13.根据权利要求11所述的方法,其中,所述样本指纹包括CMS的多个类型或多个版本中的至少一者。
14.一种网站的内容管理系统CMS指纹识别装置,包括用于执行权利要求1-13任意一项所述的方法的模块。
15.一种网站的内容管理系统CMS指纹识别装置,包括:
存储器;以及
耦接至所述存储器的处理器,被配置为基于存储在所述存储器中的指令,执行权利要求1-13任意一项所述的方法。
16.一种计算机可读存储介质,包括计算机程序指令,其中,所述计算机程序指令被处理器执行时实现权利要求1-13任意一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311028924.8A CN117081801A (zh) | 2023-08-15 | 2023-08-15 | 网站的内容管理系统的指纹识别方法、装置及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311028924.8A CN117081801A (zh) | 2023-08-15 | 2023-08-15 | 网站的内容管理系统的指纹识别方法、装置及介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117081801A true CN117081801A (zh) | 2023-11-17 |
Family
ID=88703555
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311028924.8A Pending CN117081801A (zh) | 2023-08-15 | 2023-08-15 | 网站的内容管理系统的指纹识别方法、装置及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117081801A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118210732A (zh) * | 2024-05-22 | 2024-06-18 | 新基信息技术集团股份有限公司 | 一种web应用敏感路径识别方法及系统 |
-
2023
- 2023-08-15 CN CN202311028924.8A patent/CN117081801A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118210732A (zh) * | 2024-05-22 | 2024-06-18 | 新基信息技术集团股份有限公司 | 一种web应用敏感路径识别方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10785241B2 (en) | URL attack detection method and apparatus, and electronic device | |
CN108156131B (zh) | Webshell检测方法、电子设备和计算机存储介质 | |
US9003529B2 (en) | Apparatus and method for identifying related code variants in binaries | |
CN108920947B (zh) | 一种基于日志图建模的异常检测方法和装置 | |
CN106650799B (zh) | 一种电子证据分类提取方法及系统 | |
US11212297B2 (en) | Access classification device, access classification method, and recording medium | |
CN113656807B (zh) | 一种漏洞管理方法、装置、设备及存储介质 | |
CN112989348B (zh) | 攻击检测方法、模型训练方法、装置、服务器及存储介质 | |
CN108229170B (zh) | 利用大数据和神经网络的软件分析方法和装置 | |
WO2020082763A1 (zh) | 基于决策树的钓鱼网站检测方法、装置及计算机设备 | |
CN108833348B (zh) | 一种基于日志图建模的异常检测方法和装置 | |
CN117081801A (zh) | 网站的内容管理系统的指纹识别方法、装置及介质 | |
CN112839014A (zh) | 建立识别异常访问者模型的方法、系统、设备及介质 | |
CN114650176A (zh) | 钓鱼网站的检测方法、装置、计算机设备及存储介质 | |
CN107786529B (zh) | 网站的检测方法、装置及系统 | |
CN112052453A (zh) | 基于Relief算法的webshell检测方法及装置 | |
CN116366312A (zh) | 一种Web攻击检测方法、装置及存储介质 | |
CN116401229A (zh) | 数据库的数据校验方法、装置及设备 | |
CN115392238A (zh) | 一种设备识别方法、装置、设备及可读存储介质 | |
CN110413909B (zh) | 基于机器学习的大规模嵌入式设备在线固件智能识别方法 | |
CN114257565A (zh) | 挖掘潜在威胁域名的方法、系统和服务器 | |
CN114528908B (zh) | 网络请求数据分类模型训练方法、分类方法及存储介质 | |
CN115718696B (zh) | 源码密码学误用检测方法、装置、电子设备和存储介质 | |
CN116383029B (zh) | 一种基于小程序的用户行为标签生成方法和装置 | |
CN113709092B (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 |