Sec Hotspot 首页  排行榜  收藏本站  技术博客  RSS
统计信息
已收录文章数量:15853 篇
已收录公众号数量:90 个
本站文章为爬虫采集,如有侵权请告知
本周热门文章
Dibrary 第二季——好书推荐预告   2020.11.26 17:54:30  33
CVE-2020-14882​&14883:Weblogic RCE复现   2020.11.27 17:40:52  32
我拿到月薪3W的offer了   2020.11.29 22:20:04  31
CVE-2019-11580 RCE漏洞分析   2020.11.29 15:01:02  31
千万别把钱放在余额宝里!!!   2020.11.27 19:00:58  31
MySQL 漏洞利用与提权   2020.11.24 15:00:30  31
天融信科技集团正式完成公司更名   2020.11.26 10:45:21  30
已收录微信公众号
网安寻路人 网信中国 区块链大本营 白说区块链 区块链投资家 区块链官微 区块链铅笔Blockchain HACK学习呀 二道情报贩子 合天智汇 小白帽学习之路 小米安全中心 弥天安全实验室 SAINTSEC SecPulse安全脉搏 TideSec安全团队 360安全卫士 游侠安全网 计算机与网络安全 安全祖师爷 安全学习那些事 腾讯安全联合实验室 黑客技术与网络安全 安全圈 腾讯御见威胁情报中心 Python开发者 Python之禅 编程派 Python那些事 Python程序员 安全威胁情报 吾爱破解论坛 行长叠报 安在 i春秋 嘶吼专业版 E安全 MottoIN 网信防务 网安杂谈 数说安全 互联网安全内参 漏洞战争 安全分析与研究 邑安全 ChaMd5安全团队 天融信阿尔法实验室 安全牛 SecWiki 安全学术圈 信安之路 漏洞感知 浅黑科技 Secquan圈子社区 奇安信集团 奇安信 CERT 国舜股份 雷神众测 盘古实验室 美团安全应急响应中心 瓜子安全应急响应中心 顺丰安全应急响应中心 蚂蚁金服安全响应中心 携程安全应急响应中心 滴滴安全应急响应中心 字节跳动安全中心 百度安全应急响应中心 腾讯安全应急响应中心 网易安全应急响应中心 OPPO安全应急响应中心 京东安全应急响应中心 Bypass CNNVD安全动态 安恒应急响应中心 天融信每日安全简报 奇安信威胁情报中心 看雪学院 黑白之道 水滴安全实验室 安全客 木星安全实验室 云鼎实验室 绿盟科技安全预警 白帽汇 深信服千里目安全实验室 腾讯玄武实验室 长亭安全课堂 FreeBuf 绿盟科技 nmask
Glupteba攻击活动分析
本文来自公众号:嘶吼专业版   2019.09.17 10:05:03


研究人员近期发现一起创博恶意软件Glupteba的恶意广告攻击活动。Glupteba恶意软件并非一款全新的恶意软件,之前有分析称其与Operation Windigo攻击活动有关,并通过漏洞利用套件传播到Windows用户。2018年,有安全公司分析称Glupteba僵尸网络已经从Operation Windigo独立出来,转到到 pay-per-install广告恶意软件服务。Glupteba背后的攻击者非常复杂,有提供代理服务的,有使用EternalBlue漏洞利用来入侵本地网络的,也有运行Monero (XMR)加密货币挖矿机的。

通过分析近期广告恶意软件攻击活动中的Glupteba释放器变种,研究人员发现释放器下载了两个新的组件:

· 一个可以从浏览器窃取敏感信息并发送信息到远程服务器的浏览器窃取器,窃取的信息包括浏览器历史、web cookie,账户名和密码等;

· 一个可以利用 CVE-2018-14847漏洞利用攻击本地网络中的MikroTik路由器的漏洞利用组件。该组件会在路由器上设置定时任务,上传窃取的管理员凭证到远程服务器。被黑的路由器会被配置为SOCKS代理来中继恶意流量,以匹配Windows机器上的Glupteba僵尸网络的原始目的。

除此之外,研究人员还在Glupteba中发现了可以从比特币交易中提取最新C2域名的特性。可以看出,攻击者仍在不断改进恶意软件,并尝试 扩展代理网络到物联网设备中。

图1. Glupteba攻击活动攻击流

图2.下载Glupteba释放器下的文件共享网站上的恶意广告弹窗

Glupteba释放器

下载的释放器二进制软件是用定制的打包器打包的,使用的是Go编程语言,并编译为可执行文件。释放器首先获取当前应用信息、操作信息、硬件信息和二进制文件中硬编码的其他信息来config initialization(初始化配置)信息。然后创建一个注册表HKEY_USERS\ \Software\Microsoft\TestApp 来保存所有获取的信息。运行config initialization函数的结果如下图所示:

图3. Glupteba释放器创建的注册表

然后函数 sendParentProcesses从注册表中获取machine_guid,从file name, product identification (PID), names of parent processes中获取distributor id和campaign id。然后嵌入信息到POST请求中,并用AES加密,然后上传到C2服务器hxxps:// /api/parent-processes。

然后,释放器检查进程是否提升权限,并以SYSTEM用户运行。如果进程未提权,就尝试利用fodhelper方法来提权。如果提权但未以SYSTEM用户运行,就用Run as Trusted Installer方法,使用窃取的winlogon进程token来以SYSTEM权限运行进程。

主释放器二进制文件中嵌入了许多用于隐藏文件和进程的rootkit驱动,和其他用来帮助安装必要驱动的工具。

函数 executeTask 负责执行这些命令:

函数 mainInstall 检查是否安装了AV程序,添加防火墙规则等。

函数 mainPoll定期从C2服务器接收新命令。发送POST请求到hxxps:// /api/poll。POST参数示例如下:

challenge=e94e354daf5f48ca&cloudnet_file=1&cloudnet_process=1&lcommand=0&mrt=1&pgdse=0&sb=1&sc=0&uuid=&version=145&wup_process=1&wupv=0.

查询是AES 256加密的。

最后,函数 handleCommand 实现后门功能。

C2更新

后门有一些标准化的能力,但有一个非常特殊的能力就是通过函数discoverDomain通过区块链来更新C2服务器地址。

discoverDomain 函数可以通过发送后门命令或由释放器自动完成。DiscoverDomain首先枚举公开列表中的Electrum Bitcoin钱包服务器地址,然后尝试用硬编码的哈希值来查询脚本的区块链脚本哈希历史。

该命令会显示相关的交易。

每个交易经过分析后,会搜索OP_RETURN指令。

OP_RETURN指令后面的数据段用作AES解密路径的指令,前12个字节用作AES GCM 标签,后32个字节是加密的数据。32字节长的AES key是硬编码在二进制文件中的。

0f8f7cd39e1a5231b49f986b877befce0c2f558f0c1a9844833ac702cb3eba6e解码后就是venoxcontrol[.]com,就是当前的C2服务器地址。

该技术使其攻击者可以很方便地替换C2服务器地址。如果对C2服务器失去控制,就需要添加一个新的比特币脚本,受感染的机器解密脚本数据,重新连接后就可以获取新的C2服务器地址。

浏览器窃取组件

最新Glupteba变种中有一个组件是updateprofile,是一个浏览器profile、cookie、password的窃取器。受攻击的目标有Chrome, Opera, Yandex浏览器,cookie、历史和其他文件都会被zip压缩,然后上传到信息收集服务器的 /api/log路径下。与主释放器类似,该组件也是用Go语言编写的,然后编译成可执行文件,用UPX打包。

另一个浏览器窃取器的版本是vc.exe,其目标是提取浏览器密码和cookie,并将提取的数据Post到信息收集服务器的 /bots/post-en-data?uuid=路径下。

路由器漏洞利用组件

研究人员发现Glupteba释放器下载的另一个组件是路由器漏洞利用组件,也是用Go语言开发的。它会查找受害者网络的默认网关,默认IP网管的列表是调用WMI命令SELECT DefaultIPGateway FROM Win32_NetworkAdapterConfiguration WHERE IPEnabled = true来获取的。

除了这些地址,还有三个默认的地址:192.168.88.11, 192.168.0.1, 192.168.1.1。

组件成功连接到设备后会监听8291端口,然后尝试利用CVE-2018-14847漏洞,该漏洞影响MikroTik路由器上的RouterOS操作系统。漏洞利用代码看似是来自exploit-db的,允许攻击者从未安装补丁的路由器上抓取管理员凭证。获取的账户名和密码都保存在JSON对象中,然后加密,POST到C2服务器的/api/router路径下。

成功获取凭证后,就会在路由器中添加定时任务。一共有3种方法来添加定时任务,分别是使用WinBox协议,使用SSH或API。

图4. Glupteba攻击活动中添加的定时任务示例

路由器漏洞利用组件会设计一个名为U6的定时任务用于C2。该任务会每隔10分钟检查一次C2 url,然后执行从URL下载的内容。C2 url上还会添加一个唯一的UUID,UUID与受害者机器上Glupteba的bot ID是相同的。该URL一般会返回404错误,但是当master bot发送命令时,就会返回一个RSC文件,这是RouterOS配置文件的格式。

该文件是bot master控制路由器的命令。在攻击中,研究人员发现C2服务器会发送多个RSC文件来配置被黑的路由器成为SOCKS代理。具体步骤如下:

· 将U6定时任务的时长从10分钟修改为15秒;

· 第二个配置是禁用包括winbox, telnet, api, api-ssl在内的服务。这是为了预防路由器被其他攻击者利用相同漏洞入侵。然后打开SSH和SOCKS服务,监听随机分配的端口,创建防火墙规则来接收到SOCKS端口的外部连接。

· 第3个配置文件是移除现有的SOCKS访问列表。

· 第4个配置文件是添加新的SOCKS访问列表来限制服务只接收来自特定IP范围的连接。IP地址的范围一般就是攻击者服务器所在的地址。

流量中继

通过上面的步骤,被黑的路由器就变成了攻击者中继流量的SOCKS代理。研究人员监控被黑的路由器发现了只有部分流量会被中继。第一个通过SOCKS代理的路由的远程连接是来自服务器的,应该是属于攻击者。服务器查询http://ip-api[.]com/json,该地址返回当前SOCKS代理服务器的IP地址。查询会重复发送来监控SOCKS代理服务。

检查了路由器状态后,研究人员发现不同的服务器有两种类型的流量连接到代理。第一个是垃圾邮件流量,研究人员发现一个远程服务器建立了通过被黑的SOCKS代理与不同的邮件服务器的SMTP连接。如果邮件服务器接收连接,远程服务器就开始发送垃圾邮件。垃圾邮件看似是与Canadian Pharmacy主题相关的。

图5. 通过被黑的路由器来发送垃圾邮件流量示例

图6. 垃圾邮件重定向的“Canada Pharmacy”网站

除了垃圾邮件流量,研究人员还发现一些来自远程服务器的连接到Instagram的流量。但是这些流量是通过HTTPS加密保护的,所以无法了解连接的内容。

图7. Instagram连接示例(HTTPS加密的)

据上可以看出,Glupteba仍然在不断发展,并加入了新的功能。通过比特币交易来获取数据以更新C2服务器说明攻击者使用了一些很少见的技术来尝试绕过传统安全解决方案的检测。

参考来源:

https://blog.trendmicro.com/trendlabs-security-intelligence/glupteba-campaign-hits-network-routers-and-updates-cc-servers-with-data-from-bitcoin-transactions/

作者:Jaromir Horejsi and Joseph C. Chen