如何逆向破解HawkEye keylogger键盘记录器,进入攻击者邮箱?

这一切要从一次恶意邮件攻击活动开始。下图为我们最近监测到的一个以恶意文件为发送附件的邮件攻击,请注意邮件信息中的英语写作水平是多么差劲,其实,这也是恶意邮件的一个特点,还请收件人提高警惕。

邮件样本

在这封邮件中其附件以“.doc”文件扩展名结尾,但其实这是一个RTF(富文本)格式文件,文件被嵌入了一个精心构造的cve-2010-3333漏洞利用脚本。

漏洞产生原因为微软office文件格式转换器在处理RTF文件“pfragments”参数属性时存在栈缓冲区溢出,远程攻击者可以借助特制的RTF数据执行任意代码,该漏洞又名”RTF栈缓冲区溢出漏洞”,但微软官方已在5年前就已修复了漏洞。

被加密混淆的RTF文件

在上图中你可以看到,漏洞利用代码中的shellcode字段被模糊变形以避免杀毒软件的检测,在经过代码提取、清理和解密之后,我确定了漏洞利用代码的shellcode将会从一个未知域名volafile.io下载并执行某些文件。

shellcode 的16进制字符串

漏洞攻击负载

下载的可执行文件

经过分析,从volafile.io 下载的文件是一个.NET可执行文件,通过十六进制文件分析之后可以得到一个有趣的线索,编码中出现了“HawkEyekeylogger”字段。

Hawkeye 键盘记录的主体

通过GOOGLE搜索技巧,最终我找到了开发该Keylogger软件的网站,在网站上,他们声称并列出了所有“HawkEyekeylogger”具备的“牛X的功能”。

HawkEye Keylogger 功能列表

在我的动态分析中发现,该Keylogger在一个名为%appdata%的文件夹下释放自身副本,启动一个名为windowsupdate.exe的程序为运行进程,并设置进程启动信息为随机自启动,实现与系统同时启动。

Keylogger’的例行程序

同时,该Keylogger也在受感染的系统中释放以下文件:

%Temp%\sysinfo.txt–恶意程序的执行路径 %Appdata%\pid.txt–恶意进程ID %Appdata%\pidloc.txt–恶意程序可执行文件的位置

之后,我想通过观察Keylogger的网络外联活动以获取其远程管理控制IP地址

受感染主机的网络包

一段时间之后,被Keylogger感染的主机就开始向攻击者邮箱发送信息了

被感染keylogger的主机向攻击者远程控制管理邮件发送本机相关信息

这些信息包括:

计算机名称(或CPU信息) 本地日期和时间 系统语言 安装的操作系统 系统开发平台 操作系统版本 系统内存 开发框架 系统权限 默认浏览器 安装的防火墙 内部IP地址 外部IP地址 电子邮件密码和相关设置 浏览器设置和FTP密码

如前所述,该Keylogger软件是利用.NET框架编写的,所以接下来我用.NET 编译器ILSpy来完成这项任务。

Hawkeye keylogger 反编译代码

我把“HawkEye keylogger”开发网站上声称具备的“牛X的功能”,与反编译源代码时认真对照,可以肯定的是其功能确实很厉害。这以下就是其具备的功能:

键盘记录:

键盘记录程序

剪贴板操作记录:

剪贴板操作例行程序

窃取浏览器、邮件客户端、FTP密码,它还试图窃取密码管理器凭据和系统密码:

还有一个将keylogger通过USB传播感染到其它系统主机的蠕虫程序:

USB 感染程序

它还针对在线游戏平台Steam用户,通过删除电脑上储存的游戏配置数据和登录信息,强制用户再次登录,然后利用键盘记录程序窃取用户的登录密码。

Steam游戏平台感染程序

另外,HawkEye keylogger还通过邮件反弹和FTP方式窃取被感染系统的桌面截屏,以确定其程序是否被正确配置。

邮件发送程序

攻击者也可以配置键盘记录软件,通过HTTP通道上传被盗信息至一个PHP主机,但这部分代码似乎是空的。

最有趣的是我在反编译代码中发现了一个名为form1()的C#构造函数,这就是HawkEye keylogger软件的配置存储函数,但攻击者使用了base64对远程控制和管理的电子邮件和FTP信息进行了加密隐藏。

keylogger配置信息

但是,这些加密的数据并不总是安全的,特别是当反编译源代码中就可以看出解密程序来时

解密函数调用

下图就是解密函数,它包含两个字符串参数encrypted bytes和secretkey,密钥字符串是固定的硬编码hawkspysoftwares

解密程序

同时,HawkEye keylogger使用者还使用了Unicode字符串 “099u787978786″对密码字符串进行加盐处理

keylogger 使用的加密方法

出于好奇,我复制了代码的解密部分,并进行了相应修改,在MS VisualStudio程序下编译,最终解密成功,包含了邮件和FTP账户密码(对不起,我需要对解密信息进行模糊处理)

经过解密的攻击者的远程控制邮箱和FTP信息

当然,最终我还是好奇地登录了攻击者的远程控制管理邮箱。

攻击者的远程控制管理邮箱登录界面

在攻击者的控制管理邮箱里,我发现了受害者被窃取的电子邮件信息,并尝试进行了登录,让人惊讶的是,受害者的电子邮件系统中被设置了邮件转发功能,受害者所有的收发邮件被自动转发到了攻击者的另外一个邮箱seemaexport3@gmail.com。

受害者邮箱系统被设置了自动转发功能

在对此次攻击分析之后,我们又发现了另外一个包含CVE-2012-0158漏洞利用代码的RTF邮件攻击。虽然这两个漏洞都比较过时了,但仍然被广泛用于邮件攻击中。

(后记:在2015年被发现的“海德薇”(Hedwig)APT网络攻击中,HawkEyekeylogger被用作窃密木马)

*原文地址:trustwave,clouds编译,转载请注明来自FreeBuf黑客与极客(FreeBuf.COM)

原文发布于微信公众号 - FreeBuf(freebuf)

原文发表时间:2016-07-06

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏农夫安全

【原创】中间件测试方法总结---(3)

0x01 应用测试 对于类似4A、BOP这样的应用,需要进行记录,并按照常规的渗透办法进行安全测试。【必要时候,需要进行登录测试】 其他应用测试 发现办法 协议...

47770
来自专栏拂晓风起

浅谈HTML5单页面架构(一)——requirejs + angular + angular-route

27020
来自专栏小曾

web安全:通俗易懂,以实例讲述破解网站的原理及如何进行防护!如何让网站变得更安全。

本篇以我自己的网站为例来通俗易懂的讲述网站的常见漏洞,如何防止网站被入侵,如何让网站更安全。

47940
来自专栏FreeBuf

Kali 2.0 安装与使用指南

关于kali使用前的一些配置,网上有很多版本,但是几乎都很雷同,或者是不全,或者是根本就没有测试过,或者是有的方法是错的(换句话说是版本变化的差异),因此让很多...

1.1K50
来自专栏逸鹏说道

某厂2016实习招聘安全技术试题答案及解析

0×00 前言 鉴于曾经做过某厂招聘-安全技术笔试题目,故留此一记,以作怀念。 此外,网上也有公布的相关的答案,但是其中有些题目稍有错误或者解释不全,当然我也有...

1.5K40
来自专栏互联网杂技

HTTP,HTTP2.0,SPDY,HTTPS你应该知道的一些事

作为一个经常和web打交道的程序员,了解这些协议是必须的,本文就向大家介绍一下这些协议的区别和基本概念,文中可能不局限于前端知识,还包括一些运维,协议方面的知识...

592110
来自专栏沈唁志

博客开启HTTPS

24760
来自专栏Android干货园

Android Studio 非常好用的几款插件,好用到爆

版权声明:本文为博主原创文章,转载请标明出处。 https://blog.csdn.net/lyhhj/article/details/49...

87410
来自专栏前端安全

聊聊几种去Flash改造方案

Web技术飞速发展的如今,我们在感受新技术带来的便捷和喜悦的同时,也时常在考虑着一个问题:老技术如何迁移。

479140
来自专栏小狼的世界

HP-UX培训学习笔记

HP-UX操作系统全称为Hewlett Packard UniX,是惠普服务器上所有的操作系统。其发源自 AT & T SRV4系统,可以支持HP的PA-RIS...

17220

扫码关注云+社区

领取腾讯云代金券