freeBuf
主站

分类

漏洞 工具 极客 Web安全 系统安全 网络安全 无线安全 设备/客户端安全 数据安全 安全管理 企业安全 工控安全

特色

头条 人物志 活动 视频 观点 招聘 报告 资讯 区块链安全 标准与合规 容器安全 公开课

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

威胁预警 | Ursnif银行木马或将再度活跃
2018-01-03 10:00:57
所属地 广东省

0x1 概况

年底了,离发年终奖的日子又近了一些,金融圈的“TA”却先到了。当你美滋滋地在屏幕前查询余额时,电脑中“TA”那双贪婪的眼睛可能也在美滋滋地看着你。“TA”就是金融行业臭名昭著的Ursnif银行木马。

Ursnif银行木马也叫Gozi银行木马,最早出现于2007年,并一直活跃于金融行业。Ursnif功能强大,尤其自2010年其代码泄漏后,该木马逐渐涵盖了键盘记录器、收集剪贴板信息、截屏并上传、盗取邮箱及浏览器存储的密码、重启与破坏操作系统、收集计算机信息、删除文件、上传与下载、vnc、hook浏览器收发包函数、窃取网银认证信息等等十余种功能。据报道,Ursnif于今年10月份曾对日本金融行业发动攻击,旨在窃取目标用户的敏感信息,并且目前其攻击活动范围出现扩展迹象。

无独有偶,腾讯安全御见情报中心近期也发现Ursnif银行木马在国内频繁活动。该木马通过邮件传播,一旦用户打开邮件附件的宏文档并启用宏功能,Ursnif木马就会自动下载到用户电脑并运行,最终试图窃取用户的邮箱密码、网银帐号密码等敏感信息。此外,一旦黑客下发特定指令,用户电脑还将面临操作系统被破坏等危机。

年底预警:Ursnif银行木马或将再度活跃

(图1:邮件附件中的宏文档)

0x2 技术分析

1. 恶意word文档行为分析

打开邮件附件中的request.doc文档,电脑会弹出启用宏功能提示。当启用宏,并运行宏里的代码后,mshta.exe会执行网上的一段脚本。对脚本进行UrlDecode解码后,脚本内容显示如下:

年底预警:Ursnif银行木马或将再度活跃

(图2:UrlDecode后的脚本)

该脚本执行后会下载和运行versusb.pfx以及利用powershell执行hxxp://cash4lcd.com/Stat.counter地址处的的一段脚本,而Stat.counter中的脚本会下载和执行1300.exe。

年底预警:Ursnif银行木马或将再度活跃

(图3:Stat.counter中的脚本)

2. versusb.pfx行为分析

该pe文件中函数较少,主要作用是为了隐藏真正的payload。当其运行后会先解密出一段shellcode,为了便于理解,将此shellcode命名为shellcode1,该shellcode会加载和运行payload。

年底预警:Ursnif银行木马或将再度活跃

(图4:versusb.pfx OEP特点)

年底预警:Ursnif银行木马或将再度活跃

(图5:versusb.pfx OEP函数结尾部分会解密shellcode1)

年底预警:Ursnif银行木马或将再度活跃

(图6:跳转到shellcode1执行,shellcode1 oep的rva为405e0)

将shellcode1 dump出来后,分析后发现此shellcode会加载真正的payload。

年底预警:Ursnif银行木马或将再度活跃

(图7:Shellcode1 OEP特点)

在shellcode1 oep函数结尾处会自加载payload1,为了方便理解,将dump出来的payload1取名为payload1.exe。

年底预警:Ursnif银行木马或将再度活跃

(图8:shellcode1 oep函数结尾处解密和加载payload1.exe)

3. payload1.exe行为分析

Payload1.exe的主要作用是进行木马的安装,即设置开机自启动项,以及将带真正木马功能的payload2.dll注入到explorer等进程。经过分析发现该木马其实是Ursnif银行木马,开源地址为https://github.com/gbrindisi/malware/tree/master/windows/gozi-isfb

年底预警:Ursnif银行木马或将再度活跃

(图9:payload1 OEP特点)

Payload1.exe运行后会对“.bss”段进行解密,很多明文字符串隐藏在其中。

年底预警:Ursnif银行木马或将再度活跃

(图10:解密bss段)

接着会利用枚举设备的方法检测是否在虚拟机或vbox中,在获取“explorer.exe”进程id时会将进程id异或一个dword值进行存储。

年底预警:Ursnif银行木马或将再度活跃

(图11:检测是否在虚拟机或vbox中)

年底预警:Ursnif银行木马或将再度活跃

(图12:检测虚拟机后的部分逻辑)

年底预警:Ursnif银行木马或将再度活跃

(图13:获取explorer进程的id)

Payload1.exe通过扫描system32目录下的dll文件,并进行时间对比,利用满足一定条件的dll的名称拼凑出3个随机字符串,一个当作开机自动项注册表值,一个为“%appdata%\ Microsoft”目录下的目录名,一个为payload1.exe的备份文件名,比如在本次分析过程中3个值分别为“brcoider”、“CmluxRes”、“api-Prov.exe”。

年底预警:Ursnif银行木马或将再度活跃

(图14:获取3个随机名的部分逻辑)

年底预警:Ursnif银行木马或将再度活跃

(图15:获取3个随机字符串及生成随机注册表项)

年底预警:Ursnif银行木马或将再度活跃

(图16:利用上述3个随机名生成的开机自启动项)

年底预警:Ursnif银行木马或将再度活跃

(图17:安装时将自身复制到这个位置)

接着会进行提权判断及解密payload2.dll

年底预警:Ursnif银行木马或将再度活跃

(图18:提权判断及提权)

年底预警:Ursnif银行木马或将再度活跃

(图19:解密得到payload2.dll)

年底预警:Ursnif银行木马或将再度活跃

(图20:安装、自删除、注入)

年底预警:Ursnif银行木马或将再度活跃

(图21:自删除时用到的批处理) 

 年底预警:Ursnif银行木马或将再度活跃

(图22:远线程注入时,进行进程名hash比较)

被注入的进程的进程名及对应hash如下所示。

Hash 进程名
01D2C689h   iexplore.exe
0F5095F11h  firefox.exe
0A9A98FEh   chrome.exe
3BDB0689h opera.exe
0B176A6Eh explorer.exe

年底预警:Ursnif银行木马或将再度活跃

(图23:创建远线程的方式注入,线程函数其实是“RTlExitUserThread)

4. payload2.dll行为分析

木马主要功能都在payload2.dll中,涉及到的功能有键盘记录器、收集剪贴板信息、截屏或将截屏做成gif文件并上传、盗取邮箱及浏览器密码、重启与破坏操作系统、收集计算机信息、删除文件、上传与下载、vnc、hook浏览器收发包函数、盗取认证信息等。

payload2.dll主要以hook的方式收集信息,被注入到其它进程中的payload2.dll会用Pipe的方式与被注入explorer到进程中的payload2.dll进行通信。Payload2.dll与payload1.exe中的基础函数大致一样,也会对“.bss”段进行解密,也会使用自定义的crc函数对进程名算hash,进行hash比较而不是直接进行字符串比较。

年底预警:Ursnif银行木马或将再度活跃

(图24:payload2.dll OEP特点)

年底预警:Ursnif银行木马或将再度活跃

(图25:取配置项,包括c2)

年底预警:Ursnif银行木马或将再度活跃

(图26:解密后的ini,经整理后如图所示)

年底预警:Ursnif银行木马或将再度活跃

(图27:左侧为payload1.exe的crc函数,右侧为payload2.dll的crc函数)

年底预警:Ursnif银行木马或将再度活跃

(图28:键盘记录器原理)

年底预警:Ursnif银行木马或将再度活跃

(图29:收集剪贴板信息原理)

年底预警:Ursnif银行木马或将再度活跃

(图30:截屏原理,同样是用BitBlt函数)

年底预警:Ursnif银行木马或将再度活跃

(图31:重启)

年底预警:Ursnif银行木马或将再度活跃

(图32:IAT Hook CryptGetUserKey)

年底预警:Ursnif银行木马或将再度活跃

(图33:iat hook 创建进程的相关函数)

年底预警:Ursnif银行木马或将再度活跃

(图34:创建PipeServer线程用于接收其它进程收集到的数据)

年底预警:Ursnif银行木马或将再度活跃

(图35:盗取邮箱密码)

年底预警:Ursnif银行木马或将再度活跃

(图36:注入对比图,左为payload1.exe,右为payload2.dll)

年底预警:Ursnif银行木马或将再度活跃

(图37:宿主进程处理来自其它进程的各种命令)

年底预警:Ursnif银行木马或将再度活跃

(图38:乱写文件的方式破坏操作系统)

Hook Explorer进程中的函数,主要是为了方便获取证书等信息以及将dll注入浏览器等相关进程。Hook 浏览器进程中的函数主要是为了截获网络通信时的http协议,便于盗取银行认证等信息。

年底预警:Ursnif银行木马或将再度活跃

(图39:payload2.dll根据所在进程名执行相关的hook)

进程 Hook的函数
Explorer.exe Kernelbase.dll!RegGetValueW
KERNEL32.DLL! CreateProcessA
KERNEL32.DLL! CreateProcessW
ADVAPI32.DLL!CreateProcessAsUserW ADVAPI32.DLL!CreateProcessAsUserA
ADVAPI32.DLL!CryptGetUserKey
CHROME.exe WS2_32.DLL!closesocket
WS2_32.DLL!Recv
WS2_32.DLL!WSARecv
WS2_32.DLL!WSASend
SSL_Read(虚函数)
SSL_Write(虚函数)
SSL_Close(虚函数)
KERNEL32.DLL!LoadLibraryExW
firefox.exe NSPR4.DLL!PR_Read
NSPR4.DLL!PR_Write
NSPR4.DLL!PR_Close
NSS3.DLL!PR_Read
NSS3.DLL!PR_Write
NSS3.DLL!PR_Close
opera.exe WS2_32.DLL!closesocket
WS2_32.DLL!Recv
WS2_32.DLL!WSARecv
WS2_32.DLL!WSASend
SSL_Read(虚函数)
SSL_Write(虚函数)
SSL_Close(虚函数)
iexplore.exe/ microsoftedgecp.exe WININET.DLL!InternetReadFile
WININET.DLL!InternetWriteFile
WININET.DLL!InternetReadFileExA
WININET.DLL!InternetReadFileExW
WININET.DLL!HttpSendRequestA
WININET.DLL!HttpSendRequestW WININET.DLL!InternetQueryDataAvailable WININET.DLL!InternetConnectA
WININET.DLL!InternetConnectW
WININET.DLL!HttpQueryInfoA
WININET.DLL!HttpQueryInfoW
WININET.DLL!HttpOpenRequestW WININET.DLL!InternetSetStatusCallback

5. 1300.exe简单分析

经过分析发现此文件的payload与versusb.pfx的payload基本是一致的,只是使用的隐藏技术稍有不同。

年底预警:Ursnif银行木马或将再度活跃

(图40:1300.exe中的字符串特点)

0x3 安全建议

腾讯电脑管家安全专家建议用户特别警惕来历不明的邮件,勿随意点开其中的附件,保持电脑管家的正常开启,可有效拦截此类病毒攻击。

年底预警:Ursnif银行木马或将再度活跃

附录:IOC

C2

responsibleworktermsthe.net

mogolik.at/assets 

hofungo.at/assets 

injoom.cn/assets 

karilor.at/assets 

keep-drop.at/assets 

incomes.at/assets 

inorato.cn/assets 

wawa-go.at/assets 

gopool.at/assets

URL

http://potomuchtosrazuskazaleb.com/AFK/lima.php?utma=versusk

http://sukiebuchnieohuelivobos.com/AFK/lima.php?utma=versusb

http://ebanatibliatskazalebatvas.com/AFK/lima.php?utma=versusa

可执行文件

2C7C44B6F5DF8AF5CF44EF88F9F1BAD1

DD60A3558CA8578F183838331B3E633A

8B64198342354332179DC210E968F361

参考

https://researchcenter.paloaltonetworks.com/2017/02/unit42-banking-trojans-ursnif-global-distribution-networks-identified/

https://securityintelligence.com/gozi-banking-trojan-upgrades-build-to-inject-into-windows-10-edge-browser/

https://www.cybereason.com/blog/labs-using-behavioral-analysis-to-detect-the-ursnif-banking-trojan

https://github.com/gbrindisi/malware

*本文作者:腾讯电脑管家;转载请注明来自 FreeBuf.COM

# Ursnif银行木马
本文为 独立观点,未经允许不得转载,授权请联系FreeBuf客服小蜜蜂,微信:freebee2022
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
相关推荐
  • 0 文章数
  • 0 关注者