热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

【技术分享】利用Office模版注入攻击关键基础设施

译者:myswsun预估稿费:160RMB投稿方式:发送邮件至linwei#360.cn,或登陆网页版在线投稿0x00 前言攻击者一直在尝试通过邮件发送恶意软件的新的方式。Talos确认了一起基于邮件

https://img8.php1.cn/3cdc5/15cae/bdf/164fada67eeb4711.jpeg

译者:myswsun

预估稿费:160RMB

投稿方式:发送邮件至linwei#360.cn,或登陆网页版在线投稿


0x00 前言

攻击者一直在尝试通过邮件发送恶意软件的新的方式。Talos确认了一起基于邮件的针对能源行业(包括核能)的攻击,有别于经典的word文档的附件钓鱼攻击。通常,恶意的Word文档作为钓鱼邮件的附件,他们包含能执行恶意代码的脚本或者宏。在这个例子中,附件本身没有恶意代码。但是附件尝试通过SMB连接下载一个模版文件,以便可以获取用户的凭据。另外,这个模版文件也能用于下载其他恶意的payload。


0x01 背景

从2017年5月,Talos观察到攻击者的目标是关键的基础设施和能源公司,尤其是欧洲和美国的。这些攻击者的目标都是关键基础设施的供应商,这些供应商提供关键服务。对于关键基础设施的攻击并不是新问题,攻击者试图了解关键基础设施的ICS网络,一般都不怀好意。这个最新的攻击似乎在收集工作于关键基础设施和制造业的用户的凭据。使用新的攻击手法,通过发送恶意邮件盗取凭据。这些文档一旦打开,就会试图从攻击者控制的外部SMB服务器得到一个模版文件。


0x02 技术分析

从最近的攻击中得到了一些DOCX的样本,他们是通过恶意的电子邮件传播的。如下面所示,这些文件伪装成环境报告或者简历。

http://p7.qhimg.com/t01a144e47406404330.png

http://p7.qhimg.com/t01a5e9c68759045066.png

http://p6.qhimg.com/t01825a7bd4772988d8.png

我们首先希望能找到一些恶意的VBA宏或者嵌入的脚本。检查VBA没有结果:

http://p8.qhimg.com/t010844c8d305679f60.png

通过另一个工具运行再次确认:

http://p2.qhimg.com/t019172cf5fc281b190.png

没有嵌入二进制。通过研究这个样本中与攻击相关的IP地址,但是服务器已经不再接受请求了。转换思路,我们建立了一个独立的环境的服务器,并在TCP 80端口监听,以判断文档的行为。

截图如下,我们看到了一些有趣的东西:

http://p0.qhimg.com/t011e1b05aee8cab173.png

文档试图从特定的IP下载一个模版文件,但是通过TCP 80端口连到了我们蜜罐服务器上。我们的实时捕获显示了TCP 445的握手失败。现在可以手动解析文档来了解IP地址相关的内容。我们找到了模版注入的实例而非代码:

http://p2.qhimg.com/t012cb5363046d98307.png

我们初步判断攻击者试图通过恶意的SMB服务器来获取用户凭据。在样本中,我们可以看到一个被注入的模版用来和一个外部SMB服务器建立连接。不过,这没有解释为什么同一个样本会尝试通过TCP 80建立会话。在深入研究之后,我们决定在沙箱虚拟机中配置通过SMB的连接。简言之,由于主机的网络配置,当请求模版时,通过SMB会话会有WebDAV连接。当另一个监听TCP 80的外部服务器不再提供模版时,另一样本确认了这个情况。

http://p1.qhimg.com/t01c5dfb5a26d028145.png

继续看,模版设置的是指定的Relationship ID:rld1337,其在样本word/_rels/settings.xml.rels中。研究这个Relationship ID,使我们在Github中找到了一个名为Phishery的钓鱼工具,在它的模版注入中能发现相同的ID:

http://p9.qhimg.com/t0145db314230a50628.png

在前面的Go代码的底部能找到相同的ID:

http://p5.qhimg.com/t01b08c97d712b4c7c4.png

然而,Phishery不依赖恶意的SMB服务器。而且,连接是通过HTTPS的,并且通过基本认证的提示来获取用户的凭据。通过SMB请求,这种提示就可以避免。实际上,这个工具和报告的攻击依赖于精确的相同的Relationship ID的模版注入,可能表明:

1. 是个巧合

2. 攻击者看到了这个工具,并且修改或者使用同样的想法开发的

3. 攻击者使用相同ID是为了混淆分析

此时,没有任何证据确认上面3种可能性。然而,攻击者依赖通过TCP 445的流量的SMB会话是可以确定的。对于SMB不需要凭据提示,我们能知道这种技术既简单又有效。如果攻击者能破环一个主机并且在内部运行一个服务器,这将变得更加严重。

而且,因为攻击者控制的SMB服务器挂了,无法确认是否能通过模版下载释放payload。正如我们最近看到的攻击,攻击的意图并不总是明显的。SMB请求到外部服务器多年来一直是个安全漏洞。没有进一步的信息来确定攻击的规模或者涉及的payload。


0x03 总结

Talos已通知了受影响的用户,确保了他们知道的威胁和应对能力。它也说明控制你的网络流量的重要性,不要允许类似的SMB的协议的流量,除非我们需要。另外,写了一些ClamAV特征和电子邮件规则,以便确认这种office模版注入技术。


0x04 IOCs

由于这些攻击的来源,我们无法分享所有的IOC;然而,我们尽可能多的分享如下:

恶意文档

文件名: Report03-23-2017.docx

SHA256: 93cd6696e150caf6106e6066b58107372dcf43377bf4420c848007c10ff80bc9

文件名: Controls Engineer.docx

SHA256: 

b02508baf8567e62f3c0fd14833c82fb24e8ba4f0dc84aeb7690d9ea83385baa

3d6eadf0f0b3fb7f996e6eb3d540945c2d736822df1a37dcd0e25371fa2d75a0

ac6c1df3895af63b864bb33bf30cb31059e247443ddb8f23517849362ec94f08

相关IP地址:

184[.]154[.]150[.]66

5[.]153[.]58[.]45

62[.]8[.]193[.]206


推荐阅读
  • 本文介绍了Python高级网络编程及TCP/IP协议簇的OSI七层模型。首先简单介绍了七层模型的各层及其封装解封装过程。然后讨论了程序开发中涉及到的网络通信内容,主要包括TCP协议、UDP协议和IPV4协议。最后还介绍了socket编程、聊天socket实现、远程执行命令、上传文件、socketserver及其源码分析等相关内容。 ... [详细]
  • 这是原文链接:sendingformdata许多情况下,我们使用表单发送数据到服务器。服务器处理数据并返回响应给用户。这看起来很简单,但是 ... [详细]
  • Java序列化对象传给PHP的方法及原理解析
    本文介绍了Java序列化对象传给PHP的方法及原理,包括Java对象传递的方式、序列化的方式、PHP中的序列化用法介绍、Java是否能反序列化PHP的数据、Java序列化的原理以及解决Java序列化中的问题。同时还解释了序列化的概念和作用,以及代码执行序列化所需要的权限。最后指出,序列化会将对象实例的所有字段都进行序列化,使得数据能够被表示为实例的序列化数据,但只有能够解释该格式的代码才能够确定数据的内容。 ... [详细]
  • Centos7.6安装Gitlab教程及注意事项
    本文介绍了在Centos7.6系统下安装Gitlab的详细教程,并提供了一些注意事项。教程包括查看系统版本、安装必要的软件包、配置防火墙等步骤。同时,还强调了使用阿里云服务器时的特殊配置需求,以及建议至少4GB的可用RAM来运行GitLab。 ... [详细]
  • 禁止程序接收鼠标事件的工具_VNC Viewer for Mac(远程桌面工具)免费版
    VNCViewerforMac是一款运行在Mac平台上的远程桌面工具,vncviewermac版可以帮助您使用Mac的键盘和鼠标来控制远程计算机,操作简 ... [详细]
  • t-io 2.0.0发布-法网天眼第一版的回顾和更新说明
    本文回顾了t-io 1.x版本的工程结构和性能数据,并介绍了t-io在码云上的成绩和用户反馈。同时,还提到了@openSeLi同学发布的t-io 30W长连接并发压力测试报告。最后,详细介绍了t-io 2.0.0版本的更新内容,包括更简洁的使用方式和内置的httpsession功能。 ... [详细]
  • 本文介绍了Hyperledger Fabric外部链码构建与运行的相关知识,包括在Hyperledger Fabric 2.0版本之前链码构建和运行的困难性,外部构建模式的实现原理以及外部构建和运行API的使用方法。通过本文的介绍,读者可以了解到如何利用外部构建和运行的方式来实现链码的构建和运行,并且不再受限于特定的语言和部署环境。 ... [详细]
  • 关于我们EMQ是一家全球领先的开源物联网基础设施软件供应商,服务新产业周期的IoT&5G、边缘计算与云计算市场,交付全球领先的开源物联网消息服务器和流处理数据 ... [详细]
  • ZSI.generate.Wsdl2PythonError: unsupported local simpleType restriction ... [详细]
  • 图解redis的持久化存储机制RDB和AOF的原理和优缺点
    本文通过图解的方式介绍了redis的持久化存储机制RDB和AOF的原理和优缺点。RDB是将redis内存中的数据保存为快照文件,恢复速度较快但不支持拉链式快照。AOF是将操作日志保存到磁盘,实时存储数据但恢复速度较慢。文章详细分析了两种机制的优缺点,帮助读者更好地理解redis的持久化存储策略。 ... [详细]
  • XML介绍与使用的概述及标签规则
    本文介绍了XML的基本概念和用途,包括XML的可扩展性和标签的自定义特性。同时还详细解释了XML标签的规则,包括标签的尖括号和合法标识符的组成,标签必须成对出现的原则以及特殊标签的使用方法。通过本文的阅读,读者可以对XML的基本知识有一个全面的了解。 ... [详细]
  • 本文介绍了Web学习历程记录中关于Tomcat的基本概念和配置。首先解释了Web静态Web资源和动态Web资源的概念,以及C/S架构和B/S架构的区别。然后介绍了常见的Web服务器,包括Weblogic、WebSphere和Tomcat。接着详细讲解了Tomcat的虚拟主机、web应用和虚拟路径映射的概念和配置过程。最后简要介绍了http协议的作用。本文内容详实,适合初学者了解Tomcat的基础知识。 ... [详细]
  • 本文介绍了计算机网络的定义和通信流程,包括客户端编译文件、二进制转换、三层路由设备等。同时,还介绍了计算机网络中常用的关键词,如MAC地址和IP地址。 ... [详细]
  • 如何在服务器主机上实现文件共享的方法和工具
    本文介绍了在服务器主机上实现文件共享的方法和工具,包括Linux主机和Windows主机的文件传输方式,Web运维和FTP/SFTP客户端运维两种方式,以及使用WinSCP工具将文件上传至Linux云服务器的操作方法。此外,还介绍了在迁移过程中需要安装迁移Agent并输入目的端服务器所在华为云的AK/SK,以及主机迁移服务会收集的源端服务器信息。 ... [详细]
  • 本文介绍了Android 7的学习笔记总结,包括最新的移动架构视频、大厂安卓面试真题和项目实战源码讲义。同时还分享了开源的完整内容,并提醒读者在使用FileProvider适配时要注意不同模块的AndroidManfiest.xml中配置的xml文件名必须不同,否则会出现问题。 ... [详细]
author-avatar
一坛苦水_179
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有