CN108259494B - 一种网络攻击检测方法及装置 - Google Patents
一种网络攻击检测方法及装置 Download PDFInfo
- Publication number
- CN108259494B CN108259494B CN201810044684.3A CN201810044684A CN108259494B CN 108259494 B CN108259494 B CN 108259494B CN 201810044684 A CN201810044684 A CN 201810044684A CN 108259494 B CN108259494 B CN 108259494B
- Authority
- CN
- China
- Prior art keywords
- sample
- neural network
- attack
- samples
- sql injection
- 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
-
- 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
-
- 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/955—Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
- G06F16/9566—URL specific, e.g. using aliases, detecting broken or misspelled links
-
- 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/55—Detecting local intrusion or implementing counter-measures
- G06F21/56—Computer malware detection or handling, e.g. anti-virus arrangements
- G06F21/566—Dynamic detection, i.e. detection performed at run-time, e.g. emulation, suspicious activities
-
- 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/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
-
- 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/1441—Countermeasures against malicious traffic
- H04L63/1466—Active attacks involving interception, injection, modification, spoofing of data unit addresses, e.g. hijacking, packet injection or TCP sequence number attacks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computing Systems (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Virology (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种网络攻击检测方法及装置,其中方法包括:接收用户输入的网站访问请求,网站访问请求中包含有待访问页面的统一资源定位符;对统一资源定位符进行数据预处理,转化为词向量;调用预先建立并训练好的神经网络模型,根据词向量和神经网络模型进行确定网站访问请求是否为网络攻击以及网络攻击的类型。本发明实施例通过使用神经网络模型能够实现对一种以上的网络攻击进行检测。
Description
技术领域
本发明涉及互联网技术领域,具体而言,涉及一种网络攻击检测方法及装置。
背景技术
随着互联网技术的发展,互联网越来越深入到人们的工作、生活中的方方面面,进而网络安全问题也越来越受到人们的重视;现有技术中,网络安全问题中包括对数据库进行攻击,和跨站脚本攻击,前者可能会导致的数据库的风险有:刷库、拖库、撞库;后者所导致的风险有盗用各类用户的账号权益,或者盗用企业数据等;二者均会给用户带来巨大的损失,因此十分有必要提供一种方法对网络攻击进行检测。
发明人在研究中发现,现有技术中的网络攻击检测技术只能针对单一的网络攻击进行检测,效率较低。
发明内容
有鉴于此,本发明的目的在于提供网络攻击检测方法和装置,以实现对一种以上的网络攻击进行检测。
第一方面,本发明实施例提供了一种网络攻击检测方法,包括:
接收用户输入的网站访问请求,所述网站访问请求中包含有待访问页面的统一资源定位符;
对所述统一资源定位符进行数据预处理,转化为词向量;
调用预先建立并训练好的神经网络模型,根据所述词向量和所述神经网络模型进行确定所述网站访问请求是否为网络攻击以及网络攻击的类型。
结合第一方面,本发明实施例提供了第一方面的第一种可能的实施方式,其中,所述神经网络模型为通过以下方式预先建立和训练的:
采集正样本、XSS攻击样本与SQL注入样本;
对所述正样本、XSS攻击样本与SQL注入样本分别进行数据结构化处理;
对进行数据结构化处理后的所述正样本、XSS攻击样本与SQL注入样本进行分词处理,得到词向量;
建立神经网络,加入concat层,将多维输出融合后,加入Softmax函数;
基于所述词向量对所述神经网络按照设定的次数进行训练;
从训练后的神经网络中选取准确率最高的神经网络作为最终得到的神经网络模型。
结合第一方面的第一种可能的实施方式,本发明实施例提供了第一方面的第二种可能的实施方式,其中,所述采集XSS攻击样本,包括:
从渗透测试工具xssed中爬取XSS攻击样本;
和/或,
从开源代码库GitHub中检索XSS攻击样本。
结合第一方面的第一种可能的实施方式或第二种可能的实施方式,本发明实施例提供了第一方面的第三种可能的实施方式,其中,所述采集SQL注入样本,包括:
通过使用SQLmap脚本得到SQL注入样本。
结合第一方面的第一种可能的实施方式或第一方面的第二种可能的实施方式,其中,所述对所述正样本、XSS攻击样本与SQL注入样本分别进行数据结构化处理,包括:
对所述正样本、XSS攻击样本与SQL注入样本分别进行标记后,进行结构化处理,使所有样本数据的编码格式统一。
第二方面,本发明实施例还提供了一种网络攻击检测装置,包括:
接收模块,用于接收用户输入的网站访问请求,所述网站访问请求中包含有待访问页面的统一资源定位符;
数据预处理模块,用于对所述统一资源定位符进行数据预处理,转化为词向量;
确定模块,用于调用预先建立并训练好的神经网络模型,根据所述词向量和所述神经网络模型进行确定所述网站访问请求是否为网络攻击。
结合第二方面,本发明实施例提供了第二方面的第一种可能的实施方式,其中,还包括:神经网络模型建立模块,所述神经网络模型建立模块,用于通过以下方式预先建立神经网络模型:
采集正样本、XSS攻击样本与SQL注入样本;
对所述正样本、XSS攻击样本与SQL注入样本分别进行数据结构化处理;
对进行数据结构化处理后的所述正样本、XSS攻击样本与SQL注入样本进行分词处理,得到词向量;
建立神经网络,加入concat层,将多维输出融合后,加入Softmax函数;
基于所述词向量对所述神经网络按照设定的次数进行训练;
从训练后的神经网络中选取准确率最高的神经网络作为最终得到的神经网络模型。
结合第二方面的第一种可能的实施方式,本发明实施例提供了第二方面的第二种可能的实施方式,其中,所述神经网络模型建立模块,具体通过以下方式进行采集XSS攻击样本:
从渗透测试工具xssed中爬取XSS攻击样本;
和/或,
从开源代码库GitHub中检索XSS攻击样本。
结合第二方面的第一种可能的实施方式或第二方面第二种可能的实施方式,本发明实施例提供了第二方面的第三种可能的实施方式,其中,所述神经网络模型建立模块,具体通过以下方式进行采集SQL注入样本:
通过使用SQLmap脚本得到SQL注入样本。
结合第二方面的第一种可能的实施方式或第二方面第二种可能的实施方式,所述神经网络模型建立模块,具体通过以下方式对所述正样本、XSS攻击样本与SQL注入样本分别进行数据结构化处理:
对所述正样本、XSS攻击样本与SQL注入样本分别进行标记后,进行结构化处理,使所有样本数据的编码格式统一。
本发明实施例提供的一种网络攻击检测的方法及装置,采用预先建立并训练好的神经网络模型进行确定网站访问请求是否为网络攻击,在确定为网络攻击时并且能够给出网络攻击的类型;与现有技术中的进行网络攻击检测的方法只能够检测单一的网络攻击相比,本发明能够实现对XSS攻击和SQL注入攻击的检测,效率和准确率高。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了本发明一个实施例所提供的一种网络攻击检测方法的流程示意图;
图2示出了本发明一个实施例所提供的一种神经网络模型建立和训练的流程示意图;
图3a示出了本发明一个实施例所提供的一种神经网络模型的网络架构示意图;
图3b示出了本发明一个实施例所提供的一种神经网络模型网络架构展开后的模式示意图;
图3c示出了本发明一个实施例所提供的一种神经网络模型的神经元内部示意图;
图4示出了本发明一个实施例所提供的一种网络攻击检测装置的结构示意图;
图5示出了本发明一个实施例所提供的另一种网络攻击检测装置的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
考虑到现有技术中的网络攻击检测方法只能针对单一的网络攻击进行检测;基于此,本发明实施例提供了一种网络攻击检测方法和装置,下面通过实施例进行描述。
在网络攻击或者网络入侵中,XSS攻击和SQL注入攻击所占的比例较高;SQL注入攻击是黑客对数据库进行攻击的常用手段之一。随着B/S模式应用开发的发展,使用这种模式编写应用程序的程序员也越来越多。但是由于程序员的水平及经验也参差不齐,相当大一部分程序员在编写代码的时候,没有对用户输入数据的合法性进行判断,使应用程序存在安全隐患。用户可以提交一段数据库查询代码,根据程序返回的结果,获得某些他想得知的数据,这就是所谓的SQL Injection,即SQL注入。SQL注入攻击属于数据库安全攻击手段之一,SQL注入攻击会导致的数据库安全风险包括:刷库、拖库、撞库。
XSS(Cross Site Scripting)攻击是指跨站脚本攻击,恶意攻击者往Web页面里插入恶意Script代码,当用户浏览该页时,嵌入其中Web里面的Script代码会被执行,从而达到恶意攻击用户的目的。XSS攻击分成两类,一类是来自内部的攻击,主要指的是利用程序自身的漏洞,构造跨站语句,如:dvbbs的showerror.asp存在的跨站漏洞。另一类则是来自外部的攻击,主要指的自己构造XSS跨站漏洞网页或者寻找非目标机以外的有跨站漏洞的网页。如当我们要渗透一个站点,我们自己构造一个有跨站漏洞的网页,然后构造跨站语句,通过结合其它技术,如社会工程学等,欺骗目标服务器的管理员打开。
本发明实施例中所提供的一种网络攻击检测方法,能够有效地对上述的XSS攻击和SQL注入攻击进行检测。
参照图1所示的实施例,本实施例中提供了一种网络攻击检测方法,该方法包括如下步骤:
S101、接收用户输入的网站访问请求,所述网站访问请求中包含有待访问页面的统一资源定位符;
用户在对网页进行访问时会输入网页统一资源定位符URL(UniformResourceLocator),以获取用户想要得到的资源。
当该统一资源定位符携带有XSS攻击代码或者SQL攻击代码时,会对将要访问的网站进行攻击,进而会对客户的数据的安全性造成威胁。
S102、对所述统一资源定位符进行数据预处理,转化为词向量;
上述将对统一资源定位符进行预处理包括:将统一资源定位符进行结构化处理,具体的,先将统一资源定位符解码,以使不同的统一资源定位符具有统一的编码格式,再进行将统一资源定位符更改超链接,例如将将统一资源定位符中所包含的所有超链接改为http://u,更改数字,例如将所有的数字改为0,将所有字母改为小写等操作。
之后,对上述进行结构化处理后的统一资源定位符进行分词,将分词之后得到的结果进行转化为词向量;具体的,主要包括:按照以下内容进行分词,包括:单双引号包含的内容,http/https链接,<>标签<script>,<>开头<h1,参数名topic=,函数体alert(,字符数字组成的单词;
以及按照符号进行分词,包括:“(”,“)”,“”,“%”,“?”。上述进行分词处理后得到的结果,利用word2vec进行构建词向量。
S103、调用预先建立并训练好的神经网络模型,根据所述词向量和所述神经网络模型进行确定所述网站访问请求是否为网络攻击以及网络攻击的类型。
本发明实施例中的神经网络模型为LSTM(长短期记忆网络,LongShort-TermMemory)网络模型,是一种时间递归神经网络;该神经网络模型为通过以下方法进行建立和训练的,参照图2所示,包括如下步骤:
S201、采集正样本、XSS攻击样本与SQL注入样本;
上述的正样本为正常访问时的统一资源定位符,该统一资源定位符为安全的;
上述采集XSS攻击样本,具体通过以下方式进行采集的:
A、从渗透测试工具xssed中爬取XSS攻击样本;
从xssed爬取的XSS攻击样本可以达到4万条。
B、从开源代码库GitHub中检索XSS攻击样本;
在GitHub上可以搜索到少量的XSS攻击样本。
上述采集SQL注入样本,包括:通过使用SQLmap脚本得到SQL注入样本;具体的,对网站的统一资源定位符使用SQLmap自带的tamper脚本得到多样化的SQL注入脚本,以保证样本的丰富性。
在具体实施时,在进行样本采集过程中,需要建立目标数据库,该目标数据库用于存储所采集到的正样本、XSS攻击样本与SQL注入样本;并且每间隔预设时间段对该目标数据库进行更新。
S202、对所述正样本、XSS攻击样本与SQL注入样本分别进行数据结构化处理;
首先对上述的正样本、XSS攻击样本与SQL注入样本数据进行标记,将数据分为三类,示例性地,将url正样本标记为0,将SQL注入样本标记为1,将XSS攻击样本标记为2,之后对数据进行结构化处理,具体的,先将统一资源定位符解码,以使不同的统一资源定位符具有统一的编码格式,再进行将统一资源定位符更改超链接,更改数字,将所有字母改为小写等操作。
S203、对进行数据结构化处理后的所述正样本、XSS攻击样本与SQL注入样本进行分词处理,得到词向量;
具体的,针对XSS攻击样本主要按照以下内容进行分词:单双引号包含的内容,http/https链接,<>标签<script>,<>开头<h1,参数名topic=,函数体alert(,字符数字组成的单词。
针对于SQL注入样本按照符号进行分词,包括:“(”,“)”,“”,“%”,“?”。
在上述分词之后将分词结果利用word2vec构建词向量,优选地,构建50维的词向量。
S204、建立神经网络,加入concat层,将多维输出融合后,加入Softmax函数;
S205、基于所述词向量对所述神经网络按照设定的次数进行训练;
将上述得到的词向量输入到神经网络中,并进行训练神经网络;示例性地,设定的训练次数为50000次,每训练50000次后将模型输出。最终得到的LSTM网络架构如图3a所示,包括输入层、隐层和输出层,并加入了concat层和softmax函数。
上述得到的LSTM网络架构展开的模式参照图3b所示,其中,Xt-1、Xt、Xt+1为输入,将向量输入至神经网络模型以后,分别得到数据输出Ot-1、Ot、Ot+1,St-1、St、St+1为神经元;具体的,神经元的内部格式参照图3c所示,主要有三个分支组成,左侧第一个分支决定了要遗忘的元素,在图中的左半部分;中间为第二个分支,用于进行对遗忘的函数更新;最右侧为第三个分支,用于决定输出。
S206、从训练后的神经网络中选取准确率最高的神经网络作为最终得到的神经网络模型。
上述每次训练过程都会得到一个神经网络模型,以准确率为标准进行选择,选择准确率最高的神经网络作为最终得到的神经网络模型。
本发明实施例中所提供的方法,当接收到网络访问请求时,该访问请求中包含有统一资源定位符,对输入的统一资源定位符进行结构化处理并进行分词和转化为词向量,将词向量带入上述的LSTM网络模型中进行计算,输出计算结果;具体的,如果得到的输出为0,则判断该访问则为正常访问,此时可以允许访问;如果得到的输出为1,则判断为XSS攻击;此时禁止访问;如果得到的输出为2,则判断为SQL注入攻击,此时禁止访问。
本发明实施例中所提供的网络攻击检测方法,LSTM(Long Short-Term Memory)是一种在深度学习中广泛使用的学习网络,其多用于序列化数据。相对于RNN(RecurrentNeural Networks),LSTM通过一个控制单元可以对过去的序列进行选择性记忆,以便保持良好的性能,同时他也具有可以减少梯度消失以及梯度爆炸的问题。通过对LSTM网络的输出层进行改进,将输出层之后增加concat函数合并多维输出,并且在这之后加入Softmax函数,即可将LSTM网络改进为一种可以实现多分类的网络,从而可同时实现对XSS攻击以及SQL注入攻击检测的识别,准确率高,从而实现网络多攻击检测,进而可以保证网站的安全性。
本发明的另一个实施例中提供了一种网络攻击检测装置,参照图4所示,包括:
接收模块301,用于接收用户输入的网站访问请求,所述网站访问请求中包含有待访问页面的统一资源定位符;
数据预处理模块302,用于对所述统一资源定位符进行数据预处理,转化为词向量;
确定模块303,用于调用预先建立并训练好的神经网络模型,根据所述词向量和所述神经网络模型进行确定所述网站访问请求是否为网络攻击。
优选地,参照图5所示,上述的装置,还包括:神经网络模型建立模块401,所述神经网络模型建立模块401,用于通过以下方式预先建立神经网络模型:
采集正样本、XSS攻击样本与SQL注入样本;
对所述正样本、XSS攻击样本与SQL注入样本分别进行数据结构化处理;
对进行数据结构化处理后的所述正样本、XSS攻击样本与SQL注入样本进行分词处理,得到词向量;
建立神经网络,加入concat层,将多维输出融合后,加入Softmax函数;
基于所述词向量对所述神经网络按照设定的次数进行训练;
从训练后的神经网络中选取准确率最高的神经网络作为最终得到的神经网络模型。
所述神经网络模型建立模块,具体通过以下方式进行采集XSS攻击样本:
从渗透测试工具xssed中爬取XSS攻击样本;
和/或,
从开源代码库GitHub中检索XSS攻击样本。
所述神经网络模型建立模块,具体通过以下方式进行采集SQL注入样本:
通过使用SQLmap脚本得到SQL注入样本。
所述神经网络模型建立模块,具体通过以下方式对所述正样本、XSS攻击样本与SQL注入样本分别进行数据结构化处理:
对所述正样本、XSS攻击样本与SQL注入样本分别进行标记后,进行结构化处理,使所有样本数据的编码格式统一。
本发明实施例所提供的进行网络攻击检测方法的计算机程序产品,包括存储了程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行前面方法实施例中所述的方法,具体实现可参见方法实施例,在此不再赘述。
本发明实施例所提供的网络攻击检测的装置可以为设备上的特定硬件或者安装于设备上的软件或固件等。本发明实施例所提供的装置,其实现原理及产生的技术效果和前述方法实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,前述描述的系统、装置和单元的具体工作过程,均可以参考上述方法实施例中的对应过程,在此不再赘述。
在本发明所提供的实施例中,应该理解到,所揭露装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明提供的实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释,此外,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
最后应说明的是:以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围。都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
Claims (8)
1.一种网络攻击检测方法,其特征在于,包括:
接收用户输入的网站访问请求,所述网站访问请求中包含有待访问页面的统一资源定位符;
对所述统一资源定位符进行数据预处理,转化为词向量;
调用预先建立并训练好的神经网络模型,根据所述词向量和所述神经网络模型进行确定所述网站访问请求是否为网络攻击以及网络攻击的类型;
其中,所述神经网络模型为通过以下方式预先建立和训练的:
采集正样本、XSS攻击样本与SQL注入样本;
对所述正样本、XSS攻击样本与SQL注入样本分别进行数据结构化处理;
对进行数据结构化处理后的所述正样本、XSS攻击样本与SQL注入样本进行分词处理,得到词向量;
建立神经网络,加入concat层,将多维输出融合后,加入Softmax函数;
基于所述词向量对所述神经网络按照设定的次数进行训练;
从训练后的神经网络中选取准确率最高的神经网络作为最终得到的神经网络模型。
2.根据权利要求1所述的方法,其特征在于,所述采集XSS攻击样本,包括:
从渗透测试工具xssed中爬取XSS攻击样本;
和/或,
从开源代码库GitHub中检索XSS攻击样本。
3.根据权利要求1或2所述的方法,其特征在于,所述采集SQL注入样本,包括:
通过使用SQLmap脚本得到SQL注入样本。
4.根据权利要求1或2所述的方法,其特征在于,所述对所述正样本、XSS攻击样本与SQL注入样本分别进行数据结构化处理,包括:
对所述正样本、XSS攻击样本与SQL注入样本分别进行标记后,进行结构化处理,使所有样本数据的编码格式统一。
5.一种网络攻击检测装置,其特征在于,包括:
接收模块,用于接收用户输入的网站访问请求,所述网站访问请求中包含有待访问页面的统一资源定位符;
数据预处理模块,用于对所述统一资源定位符进行数据预处理,转化为词向量;
确定模块,用于调用预先建立并训练好的神经网络模型,根据所述词向量和所述神经网络模型进行确定所述网站访问请求是否为网络攻击;
神经网络模型建立模块,用于通过以下方式预先建立神经网络模型:
采集正样本、XSS攻击样本与SQL注入样本;
对所述正样本、XSS攻击样本与SQL注入样本分别进行数据结构化处理;
对进行数据结构化处理后的所述正样本、XSS攻击样本与SQL注入样本进行分词处理,得到词向量;
建立神经网络,加入concat层,将多维输出融合后,加入Softmax函数;
基于所述词向量对所述神经网络按照设定的次数进行训练;
从训练后的神经网络中选取准确率最高的神经网络作为最终得到的神经网络模型。
6.根据权利要求5所述的装置,其特征在于,所述神经网络模型建立模块,具体通过以下方式进行采集XSS攻击样本:
从渗透测试工具xssed中爬取XSS攻击样本;
和/或,
从开源代码库GitHub中检索XSS攻击样本。
7.根据权利要求5或6所述的装置,其特征在于,所述神经网络模型建立模块,具体通过以下方式进行采集SQL注入样本:
通过使用SQLmap脚本得到SQL注入样本。
8.根据权利要求5或6所述的装置,其特征在于,所述神经网络模型建立模块,具体通过以下方式对所述正样本、XSS攻击样本与SQL注入样本分别进行数据结构化处理:
对所述正样本、XSS攻击样本与SQL注入样本分别进行标记后,进行结构化处理,使所有样本数据的编码格式统一。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810044684.3A CN108259494B (zh) | 2018-01-17 | 2018-01-17 | 一种网络攻击检测方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810044684.3A CN108259494B (zh) | 2018-01-17 | 2018-01-17 | 一种网络攻击检测方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108259494A CN108259494A (zh) | 2018-07-06 |
CN108259494B true CN108259494B (zh) | 2020-10-02 |
Family
ID=62741765
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810044684.3A Active CN108259494B (zh) | 2018-01-17 | 2018-01-17 | 一种网络攻击检测方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108259494B (zh) |
Families Citing this family (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109271526A (zh) * | 2018-08-14 | 2019-01-25 | 阿里巴巴集团控股有限公司 | 文本检测方法、装置、电子设备及计算机可读存储介质 |
CN109194635A (zh) * | 2018-08-22 | 2019-01-11 | 杭州安恒信息技术股份有限公司 | 基于自然语言处理与深度学习的恶意url识别方法及装置 |
CN108712453A (zh) * | 2018-08-30 | 2018-10-26 | 杭州安恒信息技术股份有限公司 | 基于逻辑回归算法的注入攻击检测方法、装置和服务器 |
CN109308494B (zh) * | 2018-09-27 | 2021-06-22 | 厦门服云信息科技有限公司 | Lstm模型及基于该模型的网络攻击识别方法及系统 |
CN109388943A (zh) * | 2018-09-29 | 2019-02-26 | 杭州时趣信息技术有限公司 | 一种识别xss攻击的方法、装置和计算机可读存储介质 |
CN109698823B (zh) * | 2018-11-29 | 2021-05-07 | 广东电网有限责任公司信息中心 | 一种网络威胁发现方法 |
CN109670307A (zh) * | 2018-12-04 | 2019-04-23 | 成都知道创宇信息技术有限公司 | 一种基于cnn和海量日志的sql注入识别方法 |
CN109766693A (zh) * | 2018-12-11 | 2019-05-17 | 四川大学 | 一种基于深度学习的跨站脚本攻击检测方法 |
CN109818954B (zh) * | 2019-01-22 | 2021-08-13 | 深信服科技股份有限公司 | Web注入型攻击检测方法、装置、电子设备及存储介质 |
CN110808968B (zh) * | 2019-10-25 | 2022-02-11 | 新华三信息安全技术有限公司 | 网络攻击检测方法、装置、电子设备和可读存储介质 |
CN113158182A (zh) * | 2020-01-07 | 2021-07-23 | 深信服科技股份有限公司 | 一种web攻击检测方法、装置及电子设备和存储介质 |
CN111277603B (zh) * | 2020-02-03 | 2021-11-19 | 杭州迪普科技股份有限公司 | 无监督异常检测系统和方法 |
CN111585979B (zh) * | 2020-04-22 | 2020-12-18 | 广州锦行网络科技有限公司 | 一种基于网络映射的复杂多构网络隔离技术实现方法 |
CN111885000B (zh) * | 2020-06-22 | 2022-06-21 | 网宿科技股份有限公司 | 一种基于图神经网络的网络攻击检测方法、系统及装置 |
CN112261045A (zh) * | 2020-10-22 | 2021-01-22 | 广州大学 | 一种基于攻击原理的网络攻击数据自动生成方法及系统 |
CN113051559A (zh) * | 2021-03-22 | 2021-06-29 | 山西三友和智慧信息技术股份有限公司 | 基于分布式深度学习的边缘设备web攻击检测系统及方法 |
CN112966507B (zh) * | 2021-03-29 | 2024-09-13 | 北京金山云网络技术有限公司 | 构建识别模型及攻击识别方法、装置、设备及存储介质 |
CN113259207B (zh) * | 2021-07-13 | 2021-09-21 | 中国人民解放军国防科技大学 | 基于qrnn的有状态网络协议模糊测试用例过滤方法 |
CN113691542B (zh) * | 2021-08-25 | 2023-04-28 | 中南林业科技大学 | 基于HTTP请求文本的Web攻击检测方法及相关设备 |
CN114285641B (zh) * | 2021-12-24 | 2024-04-05 | 中国电信股份有限公司 | 网络攻击检测方法及装置、电子设备、存储介质 |
CN114598526B (zh) * | 2022-03-07 | 2023-08-18 | 四川大学 | 结构化查询语言注入检测方法 |
CN116668089B (zh) * | 2023-05-11 | 2024-04-16 | 齐齐哈尔大学 | 基于深度学习的网络攻击检测方法、系统及介质 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102821002B (zh) * | 2011-06-09 | 2015-08-26 | 中国移动通信集团河南有限公司信阳分公司 | 网络流量异常检测方法和系统 |
US10976907B2 (en) * | 2014-09-26 | 2021-04-13 | Oracle International Corporation | Declarative external data source importation, exportation, and metadata reflection utilizing http and HDFS protocols |
CN106131071B (zh) * | 2016-08-26 | 2019-06-04 | 北京奇虎科技有限公司 | 一种Web异常检测方法和装置 |
CN107241352B (zh) * | 2017-07-17 | 2020-01-21 | 浙江鹏信信息科技股份有限公司 | 一种网络安全事件分类与预测方法及系统 |
CN107483458A (zh) * | 2017-08-29 | 2017-12-15 | 杭州迪普科技股份有限公司 | 网络攻击的识别方法及装置、计算机可读存储介质 |
-
2018
- 2018-01-17 CN CN201810044684.3A patent/CN108259494B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN108259494A (zh) | 2018-07-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108259494B (zh) | 一种网络攻击检测方法及装置 | |
CN110808968B (zh) | 网络攻击检测方法、装置、电子设备和可读存储介质 | |
Li et al. | Attribution classification method of APT malware in IoT using machine learning techniques | |
Zhang et al. | A deep learning method to detect web attacks using a specially designed CNN | |
Buber et al. | NLP based phishing attack detection from URLs | |
CN111585955B (zh) | 一种http请求异常检测方法及系统 | |
Wang et al. | Machine learning based cross-site scripting detection in online social network | |
Liu et al. | GraphXSS: an efficient XSS payload detection approach based on graph convolutional network | |
Yoo et al. | Two-phase malicious web page detection scheme using misuse and anomaly detection | |
Barlow et al. | A novel approach to detect phishing attacks using binary visualisation and machine learning | |
Madhubala et al. | Survey on malicious URL detection techniques | |
CN108509794A (zh) | 一种基于分类学习算法的恶意网页防御检测方法 | |
Mythreya et al. | Prediction and prevention of malicious URL using ML and LR techniques for network security: machine learning | |
CN114357443A (zh) | 基于深度学习的恶意代码检测方法、设备与存储介质 | |
Tang et al. | SQL injection behavior mining based deep learning | |
Shyni et al. | Phishing detection in websites using parse tree validation | |
Gupta et al. | GeneMiner: a classification approach for detection of XSS attacks on web services | |
CN113067792A (zh) | 一种xss攻击识别方法、装置、设备及介质 | |
Montaruli et al. | Raze to the ground: Query-efficient adversarial html attacks on machine-learning phishing webpage detectors | |
CN109684844B (zh) | 一种webshell检测方法、装置以及计算设备、计算机可读存储介质 | |
CN108875374B (zh) | 基于文档节点类型的恶意pdf检测方法及装置 | |
Patil et al. | Learning to detect phishing web pages using lexical and string complexity analysis | |
Vigneshwaran et al. | Multidimensional features driven phishing detection based on deep learning | |
CN118103839A (zh) | 用于检测可疑网络活动的随机字符串分类 | |
Kaibassova et al. | Solving the Problem of Detecting Phishing Websites Using Ensemble Learning Models |
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 |