CN114124448B - 一种基于机器学习的跨站脚本攻击识别方法 - Google Patents

一种基于机器学习的跨站脚本攻击识别方法 Download PDF

Info

Publication number
CN114124448B
CN114124448B CN202111195689.4A CN202111195689A CN114124448B CN 114124448 B CN114124448 B CN 114124448B CN 202111195689 A CN202111195689 A CN 202111195689A CN 114124448 B CN114124448 B CN 114124448B
Authority
CN
China
Prior art keywords
cross
data
site
attack
machine learning
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
Application number
CN202111195689.4A
Other languages
English (en)
Other versions
CN114124448A (zh
Inventor
刘兵
谢鑫
何召阳
任玉坤
何晓刚
郗朝旭
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Moyun Technology Co ltd
Original Assignee
Beijing Moyun Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Moyun Technology Co ltd filed Critical Beijing Moyun Technology Co ltd
Priority to CN202111195689.4A priority Critical patent/CN114124448B/zh
Publication of CN114124448A publication Critical patent/CN114124448A/zh
Application granted granted Critical
Publication of CN114124448B publication Critical patent/CN114124448B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1416Event detection, e.g. attack signature detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques

Landscapes

  • Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Biology (AREA)
  • Evolutionary Computation (AREA)
  • Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Machine Translation (AREA)

Abstract

本发明公开了一种基于机器学习的跨站脚本攻击识别方法,包括以下步骤:S1、网页数据收集:搭建含有跨站脚本攻击漏洞的靶场,使用扫描器和人工渗透的方式收集含有跨站脚本攻击的相关数据,对相关数据进行分类标注;S2、数据特征工程:对相关数据进行数据清洗;S3、数据特征化分析:将跨站脚本攻击语句视为文本信息,进行文本特征抽取,生成分词信息;S4、机器学习:将分词信息通过XGBoost集成算法模型进行训练,得到用于跨站脚本攻击识别的分类器模型;S5、跨站脚本攻击识别:将Web请求数据经过特征工程及向量化处理后进入分类器模型进行预测,识别跨站脚本攻击。本发明能够有效提高跨站脚本攻击识别效率,提高安全性。

Description

一种基于机器学习的跨站脚本攻击识别方法
技术领域
本发明涉及网络数据安全技术领域,具体涉及一种基于机器学习的跨站脚本攻击识别方法。
背景技术
当今,计算机网络技术发展得十分迅速,网络犯罪行为日益增加。网络犯罪行为主要有两种形式,一是非法获取系统数据,二是让系统无法提供服务。在非法获取系统数据方面,跨站脚本攻击利用网站漏洞恶意盗取信息是非常典型的攻击手段。与大多数攻击不同的是,跨站脚本漏洞涉及到攻击者、客户端和网站,而不像大多数攻击一样只有攻击者和受害者。这无疑增加了跨站脚本漏洞的攻防难度。
传统的方法是人工动态检测检测方法和静态检测方法两种方式进行。第一种动态检测方法,该方法从黑盒测试入手,又结合了渗透攻击相关的方法,实现了对XSS漏洞的检测。当前的动态检测方法都会使用真实的XSS攻击代码,或者利用网络爬虫对目标网页进行爬取分析,但是网络爬虫的时间开销十分巨大,且不能保证爬取到的页面数据覆盖了网站的全部页面,并且数据库中存储的攻击代码又无法涵盖所有的攻击场景,存取的开销对服务器的要求也非常。第二种静态检测方法是HTML5和CORS属性规则在浏览器设计一个过滤器来检测XSS攻击,并提供了一个系统来判断被拦截的请求是否有恶意企图。通过以上我们不难看出传统的跨站脚本检测方法往往需要花费大量的时间和精力来提取这些攻击数据的特征,而且还需要一定的经验相结合才能取得很好的效果。对人员依赖程度很大,人员能力水平参差不齐,会影响最终的效果,并且对服务器资源的开销也是非常大的。
发明内容
本发明是为了解决现有技术中人们在使用互联网数据时无法及时有效预防跨站脚本攻击的技术问题,提供一种基于机器学习的跨站脚本攻击识别方法,能够有效提高跨站脚本攻击识别效率,提高安全性。
本发明提供一种基于机器学习的跨站脚本攻击识别方法,包括以下步骤:
S1、网页数据收集:搭建含有跨站脚本攻击漏洞的靶场,使用扫描器和人工渗透的方式收集含有跨站脚本攻击的相关数据,对相关数据进行分类标注;
S2、数据特征工程:对相关数据进行数据清洗;
S3、数据特征化分析:将跨站脚本攻击语句视为文本信息,进行文本特征抽取,生成分词信息;
S4、机器学习:将分词信息通过XGBoost集成算法模型进行训练,得到用于跨站脚本攻击识别的分类器模型;
S5、跨站脚本攻击识别:将Web请求数据经过特征工程及向量化处理后进入分类器模型进行预测,识别跨站脚本攻击。
XGBoost是一个优化的分布式梯度增强库,旨在实现高效,灵活和便携。它在Gradient Boosting框架下实现机器学习算法。XGBoost提供并行树提升(也称为GBDT,GBM),可以快速准确地解决许多数据科学问题。相同的代码在主要的分布式环境上运行,并且可以解决数十亿个示例之外的问题。XGBoost是对梯度提升算法的改进,求解损失函数极值时使用了牛顿法,将损失函数泰勒展开到二阶,另外损失函数中加入了正则化项。训练时的目标函数由两部分构成,第一部分为梯度提升算法损失,第二部分为正则化项。
本发明所述的一种基于机器学习的跨站脚本攻击识别方法,作为优选方式,相关数据包括请求参数、请求方法、响应内容、响应状态。
本发明所述的一种基于机器学习的跨站脚本攻击识别方法,作为优选方式,分类标注包括跨站脚本攻击类和非跨站脚本攻击类。
本发明所述的一种基于机器学习的跨站脚本攻击识别方法,作为优选方式,扫描器为wvs或appscan。
本发明所述的一种基于机器学习的跨站脚本攻击识别方法,作为优选方式,步骤S2进一步包括以下步骤:
S21、采用下采样算法将相关数据中包含缺失值的数据清除;
S22、使用xpath将响应内容中的标签去除,只保留页面内容;
S23、采用urlparse包中的方法将所述请求参数、IP地址、端口号进行区分;
S24、使用Pearson相关系数评价相关数据的特征变量跟特征之间的关系,去除和最终类别无关的数据。
XPath即为XML路径语言(XML Path Language),它是一种用来确定XML文档中某部分位置的语言;XPath基于XML的树状结构,提供在数据结构树中找寻节点的能力。
Pearson相关系数(Pearson Correlation Coefficient)是用来衡量两个数据集合是否在一条线上面,它用来衡量定距变量间的线性关系。
本发明具有以下优点:
(1)对跨站脚本的识别方式更加灵活多样;
(2)减少了对人员的依赖程度;
(3)识别结果不依赖于相关人员的经验。识别准确度大幅度提高;
(4)识别准确度大幅度提高;
(5)进一步提高了跨站脚本的识别效率。
附图说明
图1为一种基于机器学习的跨站脚本攻击识别方法流程图;
图2为一种基于机器学习的跨站脚本攻击识别方法数据特征工程流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。
实施例1
如图1所示,一种基于机器学习的跨站脚本攻击识别方法,包括以下步骤:
S1、网页数据收集:搭建含有跨站脚本攻击漏洞的靶场,使用wvs、appscan等扫描器和人工渗透的方式收集含有跨站脚本攻击的相关数据,对相关数据进行分类标注;相关数据包括请求参数、请求方法、响应内容、响应状态;分类标注包括跨站脚本攻击类和非跨站脚本攻击类;
S2、数据特征工程:对相关数据进行数据清洗;如图2所示,包括以下步骤:
S21、采用下采样算法将相关数据中包含缺失值的数据清除;
S22、使用xpath将响应内容中的标签去除,只保留页面内容;
S23、采用urlparse包中的方法将所述请求参数、IP地址、端口号进行区分;
S24、使用Pearson相关系数评价相关数据的特征变量跟特征之间的关系,去除和最终类别无关的数据;
S3、数据特征化分析:将跨站脚本攻击语句视为文本信息,进行文本特征抽取,生成分词信息;
S4、机器学习:将分词信息通过XGBoost集成算法模型进行训练,得到用于跨站脚本攻击识别的分类器模型;
S5、跨站脚本攻击识别:将Web请求数据经过特征工程及向量化处理后进入分类器模型进行预测,识别跨站脚本攻击。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,根据本发明的技术方案及其发明构思加以等同替换或改变,都应涵盖在本发明的保护范围之内。

Claims (3)

1.一种基于机器学习的跨站脚本攻击识别方法,其特征在于:包括以下步骤:
S1、网页数据收集:搭建含有跨站脚本攻击漏洞的靶场,使用扫描器和人工渗透的方式收集含有跨站脚本攻击的相关数据,对所述相关数据进行分类标注;
S2、数据特征工程:对所述相关数据进行数据清洗;所述相关数据包括请求参数、请求方法、响应内容、响应状态;步骤S2进一步包括以下步骤:
S21、采用下采样算法将所述相关数据中包含缺失值的数据清除;
S22、使用xpath将所述响应内容中的标签去除,只保留页面内容;
S23、采用urlparse包中的方法将所述请求参数、IP地址、端口号进行区分;
S24、使用Pearson相关系数评价所述相关数据的特征变量跟特征之间的关系,去除和最终类别无关的数据;
S3、数据特征化分析:将跨站脚本攻击语句视为文本信息,进行文本特征抽取,生成分词信息;
S4、机器学习:将所述分词信息通过XGBoost集成算法模型进行训练,得到用于跨站脚本攻击识别的分类器模型;
S5、跨站脚本攻击识别:将Web请求数据经过所述数据特征工程及向量化处理后进入所述分类器模型进行预测,识别所述跨站脚本攻击。
2.根据权利要求1所述的一种基于机器学习的跨站脚本攻击识别方法,其特征在于:所述分类标注包括跨站脚本攻击类和非跨站脚本攻击类。
3.根据权利要求1所述的一种基于机器学习的跨站脚本攻击识别方法,其特征在于:所述扫描器为wvs或appscan。
CN202111195689.4A 2021-10-14 2021-10-14 一种基于机器学习的跨站脚本攻击识别方法 Active CN114124448B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111195689.4A CN114124448B (zh) 2021-10-14 2021-10-14 一种基于机器学习的跨站脚本攻击识别方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111195689.4A CN114124448B (zh) 2021-10-14 2021-10-14 一种基于机器学习的跨站脚本攻击识别方法

Publications (2)

Publication Number Publication Date
CN114124448A CN114124448A (zh) 2022-03-01
CN114124448B true CN114124448B (zh) 2024-03-19

Family

ID=80375910

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111195689.4A Active CN114124448B (zh) 2021-10-14 2021-10-14 一种基于机器学习的跨站脚本攻击识别方法

Country Status (1)

Country Link
CN (1) CN114124448B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115695054B (zh) * 2023-01-04 2023-03-21 北京知其安科技有限公司 基于机器学习的waf拦截页面识别的方法、装置及相关组件

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109165507A (zh) * 2018-07-09 2019-01-08 深圳开源互联网安全技术有限公司 跨站脚本攻击漏洞检测方法、装置及终端设备
CN109766693A (zh) * 2018-12-11 2019-05-17 四川大学 一种基于深度学习的跨站脚本攻击检测方法
CN110321707A (zh) * 2018-03-28 2019-10-11 蓝盾信息安全技术有限公司 一种基于大数据算法的sql注入检测方法
CN110351301A (zh) * 2019-07-26 2019-10-18 长沙市智为信息技术有限公司 一种http请求双层递进式异常检测方法
KR20200084392A (ko) * 2018-12-20 2020-07-13 문수연 기계학습을 이용한 행위 분석 기반의 웹 공격 분류 및 탐지
CN112671703A (zh) * 2020-11-18 2021-04-16 中国电子科技网络信息安全有限公司 基于改进fastText的跨站脚本攻击检测方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110321707A (zh) * 2018-03-28 2019-10-11 蓝盾信息安全技术有限公司 一种基于大数据算法的sql注入检测方法
CN109165507A (zh) * 2018-07-09 2019-01-08 深圳开源互联网安全技术有限公司 跨站脚本攻击漏洞检测方法、装置及终端设备
CN109766693A (zh) * 2018-12-11 2019-05-17 四川大学 一种基于深度学习的跨站脚本攻击检测方法
KR20200084392A (ko) * 2018-12-20 2020-07-13 문수연 기계학습을 이용한 행위 분석 기반의 웹 공격 분류 및 탐지
CN110351301A (zh) * 2019-07-26 2019-10-18 长沙市智为信息技术有限公司 一种http请求双层递进式异常检测方法
CN112671703A (zh) * 2020-11-18 2021-04-16 中国电子科技网络信息安全有限公司 基于改进fastText的跨站脚本攻击检测方法

Also Published As

Publication number Publication date
CN114124448A (zh) 2022-03-01

Similar Documents

Publication Publication Date Title
US11716347B2 (en) Malicious site detection for a cyber threat response system
US9935967B2 (en) Method and device for detecting malicious URL
CN103559235B (zh) 一种在线社交网络恶意网页检测识别方法
CN104954372B (zh) 一种钓鱼网站的取证与验证方法及系统
CN112541476B (zh) 一种基于语义特征提取的恶意网页识别方法
US20190297092A1 (en) Access classification device, access classification method, and recording medium
CN107463844B (zh) Web木马检测方法及系统
Liu et al. An efficient multistage phishing website detection model based on the CASE feature framework: Aiming at the real web environment
CN110572359A (zh) 基于机器学习的钓鱼网页检测方法
CN104504335A (zh) 基于页面特征和url特征的钓鱼app检测方法及系统
CN109756467B (zh) 一种钓鱼网站的识别方法及装置
CN109858248A (zh) 恶意Word文档检测方法和装置
CN105975523A (zh) 一种基于栈的暗链检测方法
Park et al. Phishing website detection framework through web scraping and data mining
CN108183902B (zh) 一种恶意网站的识别方法和装置
Geng et al. RRPhish: Anti-phishing via mining brand resources request
CN114357443A (zh) 基于深度学习的恶意代码检测方法、设备与存储介质
CN114124448B (zh) 一种基于机器学习的跨站脚本攻击识别方法
CN116015772A (zh) 恶意网址的处理方法、装置、设备及存储介质
CN113918936A (zh) Sql注入攻击检测的方法以及装置
CN114169432B (zh) 一种基于深度学习的跨站脚本攻击识别方法
CN113904834A (zh) 基于机器学习的xss攻击检测方法
Valiyaveedu et al. Survey and analysis on AI based phishing detection techniques
CN114143074A (zh) webshell攻击识别装置及方法
Onashoga et al. A HYBRID APPROACH FOR DETECTING MALICIOUS WEB PAGES USING DECISION TREE AND NAÏVE BAYES ALGORITHMS.

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