跳转到内容

不断进化的 0 和 1 之墙:深度学习及其在网络安全中的应用

来自维基教科书,开放书籍,开放世界

在机电计算机诞生仅仅 11 年后,世界上第一个计算机病毒的设计方案便问世了。数学家和工程师约翰·冯·诺依曼在伊利诺伊大学发表了一系列关于自我复制计算机程序理论的演讲。然而,直到 20 世纪 70 年代初,第一个功能性计算机病毒才得以问世。这个名为“Creeper”的病毒是第一个传播和自我复制的计算机程序,后来被世界上第一个反病毒软件“Reaper”删除[1]。这种计算机病毒被创建,而反病毒被编写来对抗它的循环已经持续了 50 多年。

然而,随着机器学习的最新发展,恶意软件的分类和清除最终可能会实现完全自动化。大多数新的恶意软件都是基于现有的恶意软件构建的,而对其类型的分类往往是根除它的第一步。深度学习程序在识别任务中表现出非凡的性能,并且在第 9 届新技术、移动性和安全会议上,一个用于分析图像的人工神经网络被证明具有“优于……最先进的性能”[2],因为它能够识别恶意软件。

如今的反病毒程序如何识别恶意软件,以及它们有哪些缺陷?

[编辑 | 编辑源代码]

反病毒程序通常使用几种方法进行检测,例如沙箱、启发式检测和实时检测。沙箱在虚拟环境中运行程序并记录程序的操作。如果程序被认定为非恶意,反病毒软件会将其运行在你的真实计算机上。[3] 虽然这种技术有效,但它速度慢且资源消耗大,因此许多用户侧的反病毒程序都没有使用它。启发式检测,或称“遗传检测”,是指通过检查程序与现有病毒的相似性来识别病毒的过程。这种方法有效,但完全依赖于反病毒软件使用的有限数据库。实时检测是在文件下载或打开时扫描文件的过程。这是大多数反恶意软件程序使用的方法。这种方法最大的问题是,如果病毒以前未知,反病毒程序不会标记它。

有哪些深度学习反病毒程序,它们是如何工作的?

[编辑 | 编辑源代码]

浅层机器学习程序预测两个变量之间的关系,并在许多网络安全程序中使用。然而,深度学习技术的最新进展使得神经网络超越了最优秀的浅层学习算法。在第 9 届新技术、移动性和安全会议上,一个用于分析图像的人工神经网络被证明超越了微软恶意软件分类挑战赛的获胜者[2]。这个系统将文件转换为二进制,然后将二进制转换为灰度图像,然后神经网络扫描它以查找与其他恶意软件的相似之处。该系统在超过 10,000 个恶意软件样本的数据集中获得了 99.97% 的成功率。该方法中使用的神经网络模型是卷积神经网络,它基于动物的视觉皮层。

神经网络模型,展示输入、隐藏和输出层


另一个名为 FO-SAIR(Factional-Order Susceptible-Antidote-Infected-Removed)框架的神经网络程序在清除病毒方面取得了巨大成功。该程序以有机疾病治疗为模型,是 SIR(Susceptible-Infected-Removed)框架的修改版本。FO-SAIR 通过随机优化进行检验,随机优化是一种生成随机变量来模拟实际系统的过程。该程序是成本效益最高的反病毒方法之一,因为它以病毒传播速度为依据创建“解药”,并在“解药”不再需要时将其删除。[4] 尽管这些程序功能强大,但它们受到庞大存储需求以及训练时间长的限制。虽然有效,但这使得它们对于普通消费者来说不是一个合理的选择。

黑客不会也使用深度学习吗?

[编辑 | 编辑源代码]

随着技术变得越来越普及,恶意软件的数量和质量都呈爆炸式增长。澳大利亚计算机应急响应小组前总经理格雷厄姆·英格拉姆表示,“我们正在获得质量堪比软件工程师的代码”,[5] 他指的是新一代恶意软件作者的技能。然而,有几个关键因素使得深度学习更适合反病毒软件而不是恶意软件。深度学习需要大量的计算能力和海量数据集,这使得许多人无法使用它。对于恶意软件作者来说尤其如此,因为反病毒软件的大型数据集比病毒的大型数据集更难找到,这意味着训练病毒以攻击反病毒软件比训练反病毒软件以识别病毒更困难。此外,据 MathWorks 称,深度学习用于“直接从图像、文本或声音中执行分类任务”,这对于识别恶意软件很有用,但对于隐藏恶意软件则无用。虽然恶意软件作者和反病毒软件作者都会使用深度学习,但就其本质而言,深度学习更适合反病毒软件而不是恶意软件。

多年来,机器学习取得了快速发展,并对许多领域产生了影响,包括与技术直接相关的领域和非技术领域。随着这项技术的不断改进,它将越来越频繁地被使用。在网络安全领域尤其如此,深度学习程序展现出极高的成功率,尤其是与大多数现代反病毒程序相比。随着机器学习变得更加先进,它将成为网络安全领域的领先方法,因为它在恶意软件分类方面速度快、准确率高。

讨论问题

[编辑 | 编辑源代码]
  1. 你认为深度学习程序将来会完全取代传统反病毒软件吗?为什么或为什么不?目前还存在哪些挑战?
  2. 深度学习的进步可能会如何影响恶意软件创建者和网络安全专家之间的“军备竞赛”?哪一方会占据上风?
  3. 用于网络安全的机器学习算法是否应该开源?在这种情况下,围绕透明度和审查的伦理影响是什么?
  4. 除了分析恶意软件之外,深度学习还有哪些应用有望改善网络安全?例如,它可以检测入侵或被盗账户吗?
  5. 你认为在法律和政治上是否正在采取足够的措施来应对人工智能驱动的网络攻击或网络战等新兴技术?哪些政策或法规可以帮助解决这些威胁?

参考文献

[编辑 | 编辑源代码]
  1. Chen, Thomas, and Jean-Marc, Robert (2004). "病毒和蠕虫的演变" web.archive.org. 2019 年 7 月 31 日检索。
  2. a b Kalash, Mahmoud 等人。“使用深度卷积神经网络进行恶意软件分类。” IEEE.org 2018 年第 9 届国际信息处理联合会新技术、移动性和安全会议。 2018
  3. “沙箱保护终端 | 领先于零日威胁” comodo.com (2014 年 6 月 20 日)
  4. Noinang, Sakda 等人。“使用神经网络对非线性分数阶 SIR 微分系统中新型反病毒子类别进行数值评估” IEEE Access 第 10 卷 (2022)
  5. Kotadia, Munir. "为什么流行的反病毒应用程序“不起作用”"。 zdnet.com (2006 年 7 月)
华夏公益教科书