一种基于机器学习的web指纹识别方法技术

技术编号:24014819 阅读:70 留言:0更新日期:2020-05-02 03:00
本发明专利技术涉及web服务的技术领域,特别是涉及一种基于机器学习的web指纹识别方法,其使用机器学习算法,通过对响应报文中的内容和对应的Web指纹进行训练,生成Web指纹识别模型,通过将响应报文输入该模型可以快速对其对应的Web指纹进行判断,最终实现对Web服务的类型版本的高精度、快速预测;S1数据收集:收集或创建多个站点,之后我们对这些站点发送设计好的请求,分别对其对应的响应报文进行分类,将这些响应报文和其对应的Web指纹进行归类,将这些响应报文分为训练集和测试集;S2数据处理;S3模型训练;S4结束训练;S5行为预测。

A method of Web fingerprint recognition based on machine learning

【技术实现步骤摘要】
一种基于机器学习的web指纹识别方法
本专利技术涉及web服务的
,特别是涉及一种基于机器学习的web指纹识别方法。
技术介绍
众所周知,Web指纹是指在对Web服务的相关组件进行设计开发的过程中,由于在开发时所使用的开发工具,相关技术以及实现方式的不同,最终在形成成果时每个Web服务组件都会形成它们各自独有的信息,根据这些信息可以对每个Web服务组件进行标记,这里我们就把这些独有的信息称为Web指纹。通常Web指纹包括Web容器,Web服务端语言,Web后端框架,Web应用,Web前端框架,Web前端语言,Web运营商,第三方内容,CDN运营商等。而Web指纹识别则是指借助已有的Web指纹信息,通过与目标Web对象的相关特征进行对比从而识别出该Web对象的服务组件相关信息。常用的Web指纹识别方法包括Header判断,body关键词匹配,url内容的MD5匹配,url状态码判断,url相对路径匹配等。该技术一般用于对目标Web站点的信息收集,获取目标站点的Web服务组件相关内容。用户常常可以通过具体的Web服务组件类型和版本查找获得该类本文档来自技高网...

【技术保护点】
1.一种基于机器学习的web指纹识别方法,其特征在于,包括以下步骤:/nS1数据收集:收集或创建多个站点,之后我们对这些站点发送设计好的请求,分别对其对应的响应报文进行分类,将这些响应报文和其对应的Web指纹进行归类,将这些响应报文分为训练集和测试集;/nS2数据处理:对于收集到的存在不同Web指纹的响应报文,将其中包含的每个字符以数字进行代替;/nS3模型训练;/nS4结束训练;/nS5行为预测。/n

【技术特征摘要】
1.一种基于机器学习的web指纹识别方法,其特征在于,包括以下步骤:
S1数据收集:收集或创建多个站点,之后我们对这些站点发送设计好的请求,分别对其对应的响应报文进行分类,将这些响应报文和其对应的Web指纹进行归类,将这些响应报文分为训练集和测试集;
S2数据处理:对于收集到的存在不同Web指纹的响应报文,将其中包含的每个字符以数字进行代替;
S3模型训练;
S4结束训练;
S5行为预测。


2.如权利要求1所述的一种基于机器学习的web指纹识别方法,其特征在于,所述步骤S2具体步骤为:这里假设所有的响应报文中包含的字符类型总数为n,每一个字符a都对应一个数字xa,这样可以将一条响应报文使用一个长度为n的向量代替,这里对于每一个报文m的第i个字符mi,若其对应的数字为那么就在其对应向量的第个元素上加1,以此类推最终得到一个长度为n的数字向量,该向量即为原报文的数字向量形式;
所述步骤S3具体步骤为:在获得响应报文对应的字符向量后,首先我们对这些向量进行聚类,类的个数即为原响应报文集中需要进行分类的不同种类Web指纹个数:
对于两个不同的响应报文,他们的距离为:



其中t′为向量中第i个元素的参数;
对于预测集中的响应报文,计算出他们与所有测试集响应报文的距离,得出距离最近的前10个响应报文集,根据这10个响应报文集中不同的Web指纹出现频率,返回Web指纹出现频率最高的类别作为预测的Web指纹;
在每次预测结束后,若本次预测结果与实际结果一致,则误差记为0;若本次预...

【专利技术属性】
技术研发人员:李明轩舒斐李峰王斌邹振婉
申请(专利权)人:国网新疆电力有限公司电力科学研究院
类型:发明
国别省市:新疆;65

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1