1.一种基于深度学习动态靶场特征融合的sql攻击识别方法,其特征在于包括如下步骤:
2.根据权利要求1所述的sql攻击识别方法,其特征在于:所述步骤s1中,采用phpstudy工具建立仿真环境,搭建本地sqli-libs靶场服务器,采用sqlmap接口函数对本地靶场服务器中web应用程序进行探测和扫描,利用sqlmap自动化工具模拟自动执行sql注入攻击,并通过wireshark抓包工具捕获真实有效的注入数据,获得注入攻击样本。
3.根据权利要求1所述的sql攻击识别方法,其特征在于:所述步骤s2中对s1获取的注入攻击样本数据包中的加密数据进行识别解码,对注入攻击样本数据依次判断是否属于base64解码格式和unicode解码格式,并进行解码转化为utf-8编码格式输出注入攻击语句文本,并对输出的注入攻击语句文本进行简化处理,将其中的十进制数字转化为0×12,日期和时间替换为1-1-1,重写的关键字只保留一个,删除注入攻击语句中的噪音字符。
4.根据权利要求3所述的sql攻击识别方法,其特征在于:所述步骤s2采用空格分割法对解码后的注入攻击语句进行分词处理,将sql注入攻击语句划分为字符串序列,在字符串序列前后添加空格。
5.根据权利要求1所述的sql攻击识别方法,其特征在于:所述步骤s3中,所述词频文本频率指数通过下式计算:
6.根据权利要求5所述的sql攻击识别方法,其特征在于:所述superterm_vector词向量算法将注入攻击语句中每个词表示一个向量,将输入的文本数据映射到多维空间,包括如下过程:
7.根据权利要求6所述的sql攻击识别方法,其特征在于:对于注入攻击语句中的每个单词,将其对应的空间词向量与tf—idf相乘,得到每个单词的加权词向量v′w,注入攻击语句的平均加权词向量表示为n表示注入攻击语句包含的词数量,w表示注入攻击语句中包含的单词,d表示注入攻击语句,以注入攻击语句的平均加权词向量作为数值向量特征对lc-cnn模型进行分类模型训练。
8.根据权利要求1所述的sql攻击识别方法,其特征在于:所述步骤s4中,所述卷积层采用relu函数作为激活函数,所述全连接层采用sigmoid函数作为激活函数,所述扁平化层采用tanh函数作为激活函数。
9.根据权利要求7所述的sql攻击识别方法,其特征在于:所述lc-cnn模型添加model.compile()函数用于定义模型的优化器、损失函数和评估指标,所述优化器采用adam优化器,所述损失函数使用二元交叉熵,所述评估指标包括确率、f1值以及混淆矩阵,分类模型多次迭代训练过程中通过确定最高分类准确率的迭代来确定最优模型参数设置。
10.一种基于深度学习动态靶场特征融合的sql攻击识别系统,其特征在于,包括: