相关阅读:Ouroboros勒索病毒,我是链接请点我
样本信息
文件名:Ouroboros.exe
MD5:1EF31C7718652ADA9C5BE1B7DE59ED79
SHA1:FD579656910B2EBAD7D8A72249F802E1806739E1
样本功能解析
Ouroboros勒索病毒拥有以下功能:
(1) 终止数据库相关服务和进程;
(2) 上传被加密用户的ID和机器IP等信息;
(3) 搜索可加密文件;
(4) 文件加密;
(5) 放置勒索信息提示文件;
(6) 删除卷影备份。
终止数据库服务和进程
病毒开始执行后,会终止数据库相关服务的执行。此外,还会遍历进程,结束数据库相关进程。关闭数据库相关服务和进程的目的在于解除重要数据文件的占用,防止进行文件加密时出现访问冲突从而导致加密失败。
被终止数据库相关服务如下:
- SQLWriter
- SQLBrowser
- MSSQLSERVER
- MSSQL$CONTOSO1
- MSDTC
- SQLSERVERAGENT
- MySQL
被结束数据库相关进程如下:
- sqlserver.exe
- msftesql.exe
- sqlagent.exe
- sqlbrowser.exe
- sqlwriter.exe
- mysqld.exe
- mysqld-nt.exe
- mysqld-opt.exe
上传用户ID
病毒上传用户机器信息到IP地址:92.222.149.118。主要内容为:机器IP地址、用户ID、磁盘已使用空间(单位GB)、病毒给用户留下的联系邮箱。
示例:
用户ID为病毒在本地生成的15字节随机字符串。
病毒通过访问在线IP查询页面的方式获取用户机器公网IP。
文件加密
Ouroboros将会在机器上全盘搜索文件进行加密,但会避开CD-ROM、Ramdisk等类型的磁盘。
搜索到的文件除勒索信息提示文件和已加密文件外,其余全部进行加密。
黑客在病毒程序中使用了AES对称块加密算法的CTR模式对文件进行加密。采用一次一密的方式,为每个被加密文件生成32字节随机值作为对称密钥,以及12字节的随机值作为CTR计数器初始值。
当前的Ouroboros勒索病毒样本并不会将文件内容进行全部加密,而是间隔一定距离加密一段内容。
50Mb以下的文件加密3个区间,每个区间大小约为0.94Kb:
(1) 0~86000字节区间
(2) 90000~176000字节区间
(3) 900000~986000字节区间
大于50Mb的文件除了以上3个区间外,还会读取文件52000000~52086000字节的这段区间进行加密。
文件加密结束后,使用硬编码在文件中的攻击者RSA(2048位)公钥加密AES对称密钥和CTR模式计数器的Nonce值共44字节,得到一个256字节的结果写入文件尾部。
被加密文件尾部示例:
最后为加密后文件添加扩展名.Email=[Jacdecr@mailfence.com]ID=[<ID>].odveta。
被加密后文件结构如下图:
删除卷影
所有可加密文件加密完成后,病毒删除卷影备份,防止管理员通过卷影备份恢复数据。
勒索信息
病毒在每个加密文件所在目录下创建一个勒索信息提示文件Unlock-Files.txt,并将文件属性设置为只读,防止文件被修改。
在提示文件中,黑客告知用户,想要解密文件需要联系邮箱Jacdecr@mailfence.com或Blackhotde@cock.li、decader@tuta.io。并且联系黑客有时间限制,2天后未联系赎金将会翻倍,1周后未联系赎金为原来3倍。开始时间应该就是病毒执行过程中用户ID被上传的时间(然而中国区的部分用户很有可能因为无法连接黑客的服务器IP地址从而导致病毒执行过程中ID上传失败)。
另外,黑客只接受数字货币作为赎金。并告知用户购买比特币的相关网站:
- hxxps://localbitcoins.com/buy_bitcoins
- hxxps://www.coindesk.com/information/how-can-i-buy-bitcoins。
|
|
|
|
|
|
评论
直达楼层