使用Fuzzing挖掘零日漏洞

2018-12-09 01:04:55 17 3108

Infosec Insider Derek Manky 讨论了在当今的环境和新技术下如何促进安全领域的Fuzzing研究。使用机器学习各种模型应用于Fuzzing中不仅可以帮助研究人员和开发人员,也可以让更多技术不足的人群能够发现zero-day



Infosec Insider Derek Manky 讨论了在当今的环境和新技术下如何促进安全领域的Fuzzing研究

Fuzzing是一个听起来很难认真对待的术语。但鉴于今天的攻击格局,我们需要它。Fuzzing一直是专业威胁研究人员用来发现硬件和软件接口和应用程序漏洞的复杂技术。他们通过将无效,意外或半随机数据注入接口或程序,然后监视崩溃,未记录的跳转到调试例程,失败的代码中断和潜在的内存泄漏等事件来实现此测试。这个过程可以帮助开发人员和研究人员发现漏洞和zero-day,否则几乎不可能发现这些漏洞。

幸运的是,网络犯罪分子并不经常使用Fuzzing来发现漏洞,这需要大量的自定义开发,很难做到。因为它们是以营利为目的来运作的,有更简单的攻击方法可以盈利时,使用Fuzzing的精力是不合理的。实际只有极少数人拥有开发和运行有效Fuzzing工具所需的专业知识 - 这也是为什么在极少数情况下他们使用Fuzzing时,喜欢选择更简单的DDoS攻击。

在如今的商用软件和操作系统中使用Fuzzing是可以发现和利用大量漏洞的。拥有一个未知的zero-day来攻击目标是价值很高的,但没有足够的专用Fuzzing工具或熟练的开发人员就很难发现它们。鉴于现在的科技的进步带来的机会,所有这一切都很快将发生变化。

AI使困难成为可能

随着机器学习的各种模型应用于模糊测试中,预计这种技术会变得更加高效和量身定制,不仅会帮助开发人员和研究人员,它也首次面向更广泛的技术不足的人群。

随着网络犯罪分子开始利用机器学习增强的自动化Fuzzing程序,他们将能够加速发现zero-day。这将导致针对不同程序和平台的零日攻击增加。由于难以预测和防御完全未知的攻击,这种发展可能是网络安全的重大改变。

这种方法称为人工智能Fuzzing(AIF)。只需要简单的知识就能够开发和训练Fuzzing程序,以自动化和加速发现零日攻击。然后只需将AIF应用程序指向目标,他们就可以开始自动挖掘它以进行零日攻击。

AIF的两个机器学习阶段是Discovery和Exploit。在发现阶段,AIF工具将了解新目标的功能和要求,包括它用于结构化数据的模式。然后,在开发阶段,AIF工具将开始将有意设计的结构化数据注入该软件或界面,监控结果,使用机器学习来优化攻击,并最终迫使目标中断。这构成了同时发现漏洞和利用漏洞。

这涉及机器学习方法,可以很容易地由训练有素的网络犯罪分子监督,并且可以重复 - 允许犯罪分子发现和利用zero-day,然后对受害者进行连续的攻击组合。在可以获得大量零日攻击的环境中,即使是用于检测未知威胁(如沙盒)的高级工具也很快就会被淹没。

AIF将如何影响网络犯罪经济

对于许多犯罪组织而言,攻击技术的评估不仅包括其有效性,还包括开发,修改和实施攻击技术所需的开销。许多攻击策略可以通过解决网络犯罪分子所采用的经济模式而不是绕过他们的攻击来解决。人员,流程和技术的战略性变化可能会迫使一些网络犯罪团体重新考虑使用某些攻击的财务价值。

组织打击攻击者的一种方式是采用新的技术和策略,如机器学习和自动化,来承担繁琐而耗时的安全活动,这些活动通常需要高度的人工监督和干预。这些新的防御策略可能会影响网络犯罪策略,导致不良行为者改变攻击方法并加速他们自己的开发工作。

但是,通过使用AIF,攻击者将能够根据他们的命令增加可用漏洞和漏洞的数量和种类,包括快速生成零日攻击的能力,甚至在黑暗网络上提供租用服务,例如零日即时采矿服务。这种服务的可用性需要彻底改变组织如何处理安全问题,因为没有办法预见这些零日在哪里,也没有办法正确地防范它们。使用当今大多数组织在其网络中部署的各种隔离的传统安全工具尤其如此。

反击

曾经是国防研究人员的职权范围,先进的模糊测试准备落入犯罪团体的手中。人工智能模糊测试将改变攻击者和目标的游戏。一种有效的反击方法是追求犯罪组织的基本经济战略。组织不需要陷入永久的军备竞赛,而是需要利用自动化,机器学习和人工智能来预测威胁并改变战略,以便对手不再具有经济可行性。

关于作者

评论17次

要评论?请先  登录  或  注册
  • TOP1
    2018-12-10 17:01

    全自动不现实,至少不适合针对具体目标,会使问题复杂度升高

  • TOP2
    2018-12-11 23:33

    fuzzing 是一和模糊测试,无脑活动,如果要加上AI,复杂度目前还是非常难,前期的数据打标,数据集,调参,规则识别,都没有一个成熟的模型,需要一个一个建,对于fuzzing业界还没有一个通用的标准模型来解决,AI,机器学习在防御,感知,拦截上,业界已经有了很好的应用, 但我们攻击领域,目前并没有一个AI能解决我们的问题,攻防不对等的问题,慢慢在缩小,利用AI等前沿技术进行有效攻击,必然是驱势了。

  • 17楼
    2019-1-15 10:24

    很多东西都是经验吧。这种无脑分析能行吗

  • 16楼
    2019-1-14 04:56

    自动分析不现实的……

  • 15楼
    2019-1-2 17:06

    感觉还是有点虚啊,但是的确是一个好方向

  • 14楼
    2018-12-12 21:42

    这个没有了解过,我觉得知识沉淀很重要。不能一味的依靠工具

  • 13楼
    2018-12-12 16:44

    fuzzy我觉得还是大力出奇迹,现在挖洞通用的越来越难了。

  • 12楼
    2018-12-12 13:56

    有想关工具么

  • 11楼
    2018-12-12 08:49

    自动分析漏洞觉得还靠谱。

  • 10楼
    2018-12-11 23:33

    fuzzing 是一和模糊测试,无脑活动,如果要加上AI,复杂度目前还是非常难,前期的数据打标,数据集,调参,规则识别,都没有一个成熟的模型,需要一个一个建,对于fuzzing业界还没有一个通用的标准模型来解决,AI,机器学习在防御,感知,拦截上,业界已经有了很好的应用, 但我们攻击领域,目前并没有一个AI能解决我们的问题,攻防不对等的问题,慢慢在缩小,利用AI等前沿技术进行有效攻击,必然是驱势了。

  • 9楼
    2018-12-11 23:15

    这么说起来,以后的网络环境可能会更加安全,毕竟大公司开发AIF还是更有优势的

  • 8楼
    2018-12-11 10:32

    fuzz现在主要还是发送畸形数据看会不会引发奔溃吧,具体利用还是要人工分析

  • 7楼
    2018-12-11 10:14

    目前还是人工分析,fuzz看看后期深度学习吧

  • 6楼
    2018-12-11 09:27

    如果AIF能够盛行起来,网络安全一定会大大提高

  • 5楼
    2018-12-11 08:48

    fuzzing 程序大部分都是自动化加载一个程序,然后在用自己的一段shellcode 去逐一替换每一个字节如果出现溢出,崩溃,异常,导致执行了shellcode代码说明就有漏洞

  • 4楼
    2018-12-10 17:07

    个人感觉fuzzing这个概念略显抽象,涉及到自动化就可以这样说

  • 3楼
    2018-12-10 17:01

    全自动不现实,至少不适合针对具体目标,会使问题复杂度升高

  • 2楼
    2018-12-10 14:27
    wwjy1f

    之前看过漏洞从发现到利用完全自动化的报道,好像数字公司的安全大脑就宣称有这个能力,不知效果如何。

    1

    我还是难以相信 全自动 , fuzz一般都只能出现崩溃,到可利用漏洞,还需要更多人工分析与样本深度构造

  • 1楼
    2018-12-10 09:36

    之前看过漏洞从发现到利用完全自动化的报道,好像数字公司的安全大脑就宣称有这个能力,不知效果如何。