深度学习网络安全

article/2025/9/21 12:55:43

Introduction

我们在社区中看到的大多数深度学习应用程序通常面向营销,销售,财务等领域。我们几乎从未阅读过文章或找到有关深度学习的资源用于保护这些产品和业务, 恶意软件和黑客攻击。

虽然像谷歌,Facebook,微软和Salesforce这样的大型科技公司已经深入学习了他们的产品,但网络安全行业仍在追赶。 这是一个具有挑战性的领域,但需要我们全力关注。
在这里插入图片描述

在本文中,我们将简要介绍深度学习(DL)以及它支持的一些现有信息安全(此处称为InfoSec)应用程序。 然后,我们深入研究了匿名交通检测的有趣问题,并提出了一种基于DL的解决方案来检测TOR流量。

本文的目标读者是已经从事机器学习项目的数据科学专业人员。 本文的内容假定您具有机器学习的基础知识,目前要么是初学者,要么是探索,深度学习和它的用例。

强烈建议使用以下预读取以充分利用本文:

Demystifying Information Security using Data Science
Fundamentals of Deep Learning – Activation Functions and When to use them?

目录

InfoSec中深度学习系统的现状
前馈神经网络简述
案例研究:使用深度学习进行Tor流量检测
数据实验 - Tor流量检测

InfoSec中深度学习系统的现状

深度学习不是解决所有InfoSec问题的灵丹妙药,因为它需要广泛的标记数据集。不幸的是,没有这样的标记数据集是容易获得的。但是,有几个InfoSec用例,深度学习网络正在对现有解决方案进行重大改进。恶意软件检测和网络入侵检测是两个这样的领域,深度学习已经显示出比基于规则和经典机器学习的解决方案的显着改进。

网络入侵检测系统通常是基于规则和基于签名的控制,部署在外围以检测已知威胁。攻击者可以更改恶意软件签名,轻松逃避传统的网络入侵检测系统。 Quamar等人。 [1],在他们的IEEE交易文件中,展示了使用自学式学习的深度学习(DL)系统在检测未知网络入侵方面很有前途。传统的安全用例,如恶意软件检测和间谍软件检测,已经被基于神经网络的深层系统所解决[2]。
在这里插入图片描述

与传统的基于ML的方法相比,基于DL的技术的泛化能力更好。 Jung等人[3]基于DL的系统甚至可以检测零日恶意软件。 Daniel Gibert [2],博士。毕业于巴塞罗那大学,从事卷积神经网络(CNN,一种DL架构)和恶意软件检测方面的大量工作。在他的博士学位他说,CNN可以检测甚至多态恶意软件。

基于DL的神经网络现在正在用户和实体行为分析(UEBA)中使用。传统上,UEBA采用异常检测和机器学习算法,这些算法提取安全事件以分析和基线化企业IT环境中的每个用户和网络元素。任何与基线的重大偏差都会被触发为异常,进一步引发安全分析师调查警报。 UEBA增强了对内部威胁的检测,尽管程度有限。

现在,基于深度学习的系统被用于检测许多其他类型的异常。来自波兰华沙大学的PawełKobojek[4]使用击键动力学来验证使用LSTM网络的用户。 Capital One安全数据工程总监Jason Trost发表了几篇博客[5],其中列出了有关在InfoSec中应用深度学习的技术论文和演讲。

前馈神经网络简介

人工神经网络的灵感来自生物神经网络。神经元是生物神经网络的原子单元。每个神经元由树突,细胞核和轴突组成。它通过树突接收信号,并通过轴突进行(图1)。计算在核中进行。整个网络由一系列神经元组成。

人工智能研究人员借用这个想法来开发人工神经网络(ANN)。在此设置中,每个神经元完成三个动作:

  • 它以加权方式累积来自各种其他神经元或输入的输入
  • 它总结了所有输入信号
  • 基于求和值,它调用激活函数

因此,每个神经元可以分类一组输入是属于一个类还是另一个类。当仅使用单个神经元时,该功率受到限制。然而,创造一组神经元使其成为分类和序列标记任务的强大机制。

在这里插入图片描述

图1:我们可以获得的最大灵感来自自然 - 图中描绘了一个生物神经元和一个人工神经元。

一组神经元层可用于创建神经网络。 网络架构根据其需要实现的目标而不同。 常见的网络架构是前馈神经网络(FFN)。 神经元线性排列而没有任何循环以形成FFN。 它被称为前馈,因为信息在网络内部向前传播,首先通过输入神经元层,然后通过隐藏的神经元层,以及输出神经元层(图2)。

在这里插入图片描述

图2:具有两个隐藏层的前馈网络

与任何受监督的机器学习模型一样,FFN需要使用标记数据进行训练。训练的形式是通过减少输出值和真值之间的误差来优化参数。要优化的一个这样的重要参数是每个神经元给予其每个输入信号的权重。对于单个神经元,可以使用误差容易地计算权重。

然而,当在多个层中整理一组神经元时,基于在输出层计算的误差来优化多个层中的神经元权重是具有挑战性的。反向传播算法有助于解决这个问题[6]。反向传播是一种旧技术,属于计算机代数的分支。这里,自动微分用于计算在网络中使用的权重的计算中所需的梯度。

在FFN中,基于每个链接神经元的激活,获得输出。错误是逐层传播的。基于输出与最终结果的正确性,计算误差。然后将该错误反过来传播以修复内部神经元的错误。对于每个数据实例,通过多次迭代来优化参数。

案例研究:使用深度学习进行Tor流量检测

网络攻击的主要目标是窃取企业客户数据,销售数据,知识产权文档,源代码和软件密钥。攻击者将被盗数据与常规流量一起泄露到加密流量中的远程服务器。

大多数情况下,攻击者使用匿名网络,使安全防御者难以追踪流量。此外,渗透的数据通常是加密的,使基于规则的网络入侵工具和防火墙无效。最近,匿名网络也被用于勒索软件/恶意软件的特定变体的C&C。例如,Onion Ransomware [7]使用TOR网络与其C&C进行通信。

在这里插入图片描述
图3:Alice和目标服务器之间的TOR通信的图示。通信开始于Alice请求到服务器的路径。 TOR网络给出了AES加密的路径。路径的随机化发生在TOR网络内部。数据包的加密路径以红色显示。在到达作为TOR网络的外围节点的出口节点时,普通分组被传送到服务器。

匿名网络/流量可以通过各种方式完成。它们大致可分为:

  • 基于网络(TOR,I2P,Freenet)
  • 基于自定义操作系统(子图OS,Freepto)

其中,TOR是最受欢迎的选择之一。 TOR是一款免费软件,可通过称为洋葱路由协议的专用路由协议在互联网上进行匿名通信[9]。该协议依赖于重定向全球各种免费托管中继的互联网流量。在中继期间,与洋葱皮的层一样,每个HTTP包使用接收器的公钥加密。

在每个接收点,可以使用私钥解密分组。在解密时,显示下一个目的地中继地址。这继续直到满足TOR网络的退出节点,其中分组的解密结束,并且普通HTTP分组被转发到原始目的地服务器。在上面的图3中描绘了Alice和服务器之间的示例路由方案以用于说明。

启动TOR的最初目的是保护用户的隐私。然而,对手劫持了撒玛利亚人的良好目标,将其用于各种邪恶手段。截至2016年,约有20%的Tor流量涉及非法活动。在企业网络中,通过不允许安装TOR客户端或阻止Guard或Entry节点IP地址来确定TOR流量。

但是,攻击者和恶意软件可以通过多种方式访问​​TOR网络以传输数据和信息。 IP阻止策略不是一个合理的策略。攻击者可以产生不同的IP来进行通信。蒸馏网络[5]报告的糟糕机器人景观报告显示,2015年70%的自动攻击使用多个IP,20%的自动攻击使用了100多个IP。

可以通过分析流量包来检测TOR流量。此分析可以在TOR节点上,也可以在客户端和入口节点之间。分析是在单个数据包流上完成的。每个流构成源地址,源端口,目标地址和目标端口的元组。

提取不同时间间隔的网络流并对其进行分析。 G. He等人。在他们的论文“从Tor加密流量中推断应用程序类型信息”提取突发卷和方向以创建HMM模型以检测可能正在生成的TOR应用程序那个交通。该领域的大多数流行作品都利用基于时间的功能以及大小和端口信息等其他功能来检测TOR流量。

我们从Habibi等[使用基于时间的特征的Tor流量特征描述]论文中获取灵感,并对提取的网络流量采用基于时间的方法来检测TOR流量对于这篇文章。但是,我们的架构使用了大量其他元信息,可以获取这些元信息来对流量进行分类。这本质上是由于选择了解决此问题的深度学习架构。

数据实验 - Tor流量检测

我们从Habibi Lashkari等人那里获得了数据。 [11]在新不伦瑞克大学进行本文所做的数据实验。他们的数据包括从大学互联网流量分析中提取的功能。从数据中提取的元信息如下表所示:

在这里插入图片描述

除了这些参数之外,还包括其他基于流量的参数。 数据集中的示例实例如下面的图4所示:
在这里插入图片描述
图4:本文使用的数据集实例。

请注意,源IP /端口和目标IP /端口以及协议字段已从实例中删除,因为它们过度匹配模型。 我们使用具有N个隐藏层的深度前馈神经网络处理所有其他特征。 神经网络的架构如下图5所示。
在这里插入图片描述
图5:用于TOR流量检测的深度学习网络表示。

隐藏层在2到10之间变化。我们发现N = 5是最佳的。 对于激活,Relu用于所有隐藏层。 隐藏层的每一层都是密集的,尺寸为100。

model = Sequential()
model.add(Dense(feature_dim, input_dim= feature_dim, kernel_initializer='normal', activation='relu'))
for _ in range(0, hidden_layers-1):model.add(Dense(neurons_num, kernel_initializer='normal', activation='relu'))
model.add(Dense(1,kernel_initializer='normal', activation='sigmoid'))
model.compile(optimizer='adam', loss='binary_crossentropy', metrics=["accuracy"])

图6:Keras中FFN的Python代码片段。

输出节点由sigmoid函数激活。 这被用作输出的二进制分类–Tor或Non-Tor。

我们在后端使用带有Tensorflow的Keras来训练DL模块。 二元交叉熵损失用于优化FFN。 该模型针对不同的时期进行了训练。 下面的图7显示了一个运行的训练模拟,描绘了随着时期数量增加而增加的性能和减少的损失值。
在这里插入图片描述

图7:Tensorboard生成的静态描述网络培训过程

深度学习系统的结果与其他各种估算器进行了比较。 Recall,Precision和F-Score的标准分类指标用于衡量估计量的效果。 我们基于DL的系统能够很好地检测TOR类。 但是,我们需要更加重视Non-Tor类。 可以看出,基于深度学习的系统可以减少非Tor类别样本的误报情况。 结果如下表所示:

在这里插入图片描述
在各种分类器中,基于随机森林和深度学习的方法比其他方法表现更好。 显示的结果基于55,000个训练实例。 本实验中使用的数据集比典型的基于DL的系统要小。 随着训练数据的增加,基于DL和随机森林分类器的性能将进一步提高。

但是,对于大型数据集,基于DL的分类器通常优于其他分类器,并且可以针对相似类型的应用程序进行推广。 例如,如果需要训练分类器来检测TOR使用的应用程序,那么只有输出层需要重新训练,并且所有其他层可以保持相同。 而其他ML分类器将需要针对整个数据集进行再训练。 请记住,重新训练模型可能会占用大型数据集的大量计算资源。

End Notes

匿名流量检测是每个企业面临的细微挑战。 攻击者使用TOR通道以匿名模式泄露数据。 当前流量检测供应商的方法依赖于阻塞TOR网络的已知入口节点。 这不是一种可扩展的方法,可以轻松绕过。 通用方法是使用基于深度学习的技术。

在本文中,我们提出了一个基于深度学习的系统来检测具有高召回率和精确度的TOR流量。 请在下面的评论部分中了解您对当前深度学习状态的看法,或者您是否有其他替代方法。

References

[1]: Quamar Niyaz, Weiqing Sun, Ahmad Y Javaid, and Mansoor Alam, “A Deep Learning Approach for Network Intrusion Detection System,” IEEE Transactions on Emerging Topics in Computational Intelligence, 2018.
[2]: Daniel Gibert, [“Convolutional Neural Networks for Malware Classification,”] (http://www.covert.io/research-papers/deep-learning-security/Convolutional Neural Networks for Malware Classification.pdf)Thesis 2016.
[3]: Wookhyun Jung, Sangwon Kim, Sangyong Choi, “Deep Learning for Zero-day Flash Malware Detection,” IEEE security, 2017.
[4]: Paweł Kobojek and Khalid Saeed, “Application of Recurrent Neural Networks for User
Verification based on Keystroke Dynamics,” Journal of telecommunications and information technology, 2016.
[5]:Deep Learning Security Papers, http://www.covert.io/the-definitive-security-datascience-and-machinelearning-guide/#deep-learning-and-security-papers, accessed on May 2018.
[6]: “Deep Learning,” Ian Goodfellow, Yoshua Bengio, Aaaron Courville; pp 196, MIT Press, 2016.
[7]: “The Onion Ransomware,” https://www.kaspersky.co.in/resource-center/threats/onion-ransomware-virus-threat, Retrieved on November 29, 2017.
[8]: “5 best alternative to TOR.,” https://fossbytes.com/best-alternatives-to-tor-browser-to-browse-anonymously/, Retrieved on November 29,2017.
[9]: Tor. Wikipedia., https://en.wikipedia.org/wiki/Tor_(anonymity_network), Retrieved on November 24, 2017.
[10]: He, G., Yang, M., Luo, J. and Gu, X., “ Inferring Application Type Information from Tor Encrypted Traffic,” Advanced Cloud and Big Data (CBD), 2014 Second International Conference on (pp. 220-227), Nov. 2014.
[11]: Habibi Lashkari A., Draper Gil G., Mamun M. and Ghorbani A., “Characterization of Tor Traffic using Time based Features,” Proceedings of the 3rd International Conference on Information Systems Security and Privacy – Volume 1, pages 253-262, 2017.
[13]: Juarez, M., Afroz, S., Acar, G., Diaz, C. and Greenstadt, R., “A critical evaluation of website fingerprinting attacks,” Proceedings of the 2014 ACM SIGSAC Conference on Computer and Communications Security (pp. 263-274), November 2014
[14]: Bai, X., Zhang, Y. and Niu, X., “Traffic identification of tor and web-mix,” Intelligent Systems Design and Applications, ISDA’08. Eighth International Conference on (Vol. 1, pp. 548-551). IEEE, November 2008


http://chatgpt.dhexx.cn/article/Z4AlZnMp.shtml

相关文章

网络安全法学习整理笔记

网络安全法 一、背景 概念 网络:是指由计算机或者其他信息终端及相关设备组成的按照一定的规则和程序对信息进行收集、存储、传输、交换、处理的系统。网络安全:是指通过采取必要措施,防范对网络的攻击、侵入、干扰、破坏和非法使用以及意…

网络安全免费学习网址(英文)

转载 作者:W-Pwn 链接:https://www.zhihu.com/question/49222590/answer/339206050 来源:知乎 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。 知识就是力量 但是知识太贵了,现在随便拎…

【论文阅读】基于强化学习的网络安全防护策略

【论文阅读】基于强化学习的网络安全防护策略 本篇文章将介绍一篇针对网络安全问题,运用强化学习方法寻找最优的网络防御策略。 Finding Effective Security Strategies through Reinforcement Learning and Self-Play 前言 通过强化学习和 自对弈(self-play) 寻…

还在为不知道怎么学习网络安全而烦恼吗?这篇文带你从入门级开始学习网络安全—认识网络安全

随着网络安全被列为国家安全战略的一部分,这个曾经细分的领域发展提速了不少,除了一些传统安全厂商以外,一些互联网大厂也都纷纷加码了在这一块的投入,随之而来的吸引了越来越多的新鲜血液不断涌入。 不同于Java、C/C等后端开发岗…

[网络安全自学篇] 一.入门笔记之看雪Web安全学习及异或解密示例

最近开始学习网络安全相关知识,接触了好多新术语,感觉自己要学习的东西太多,真是学无止境,也发现了好几个默默无闻写着博客、做着开源的大神。准备好好学习下新知识,并分享些博客与博友们一起进步,加油。非…

码农翻身,卧虎藏龙

写公众号是很不容易的,在现在信息爆炸的情况下,好文章也很容易被标题党埋没,在我的知识星球“码农翻身”中,我发起了一个活动:免费给写公众号的球友们做个推广。 这个不是互推,就是我单方面的推广&#xf…

现在转行码农的成本已经非常高了,别盲目转行..

转行码农一直是个比较火热的话题,也有很多读者咨询过这个问题,转成功的也不少,比如下面这位香港的同学: 这位朋友半年前就跟我聊过,他不太想干没有技术含量的体力活,一直在坚持自学,这也算如愿…

农村出身的 90 后程序员,如何逆袭为中产阶级?| 程序员有话说

作者 | 阿文 责编 | 伍杏玲 出品 | 程序人生(ID:coder_life) 小蔡, 90 年 10 月出生,Java开发工程师,目前就职于杭州滨江某知名互联网公司从事云计算开发工作,2013 年毕业就从山东来到了杭州。 …

【一哥闲聊】程序员如何打破35岁魔咒

公众号推文规则变了,点击上方 "数据社"关注, 设为星标 后台回复【加群】,申请加入数据学习交流群 大家好,我是一哥。今天跟大家聊聊程序员35岁以后的方向怎么选? 作为程序员,行业内一直流传着35岁的魔咒&…

码农翻身(随笔)

书一直都有在读,我会一直更新博文,欢迎大家前来阅读、指教! XML和注解 xml:应用于集中配置的场合,比如数据源的配置; 注解:像Controller、RequestMapping、Transactional这样的注解&#xff…

读《码农翻身》有感

前几日偶得一本《码农翻身》,闲来品读,收获颇丰。 作者刘欣老师可能是码农中故事讲得最好的人,能把线程,进程,死锁这种概念讲成计算机内部王国漫游记,能把分布式事务这种高级概念讲成java王国中的权贵大臣勾…

告别码农,成为真正的程序员

本文是我借助 Google 从网上拼凑的文章,可能条理不是很清晰,希望对广大程序员们有些帮助。 一、成长的寓言:做一棵永远成长的苹果树 一棵苹果树,终于结果了。 第一年,它结了10个苹果,9个被拿走,…

达到年薪百万,就算码农翻身了吗?

上周末有个小伙伴问我:码农怎么样才能真正地翻身? 我自己都没有翻身,更没有达到财务自由, 回答这样的问题显然是力不从心的。 (郑渊洁对财务自由的定义:从现在开始不工作,能保持现在的生活水平不…

《码农翻身》之技术之路

《码农翻身》读书笔记之技术之路 这是我的后端读书笔记系列文章的第四三篇,选取的是最近刚刚圈粉的知名博主刘欣创作的《码农翻身》。这篇文章只是最后一部分内容。 本文内容主要根据知名博主刘欣一作《码农翻身》的内容总结而来,本书的内容风趣幽默&a…

给大忙人看的码农翻身记

码农翻身记个人读后感 文章目录 码农翻身记个人读后感本书介绍大纲启发分享个人的能力欠缺的地方书中比较棒的建议 本书介绍 《码农翻身》用故事的方式讲解了软件编程的若干重要领域,侧重于基础性、原理性的知识。 非常适合刚入门大学生或者 计算机领域入行 一两年左…

码农翻身之编程语言的巅峰

“哇塞,怎么可能这么简单!” 当C语言老头儿还是小伙子的时候,第一次见到了汇编,发出了这么一声感慨。 在C语言看来,这汇编的指令实在是太简单了,简单到了令人发指的地步,只有这么几类指令&…

《码农翻身》

大话编程 我是一个线程 我是一个Java class Javascript: 一个屌丝的逆袭 Java:一个帝国的诞生 JSP:一个装配工的没落 TCP/IP 之 大明王朝的邮差 TCP/IP 之 大明内阁 TCP/IP 之 蓟辽督师 CPU 阿甘 CPU 阿甘之烦恼 CPU 阿甘:函数调用的秘密 我是一个网卡 …

码农翻身 各章节链接

大话编程 我是一个线程 我是一个Java class Javascript: 一个屌丝的逆袭 Java:一个帝国的诞生 JSP:一个装配工的没落 TCP/IP 之 大明王朝的邮差 TCP/IP 之 大明内阁 TCP/IP 之 蓟辽督师 CPU 阿甘 CPU 阿甘之烦恼 CPU 阿甘:函数调用的秘密 我是一个网卡 …

读书笔记(一)《码农翻身》

好久都没有写技术博客了,大概有一年左右没有开始写了,原因是自己弄了一个日志博文,当然这不是重点,重点是心态发生了改变,从心里上感觉技术兴趣不大了,后来又发现,并不是对技术失去了兴趣&#…

写给初学者:编程的本质

俗话说,开卷有益, 前几天又翻了下《计算机程序的构造和解释》,看到一个采用牛顿法求平方根的例子,产生了点新的感想,和大家分享下。 平方根的数学定义是这样的,对于一个数x , 如果有另外一个数r, r大于等于…