各位好。我是《黑客军团》 的技术顾问,以及Tanium 的首席安全架构师——Ryan Kazanciyan。自从第二季的下半季开始,我就一直在与Kor Adana ——编剧,制片人,ARG幕后策划者,以及《黑客军团》团队的其他成员一起工作。在整个第三季中,我将写一些关于剧中出现的黑客技术文章,解释他们是如何联系到一起,以及他们在现实生活中的基础。
剧透!这篇文章讨论了第三季第1集的事件。
我们来玩一个游戏好吗?
在黑客空间的CTF比赛是Kor和我为第三季设计的第一个技术场景,也是一个让Elliot回到键盘上的很好机会。我们希望从现实中的CTF比赛中吸取经验,并为我们的信息安全专家观众们提供真实可信的主要成分,当然其他人也同样能接受。
minesweeper.py我花了将近一周的时间研究以前的CTF题目后,偶然发现了一个有趣的基于扫雷的挑战。这是一个基于终端,表面上功能完整的游戏版本,但其实需要一些巧妙的漏洞利用代码来恢复胜利所需的“flag”。它最初是作为2012年第29届混沌通信大会的一道CTF题目使用的。这个比赛和创建它的混沌计算俱乐部是黑客历史和文化(特别是在欧洲)的一个核心部分,所以在剧中我很兴奋地参考了它们。
在完成这个场景时,我和Kor一致认为扫雷似乎是非常合适的。几乎每个人都玩过这个游戏,所以它是这次黑客挑战中大家所熟悉和平易近人的主要成分。就像任何好的谜题一样,有很多创造性的方法来解决它。Elliot关于如何破坏保存文件,使校验和验证失效,并注入恶意代码来夺旗的解释是基于胜出队伍的实际解决方案。感谢Rami Malek毫无差错地提供这些难以理解的技术术语。
由于这是一个长时间的拍摄,我们需要准备好几个动画片段,涵盖了比赛的各个阶段和正在进行的解决方案尝试。我使用原始Python脚本来捕获扫雷板和输出消息在不同情况下的状态:已解决,失败,已保存,重新加载等等。我玩了很多次,而且失败了——我不是很擅长扫雷游戏。
这是我建立的原始模型之一:
在左上方有两个游戏板的实例,在左下方的vim中有一个解决方案脚本的一部分(意味着一个正在进行的工作)。最初的源代码位于右侧,光标位于加载已保存游戏的调用函数中。我倾向于用几个打开的窗口来组合这些密集的屏幕,以使它们在视觉上从远处看起来非常有趣,但也为多个单窗口特写提供了大量的材料。(他们也反映了我自己的电脑桌面是多么的混乱)。
这个入选(扫雷游戏)与制作和拍摄的东西非常接近,尽管在这个特定的场景中,摄像机移动并没有拍摄到显示器的清晰画面。当Elliot接近并与在这场比赛中被难倒的两名CTF参赛者谈话时,你仍然可以瞥见几眼。
劫持Dark Army的后门
黑客们在庆祝胜利的同时,Elliot可以专注于真正的任务:关闭能提供Dark Army直接访问E-Corp在纽约的纸质记录设施中的UPS管理系统权限的后门。他正在借用别人的硬件和时间。他没有Evil Corp的内部网络或任何Dark Army系统权限。他需要迅速切断他们使用后门的能力,同时确保他们没有机会检测和阻止他的努力。
在经过充分考虑可用的选择后,我和Kor决定让Elliot执行域名接管。
对于可能不熟悉这些技术概念的观众和读者,我会提供一些背景知识。大多数后门恶意软件会定期与服务器进行通信以提供状态,接收更新,或使操作员能够执行命令。这种通讯心跳被称为“信标”。当操作员或系统通过控制或发出命令进行响应时,称为“命令和控制(command and control)”或“C2”。
后门如何知道向哪里发送信标或C2流量呢?如果攻击者在创建和部署恶意软件时对IP地址进行硬编码,后期可能就很难更改该设置。C2服务器坏了?IP在受害者的网络上被检测到并被阻止?你可能会运气不好,无法到达你的感染系统来解决问题。使用域名提供了更大的灵活性:它们可以被更新以解析为可以从任何位置提供的新IP地址,而不需要直接访问恶意软件本身。
这种方法的缺点是它增加了另一个故障点:负责维护名称记录的注册服务商业务以及将域名解析为IP的DNS服务器分级系统。如果你可以访问具有管理员访问权限的用户帐户,或者更糟糕的话,可以访问注册服务商的整个基于Web的管理界面——你就可以控制这些地址。在许多配置更改中,你可以确保最初针对这些域的流量最终转到你控制的IP地址。
这就是Elliot如何完成域名接管攻击。我和Kor简化了这一切的时间和复杂性,但是潜在的技术已经在许多现实世界中发生了。是的,甚至一些最复杂的攻击者组织也使用合法的注册服务来实现其命令和控制域。
不幸的是,由于场景的节奏,并没有足够的时间来展示Elliot实际上是如何让注册服务商妥协的。我推断他发现了一个基本的Web应用程序漏洞,如SQL注入或一个安全性较差的管理界面,这个漏洞能够直接用浏览器完成攻击。再次,大量的现实世界的先例。但是,在Elliot成功登录并篡改域设置后不久,你会看到攻击的后果。
我想把这些画面基于一个真正的中国注册商——不仅仅抓住管理面板的外观和感觉,还要获得用于标记用户界面的上下文准确语言。经过一晚上漫长的搜索和大量使用Google翻译之后,我发现了一个注册服务商,该服务商上有一个公开的演示站点,允许访问者使用测试帐户登录并探索他们的域管理工具。
我通过重新配置域名设置相关的页面,并组合了一套参考屏幕截图,如上所述。这些作为虚拟注册商网站设计的基础,也就是你看到Elliot重新获得后门的画面。
一旦域接管完成,后门的下一次自动尝试在连接回到它的C2服务器时,将解析到Elliot控制之下的一个IP地址。成功!他回到了UPS管理系统。
我们以前在第二季第12集中看到了这个后门:它是一个公开的Perl反向shell,叫做“rwwwshell”,它简单地提供了一个能访问受感染的系统的远程命令行。
精通技术的观众可能会观察到,“rwwwshell”并不是最有趣或最现代的秘密后门恶意软件例子。没错,但是我们可以假定受害者主机可能是一个老的或者是骨干的* nix发行版,它缺少更复杂的东西所需的关键依赖。
Elliot迅速输入一个“shred”命令来清除后门脚本,并放弃连接,从而根除Dark Army的据点。
用老套的方法黑掉汽车
(更新于10/15/17)
上周早些时候,我和Kor主持了Reddit AMA,有人问我们如何避免“好莱坞黑客胡说”。FBI / Irving 的汽车追逐是一个很好的例子,在任何其他展会上,一个危险的黑客可能会拿出一台笔记本电脑,预装了一套可以阻止任何在其道路上的车辆的神奇工具。(如果情况非常激烈,他们可能会想起攻击僵尸车的僵尸网络。)我们必须保持真实......但是如何?
有几个可以远程黑掉汽车的例子——但在很多情况下,只影响一些特定的品牌和型号。针对汽车的Metasploit还不存在。所以就像我和Kor为这个场景提出的想法一样,我意识到我一点也不希望这个攻击依赖于传统的黑客工具。这导致研究远程信息处理系统可以控制车辆的不同方式,并最终让Irving利用社会工程学对付类似OnStar的服务来启动“被盗车辆减速”。
The Verge的Russel Brandom拿起了我们包括在场景中的一些关键元素,例如闪光灯,以便请求官确认他们即将停止的汽车。这个细节,连同Irving所遵循的其他步骤,都来自公共安全官员的“最佳实践”文件,这是经过漫长的一夜寻找参考资料之后我偶然发现的。
学校里学到的社会工程学,正确的域知识和信息。恰恰是Irving这种人的黑客行为才是你最期待的!
原文地址:https://medium.com/@ryankazanciyan/mr-robot-disassembled-eps3-0-power-saver-mode-h-1f8a3ba101d6
Note:
miss a beat:差强人意,不相协调,漏掉拍子,遗漏。
The company changed ownership without missing a beat.
这家公司没起什么风波就变更了所有权。
After all documents are converted, moving forward, you can publish as needed with all your content, without missing a beat.
所有文档转换完成后,可以继续下面的工作,根据需要发布所有的内容,不会遗漏任何内容。
网友评论