PoetRAT:利用COVID-19话题为诱饵的Python恶意程序

作者:启明星辰金睛安全研究团队

近期,研究人员发现一起利用新型冠状病毒(COVID-19)相关题材为诱饵的钓鱼邮件攻击,该攻击中使用了一个新的恶意软件PoetRAT。PoetRAT使用Python编写,其具备远程访问木马(RAT)的所有基本功能,攻击者可以完全控制受感染的系统。此外,分析过程中发现攻击者通过PoetRAT下发了其它工具,如:硬盘监视器、键盘记录程序、浏览器的凭证窃取工具、摄像头控制程序以及其它通用软件的密码窃取程序。
29120-4d67vh0ggkp.png

Dropper

与常见的钓鱼邮件攻击一样,邮件附件中Word文档包含恶意Visual Basic脚本。它首先将Word文档加载到内存中,然后,从文件的末尾提取7,074,638个字节,并将其写入到一个名为“smile.zip”的压缩文件。
95768-pb9g2maq3y.png
这个ZIP文件包含一个Python解释器和PoetRAT主体的Python脚本。Word文档中宏代码将ZIP文件解压并执行名为“launch .py”的启动脚本。启动脚本负责检查当前的执行环境。如果检查到当前系统的硬盘容量小于62GB,则认为自己运行在沙箱环境中,随后它会用无害的文件“License.txt”的内容来替换恶意软件脚本并退出。
27094-aavrdxloepb.png
如果它确定不是在沙箱环境中运行,它将生成一个唯一的ID,用于标识当前受害系统。

RAT

RAT功能由两个Python脚本协同完成。其中一个名为“frown.py”的脚本负责与命令控制服务器(C2)的通信。它使用TLS加密通信内容并通过143端口传输。当成功建立连接后,它将发送字符“almond”至服务器,而服务器则会使用命令“who”或“ice”进行回复。PoetRAT接收到“who”命令时,将回传受害主机的用户名、计算机名称和先前生成的UUID。“ice”命令仅用来确认连接。
另一个脚本为“smile.py”,负责C2命令的解释和执行。可用的命令有:

ls – 文件列表
cd – 更改当前目录
sysinfo – 获取系统信息
download – 上传文件至C2服务器
upload – 从C2服务器下载文件
shot – 截取当前屏幕并上传至C2
cp – 文件拷贝
mv – 移动文件
link – 链接文件
register – 注册表编辑
hide – 更改文件隐藏属性
compress – zip压缩文件
jobs – 进程相关操作
截图、上传、下载等功能会使用FTP协议。FTP传输的相关凭据未在样本中进行硬编码,而是在执行过程中向C2服务器进行动态请求。
与常见的持久化方式类似,PoetRAT将启动脚本 “launcher.py” 写入RUN自启动项下。系统启动后,该注册表项将执行Python脚本“launcher.py”。

"C:\Users\Public\Python37\pythonw.exe" 
"C:\Users\Public\Python37\launcher.py" "police"s\0

在写入RUN项时,PoetRAT附加了一个启动参数“Police”。在launcher.py启动脚本中,“Police”关键字将跳过沙盒检查和初始化过程。用于标识已经感染的主机,以确保不用重新检查运行环境。
12758-uqjnqtu61ak.png
“frown.py”通信脚本与 “frown.py”命令解释执行脚本 之间的协同交互通过名为 “Abibliophobia23”的文件完成,命令和执行结果使用自定义加密算法写入该文件中。
04421-skkxsafgfx.png

硬盘监视器

在PoetRAT植入主机后,攻击者立即安装了一个名为“dog.exe”的工具。该攻击使用.NET编写,用来监视硬盘驱动器中的指定路径,并根据配置文件使用电子邮件或FTP回传信息。
配置文件名为“dconf.json”,格式大致如下:

{
"FileSize":50,
"BasePath":"C:/ProgramData/",
"MyPath":"TARGET_Dog/",
"UploadType":"ftp",
"FtpUsername":"username1",
"FtpPassword":"password1",
"FtpUri":"ftp://ftp.ftpserver/repo/",
"SmtpHost":"smtp.servermail.com",
"EmailUser":"username2@servermail.com",
"EmailPass":"password2",
"Paths":"C:/Users/User/Desktop/,C:/Users/User/Downloads/,C:/Users/User/Documents/"
}

FileSize表示回传文件的最大大小(在该例中为50MB)
BasePath和MyPath组成工作目录
UploadType表示回传方式,可以是FTP或电子邮件
FtpUsername,FtpPassword和FtpUri定义FTP回传的参数
SmtpHost,EmailUser和EmailPass定义电子邮件回传的参数
Paths表示在受感染系统上进行监视的路径。
当在“Paths”指定的目录下进行文件改动时。该监视器会执行相应的事件回调函数,对改动的文件进行过滤并上传。
42574-ypjfgjfs1ho.png

其它工具

分析过程中发现其它的Windows渗透工具:

Klog.exe:键盘记录器,记录结果保存至“ System32.Log”。
87758-46n0an34v8g.png
“ Browdec.exe”:浏览器凭证窃取工具
“ voStro.exe”:编译成exe的Mimikatz工具,Mimikatz是著名的凭据窃取工具。
“ Tre.py”:用于创建文件和文件/目录树的脚本。
WinPwnage:开源的提权框架。
Nmap:一种开源的渗透测试和网络扫描工具。
参考链接
https://blog.talosintelligence.com/2020/04/poetrat-covid-19-lures.html

本文经授权后发布,本文观点不代表立场,转载请联系原作者。
Windows被爆5个0 day高危漏洞,半年仍未修复
« 上一篇 05-26
常见的Web源码泄漏漏洞及其利用
下一篇 » 05-26

相关推荐

基于社工的钓鱼研究

声明由于传播、利用此文所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,雷神众测以及文章作者不为此承担任何责任。雷神众测拥有对此文章的...