我很高兴介绍今天的主题,“如何使用JavaScript僵尸网络来破坏坏人和黑手党”。 首先,我想介绍一下自己和我的国家-我是Chema Alonso,我在一家名为Informatica64的小型公司工作。 我也负责Microsoft安全工作并居住在西班牙。

如果您还没有去过西班牙,那么您绝对应该参观它,这里有很多值得关注的地方。 这是马德里,一个永远不眠的城市,在第一张幻灯片上可以看到,它比纽约要小。 这是巴塞罗那,拥有令人惊叹的圣殿,当然还有潘普洛纳,那里的人们远离愤怒的公牛。 只有一个规则:如果您喝醉了,请不要跑步! 因此,一切都很简单:您只需要比公牛跑得更快。
如果您喜欢特殊的假期,那么这里就是Tomatin番茄大战。 我不确定这个习俗的历史,但是您只需要扔西红柿,这很有趣。 是的,那是西班牙!
让我们开始我们的话题。 这很简单:创建一个僵尸网络,仅此而已。 有多少人想到创建僵尸网络? 谁真正创造了它? 所以,当然只有我。 创建僵尸网络的想法很有趣,但是我很懒。 我来自西班牙,所以这很正常。 此外,我们没有钱,没有“零日”,我们不是可以免费使用网络的联邦调查局或国家安全局,我们也不是Google,Apple或Microsoft,它们的设备遍布全球。
我想在屏幕上向您展示放大的图片-这是西班牙人的发明,他们坐在游泳池中,并通过一根延长线连接了电子设备,而延长线则由于穿戴了橡胶拖鞋而浮动了。

这很好地说明了我们如何在西班牙使用不同的事物。 我们西班牙人以自己的方式行事,不像其他人那样。 因此,创建僵尸网络的想法非常简单-让我们一起感染它们! 我们想要在僵尸网络中实现的一个非常简单的想法是,其中涉及的计算机希望自我感染。

如果您考虑一下,这是Internet上相当普遍的话题。 在过去的5-10年中,借助欺诈性的防病毒和社会工程学的技巧,恶意软件行业已经广泛传播,那么为什么僵尸网络不这样做呢?

僵尸网络基于“中间人”攻击的思想,即使用客户端和服务器之间的消息拦截。 捕获通道就足够了,我们可以完全控制。 您可以使用各种网络捕获方案:ARP欺骗,支持IPv4或IPv6的网络上的欺诈性DHCP,ICMPv6欺骗,SLAAC攻击,DNS欺骗等。
我们在人为攻击中发布了一种名为Evil FOCA的新工具,只需单击一下就可以完成。 当然,如果您可以配置DNS,那么您可以让男人成为中间攻击者。
之所以有困难,是因为您必须与许多Internet提供商和许多网络打交道。 几年前最常用的技巧之一是“浏览器中的人”方法,这是“中间人”攻击技术的一种扩展。
长期以来,一家俄罗斯黑客学校成功地将Internet Explorer 6中的这项技术与著名的插件浏览器帮助器对象(BHO)结合使用,该插件是一个Active X组件,该组件允许打开最初仅用于浏览器的文件。 他们创建了伪装为BHO的恶意软件。 这使得访问所有数据,截取从键盘输入的密码和代码成为可能,主要是为了实现银行机构之间的连接。 因此,此银行木马开始被称为“我的IE浏览器中的俄罗斯人”。

通过配置一个特殊的Trojan XML文件,这是一种非常常见的攻击方法,简单但可以正常工作。
因此,我们需要编写防病毒系统无法检测到的代码,但是我们认为这对我们来说非常困难。 因此,我们决定使用所谓的“中毒浏览器缓存”或“中间JavaScript”攻击,并将其称为“选项卡中的人”。 这个想法很简单。

如果您无法控制整个浏览器,则可以在一个用户选项卡中运行JavaScript,并且可以执行许多操作。 您可以访问代码,修改HTML,访问表单字段,可以控制选项卡等等。
“中间JavaScript”攻击的特征是:
- 不经常使用-清除缓存意味着删除受感染的内容;
- 缓存的内容在到期日期之前存在,
黑客可以远程注入JavaScript; - 访问cookie(例如仅HTTP),访问HTML代码,URL地址,代码执行。
有一个非常著名的项目-BEEF浏览器漏洞利用框架。 它允许您执行许多有趣的事情,例如,将一小段JavaScript代码插入用户的浏览器中以破坏缓存。

问题是我们需要在Internet上进行配置,如果您需要感染许多网络bot,这将非常困难。 因此,我们的想法更简单-使用Scratch创建一个JavaScript僵尸网络。
基于专门感染JavaScript文件的环境的思想,我们首先认为,创建僵尸网络的最佳方法是,如果僵尸网络实施“自发主动”的原则,即“主动”,不使用“中间人”,而是使用用户本身。 我们决定专注于TOR网络和Internet上使用的代理。

这个网络的想法很简单-如果您是网络上的最后一个,则可以通过拦截所有连接来访问所有内容。
为了实现它,我们构建了一台“中间人”的机器,并将其注册为TOR节点和匿名代理服务器,并且在这两种情况下我们都工作了一段时间,但是,我们必须说我们的恶意活动为发现了一个TOR主机,它忽略了我们的IP地址。

为了康复,我们被要求参加测试,创建测试会话等,这在我们看来似乎太复杂了,因为我们是西班牙人。 因此,接下来要做的就是创建自己的代理服务器。 这非常简单,因为代理没有像TOR这样大的基础结构,它只是用户尝试加入的独立服务器。

我们研究了Internet上匿名代理服务器上的所有手册,并意识到这是一个现成的“中间人”方案。 通过创建代理服务器,人们可以通过该服务器尝试连接到Internet,我们能够收集所有数据并感染所有浏览器。
我们要做的第一件事是在Internet上租用代理服务器。 当然,我们考虑了它的功能,我们不需要在Pirate Bay或Amazon上安装“玩具”服务器,我们记得Wikileaks,但是我们也不需要大型服务器。 而且我们还决定,最好让他进入没有法律的国家。 我们决定在阿富汗,伊朗,哈萨克斯坦或西班牙租用服务器(掌声和欢笑)。
租用服务器后,我们开始对其进行配置。 它应该是基于Apache和SQUID代理的简单服务器。 此外,使用该服务器,我们将用一小段代码感染所有JavaScript文件,该代码仅需要几行。

用户连接到我们的服务器后,我们立即转到该站点并收到包含JavaScript文件的响应页面。 我们几乎向用户返回了原始JavaScript,仅在其中添加了两行“有效负载”。 同时,我们不想使用Internet上称为BEEF的东西,而只是在通过代理服务器传递的所有JavaScript文件中插入两行代码。
我们需要做的所有事情都显示在下一张幻灯片上。

我们在SQUID代理中配置了“有效负载”,并在Apache服务器配置文件中删除了过期策略,因为在JavaScript感染浏览器之后,这种“感染”应该一直存在。
接下来,我们创建了下一张幻灯片中显示的实际脚本,该脚本感染了JavaScript文件。

我们复制了文件,在文件中添加了pasarela.js脚本,然后使用打印“ http:// .......”将这些更新的文件发送到IP地址的客户端。 这是一小段代码,充满了漏洞,但是可以正常工作。 脚本本身称为Pasarela,已复制到所有JavaScript文件,看起来就像下一张幻灯片中所示。 他所做的只是从恶意服务器下载中毒的payload.php,并通过从jsonip.php下载图像来报告他的身份。

在代码中,您可以查看元素是否已创建。 目标是不要在同一页面上多次运行pasarela.js。 由于我们作为一个体面的人,不想伤害用户,因此,我们在服务器的主页上发布了以下内容,以吸引所有打算使用代理服务器服务的客户。

“注意! 该代理服务器用于Internet安全领域的研究。 所有JavaScript文件将被感染,您的所有数据将被收集。 如果要确保安全,请不要使用此代理服务器。 如果这样做,则不要发送机密信息。 如果您仍然决定使用它,请记住,这样做后果自负,风险自负。”
如果您不想丢失密码或个人数据,请不要使用我们的服务器! 这是一个非常好的安全策略。 军队使用或多或少类似的安全政策-您在美国陆军工程兵团的网站上看到类似的警告,因此我们的行为相当合法。

因此,我们在Internet上发布了代理服务器,并写道它是一个开放代理,每个人都可以将自己的代理添加到我们的数据库中。 您会看到我们有一些选项卡,其中包含不同代理的列表,并按国家/地区,端口对它们进行了排序,还有一个选定代理的选项卡。

让“坏蛋”使用我们的恶意代理服务器的想法非常简单:我们将其注册在一个代理服务器列表中。 长期以来,在许多站点和博客中,建议使用代理服务器来获取匿名IP地址,这对我们许多人是常见的。 我们随机选择了该站点,并使用端口31337注册了IP地址,以引起更多关注。
这些带有代理列表的站点对新代理执行安全性测试,但是该测试并不像在TOR网络上那样复杂。 实际上,不是注册或不测试代理服务器的问题,而是一旦它进入了这样一个经过测试的服务器列表,就会立即连接数百个下载这些列表而没有任何安全检查的站点和应用程序。
仅通过第一个测试就足够了,例如,测试连接和功能,并且“互联网的魔力”将使您的IP地址在成千上万的站点上显示为受信任的地址,而这恰好是我们的IP地址。 下一张幻灯片显示,我们欺诈性的IP地址已经出现在数千个站点上。

您会看到我们的IP地址在搜索查询中出现了1110次,因为所有代理都开始复制自己。 因为如果将IP地址放在一个代理服务器的列表中,则所有其他代理服务器都将开始复制这些列表。 这很有趣,因为有一天它会带给您很多东西。
接下来,我们创建了一个“有效载荷”来窃取Cookie。 我们不想处理安全的cookie,而只使用HTTP cookie。 我们复制了不安全的常规cookie,并将其发送到控制面板。

我们还使用了一个小的“有效载荷”来获取表单字段,我们使用了用户填写的信息,并将其发送到我们的控制面板。

实际上,这就是全部-现在可以享受我们劳动成果。 一旦我们甚至能够动员5,000个机器人。 在分析了连接之后,我们发现大多数僵尸网络的机器位于俄罗斯,巴西,墨西哥和印度尼西亚,这些国家对代理服务器服务的需求很高。 我们不需要为此付费,也不需要创建任何特殊的多态恶意软件,这足以在Internet上发布服务器的单个IP地址。 好吧,你知道,我们来自西班牙。
问题是,谁在使用这些服务? 这个房间里有多少人在使用Internet上的代理服务器服务? 因此,如果要匿名,请使用一台代理服务器。 如果您想要更多的匿名性,请使用多个代理服务器,这样您就可以感染多个代理服务器(观众笑声)。

这个想法是那些使用此类服务器的人无疑是坏人。 例如,众所周知的“尼日利亚王子”骗子的黑手党。

盘子上的铭文:“尼日利亚皇家银行”。 垃圾邮件骗子:“我给所有可以找到的人发送了电子邮件,亲爱的王子,但没人愿意帮助您摆脱金钱。”
首先,我们想从做坏事的坏人那里收集数据。 因此,我们设法收集了尼日利亚诈骗者的所有信息,包括用户名和密码。 但是我们警告过他们,所以一切都是合法的。
收到密码后,我们进入了这些人的邮箱,在那儿,我找到了我最喜欢的骗子之一,骗子的邮箱为royalhotelengland@hotmail.co.uk。

这个家伙创建了一个整个垃圾邮件发送公司来愚弄人们,向他们提供特别签证以在英国工作,为此他要了275英镑。 下一张幻灯片显示了一封他要钱的电子邮件。

它看起来像一封正式信件。 当然,世界上有很多理性的人回答他:“好,但是先给我看一下这份工作,然后我再寄钱给你。” 因此,如果垃圾邮件的接收者之一怀疑他有欺诈行为,那么他就不会坚持并接受其他客户。 最后,他们向他发送了获得签证所需的所有信息,所有个人数据-您可以在下一张幻灯片中看到其文件的扫描内容。


这是简历,护照页和在英国申请护照的高质量照片,甚至是在英国获得工作签证所需的指纹。 很多人向他发送了这些数据,这是窃取我一生中遇到的机密信息的最简单方法。 如果您拥有此类数据,则可以轻松创建自己的“ m子”来进行欺诈性银行业务。
这个约会网站上我最喜欢的社交网络帐户中的另一个是这个人,或者这个女孩。 老实说,伙计们-你们中有多少人认为这样的女孩会找一个在网上做爱的男生?

这从一开始就引起我们极大的怀疑,因此我们决定为此配置文件获取用户名和密码。 如您所见,这名Axionqueen写道她正在寻找男友约会或建立认真的关系,她大约30岁,现居住在德克萨斯州的凯勒。 但是事实是,我们在不同的社交网络中发现了完全不同的个人资料,这个“女王”已经居住在新西兰的奥克兰,她已经31岁,依此类推。 然后,我们在PlanetaLove USA网站上找到了同一女孩的另一个个人资料,这表明她住在弗吉尼亚州的林奇堡,并且对39岁至60岁的男性感兴趣。

有来自弗吉尼亚州的人来见这个女孩吗?
但是最有趣的是,同一用户的另一个配置文件看上去完全不同。 这次我们的女孩来自德国。

然后我们决定进入该用户的邮箱,并结识他的信件。 自然,这是一个男人,而不是一个女孩。
20:20分钟
DEFCON会议20.如何使用JavaScript僵尸网络操弄坏人(和黑手党)。 第二部分感谢您与我们在一起。 你喜欢我们的文章吗? 想看更多有趣的资料吗? 通过下订单或将其推荐给您的朋友来支持我们,
为我们为您发明的入门级服务器的独特模拟,为Habr用户提供
30%的折扣: 关于VPS(KVM)E5-2650 v4(6核)的全部真相10GB DDR4 240GB SSD 1Gbps从$ 20还是如何划分服务器? (RAID1和RAID10提供选件,最多24个内核和最大40GB DDR4)。
VPS(KVM)E5-2650 v4(6核)10GB DDR4 240GB SSD 1Gbps至12月免费,在六个月内付款,您可以
在此处订购。
戴尔R730xd便宜2倍? 仅
在荷兰和美国,我们有
2台Intel Dodeca-Core Xeon E5-2650v4 128GB DDR4 6x480GB SSD 1Gbps 100电视(249美元起) ! 阅读有关
如何构建基础架构大厦的信息。 使用价格为9000欧元的Dell R730xd E5-2650 v4服务器的上等课程?