从技术角度看罪犯如何使用人工智能
2019年06月19日 由 sunlei 发表
404627
0
机器学习是当今最令人兴奋的新技术之一。然而,毫无疑问,任何新生事物都是有争议的。目前,这一争议并不真正来自超智能机器人戏剧性地接管人类的前景;相反,这是因为像这样强大的技术既可以被犯罪分子利用,也可以被有良好意图的人利用。在这篇文章中,我想探索一下黑暗面:罪犯是如何非法使用人工智能的。
在计算机有能力解决启发式问题之前,许多安全系统的设计原则是这种情况不会改变。计算机可以猜测密码、读取图形验证码或学习实际流量行为的想法根本没有考虑在内。现在,我们周围的安全系统已经被人工智能淘汰了。
验证码和图像分类
有很多时候,系统需要确认用户实际上是人类。这是因为计算机提供给人类的所有功能都可以被计算机程序利用或模拟。如果你试图登录Facebook超过三次,你会注意到Facebook要求确认你是人类,而不是试图每秒输入数百万个密码的电脑程序。Facebook和许多服务都是通过验证码的方式做到这一点的:
多年来,这种方法成功地将人类与程序区分开,直到人工智能出现。现在,可以使用基本的卷积神经网络,其中使用了大量的验证码图像数据集。每个验证码都有一个特定的目标,通过训练一个convnet,他们可以在未来设计出验证码。这是一个更简单的例子,只需要神经网络的基本原理。既然验证码可以被绕过,暴力攻击就更有可能发生。您可能还遇到过验证码的“选择所有包含总线的图片”类型,这对于人工智能来说同样容易绕过。我们都知道google有多棒,即使它作为一个非常基本和成功的功能集成到他们的搜索引擎中。
密码与生成对抗性网络
很少有人的密码是这样的:5f2#V0 " P?oz3
大多数人的密码是这样的:Kronenbourg1664
而我们其他人甚至有这样的密码:password
在我的第一个例子中,仍然有这样的情况,那些人或GTX 1080 GPU猜测他们的密码是非常安全的。然而,其他人的都很脆弱。那么,如何猜测这些密码呢?最简单的是,我们可以使用字典,并将每个单词应用于密码输入。们可能只需要很小一部分的努力就能成功——因为那些遵循我上一个例子的人。如果您是这些人中的一员,我完全有信心在本文结尾之前更改您的密码。
现在,让我们看看更现代、甚至更邪恶的方法(当然是使用人工智能)。神经网络不是使用字典,而是用来生成大量可能的密码列表。此列表用于应用于身份验证表单。下面是如何生成该列表:
如果您熟悉神经网络(我应该提到,在下面的几段中,神经网络是非常重要的),那么这看起来仍然是不寻常的。我们不是简单地根据输入预测项目,而是从数据中学习,然后教生成器生成更多的示例。这被称为生成对抗网络,其中使用两个神经网络;一个用来区分正确和错误的输入,然后一个从中学习,通过随机噪声产生新的正确数据。
首先,我们使用一个现有的数据集,其中包含真实的人的密码,可能来自一个历史性的密码泄漏,这个就是现成的供我们使用。这些将共同演示人工密码的样子(几个大写字母、日期、随机数、名称等)。
其次,我们使用一个噪声发生器(G),它(首先)将输出随机数据。这两个可能的输入(假密码和真密码)是神经网络(或识别器D)的输入。目标被设计成简单的二进制输出。这意味着在训练过程中,神经网络被告知输入的密码是假的还是真的。在每个前馈上,将生成的输出值与目标值(真相)进行比较,然后向后传播,根据误差幅度调整权重值。生成器也受此影响,因为它的随机输入噪声将开始优化,更接近密码输出。
一旦生成器被更改,任何进一步输入到网络中的噪声都会导致看起来像密码的字符串。所以,如果让它运行几个小时,我们就可以编译出一大堆经过智能编译的密码。
网络钓鱼
网络钓鱼是一种非常常见的黑客行为。你是否曾经收到过一封看起来不太对劲儿的电子邮件,但声称是来自你的银行、电话服务或社交媒体平台?任何一个初学编程的人,只要知道一点HTML,再加上一点后端代码(比如PHP),就可以完成这个任务。它包括发送一封电子邮件,其外观设计类似于Facebook,并使用类似的正式语言。它会声称您需要更新、查看或更改某些内容,并要求您提供登录详细信息。你输入的任何东西都会被发送到罪犯的服务器。不管怎样,人工智能是如何进入这个世界的?
机器学习可以改进网络钓鱼,通过爬行任何平台,学习它们的外观和交流语言,然后根据特定的观察,大规模自动发送虚假电子邮件。然而,这并不是唯一的方法。黑客还可以使用前面描述的相同原理来猜测密码和电子邮件地址。数以百万计的电子邮件地址可以产生,这增加了找到技术上容易上当受骗的人的机会。
许多电子邮件服务,比如Gmail,都有先进的系统来检测钓鱼邮件,然而,机器学习可以用来创建电子邮件,这些系统无法检测到。培训集将是电子邮件的汇编,其中一些邮件由于网络钓鱼检测而未能到达用户,还有另外一些则是成功的。神经网络可以通过识别哪些网络钓鱼被捕获了,哪些没有,从而了解网络钓鱼是如何被检测到的。在未来,电子邮件可以根据规则生成,而不会被钓鱼检测发现。
结论
首先,这只是三个案例。令人担忧的是,在其他领域还有很多,比如虚假广告、模拟虚假流量等等。然而,我认为人工智能在法律领域的应用远远超过了犯罪领域。具有讽刺意味的是,人工智能正以许多惊人的方式被用于侦查犯罪活动,从街头治安到网络欺诈。最后,如果一个生成式的敌对网络能够猜出密码,请更改密码; 除非您再次核对了发件人身份,否则请不要跟踪发送给您的任何链接;最后,也是最最重要的,不要自己使用这些技术来违反法律!