三天内不给钱就泄密,Sekhmet勒索需警惕

2020-08-26 6,205

背景概述

Sekhmet勒索病毒于今年三月份出现,已有一家跨境IT服务公司的数据被该勒索病毒团伙在博客上公布了近百G的数据。

攻击者采用先窃取再加密的方式实施勒索行为。该勒索病毒和“大名鼎鼎”的Sodinokibi勒索病毒一样使用了随机加密后缀。勒索提示文档告知受害者若三天内不缴纳赎金,攻击者将在其搭建的网站上公布受害者的机密信息。

Sekhmet勒索病毒暂无公开解密方式。

执行过程

1.png

样本分析

DllRegisterServer为勒索函数:

图片1.png

该样本使用了以下方法来阻碍分析:

1. 使用大量无效跳转;

2. 使用push address ,retn进行函数调用;

3. 手动平衡堆栈;

图片2.png

利用GetProcAddress载入加密、文件、线程等函数阻碍静态特征提取;

图片3.png

创建空间写入PE文件

创建线程一并跳转执行;

图片5.png

调用WMI;

图片6.png

选择卷影删除;

图片7.png


收集用户信息;

图片8.png


生成用户RSA公私钥对2048位,获取密钥容器CryptAcquireContextW;

图片9.png


生成密钥对CryptGenKey;

图片10.png

图片10.12.png

 

加密用户私钥CryptEncrypt。

图片11.png


创建线程二(0xACF500)

向攻击者服务器回传用户信息;

图片12.png

计算IP地址185.82.126.81;

图片13.png


连接至185.82.126.81:50端口;

图片14.png


创建POST 185.82.126.81:50/update.php?id=7118;

图片15.png


发送信息;

图片16.png

 

回传信息内容:

使用了Chacha20算法加密,初始密钥矩阵如下:

图片17.png

图片18.png

 

使用EncryptBinaryToStringA转换,包含Chacha20密钥的随机值,行列置换后的密钥矩阵及密钥流,用户组信息:

图片19.png


创建线程三

对每个驱动盘进行加密,获取驱动信息;;

图片20.png


获取对每个驱动开启单独的加密线程;

图片21.png


每个文件目录下先创建RECOVER-FILE.txt;

图片22.png


写入内容;

图片23.png


遍历文件夹;

图片24.png


不加密部分文件如boot.ini、ntuser.dat等;

图片25.png


不加密文件后缀lnk、exe、sys、dll;

图片26.png


读取文件末尾0x10C字节数据;

图片27.png


获取用户公钥;

图片28.png


两次CryptGenRandom分别生成Chacha20密钥矩阵的Key和Nonce;

图片29.png


使用用户RSA公钥加密该密钥矩阵;

图片30.png


将RSA加密后的Chacha20密钥矩阵写入文件;

图片31.png


使用Chacha20加密文件写入文件;

图片32.png


生成随机后缀;

图片33.png


修改文件后缀,修改完清除内存中的chacha20初始密钥;

图片34.png


关闭句柄,退出线程。

本文作者:Further_eye

本文为安全脉搏专栏作者发布,转载请注明:https://www.secpulse.com/archives/139615.html

Tags:
评论  (0)
快来写下你的想法吧!

Further_eye

文章数:319 积分: 2105

深信服科技旗下安全实验室,致力于网络安全攻防技术的研究和积累,深度洞察未知网络安全威胁,解读前沿安全技术。

安全问答社区

安全问答社区

脉搏官方公众号

脉搏公众号