楼主: 落华无痕
收起左侧

[病毒样本] r77rootkit计划任务powershell执行注册表代码,开机注入所有进程

  [复制链接]
hsks
发表于 2024-7-22 23:13:43 | 显示全部楼层
本帖最后由 hsks 于 2024-7-22 23:16 编辑
00006666 发表于 2024-7-22 22:50
这玩意不怎么算是rootkit吧,一般rootkit都指的是驱动

https://bytecode77.com/

https://github.com/bytecode77/r77-rootkit

是的,开源仓库已经官方网站都标上了rootkit(

话说rootkit也不只是驱动吧,比如Linux那些rootkit(
落华无痕
 楼主| 发表于 2024-7-22 23:16:23 | 显示全部楼层
00006666 发表于 2024-7-22 22:50
这玩意不怎么算是rootkit吧,一般rootkit都指的是驱动

https://bytecode77.com/

Rootkit是一种特殊的恶意软件,它的功能是在安装目标上隐藏自身及指定的文件、进程和网络链接等信息。
这个样本也能隐藏自己(不是attrib那种简单的隐藏),算rootkit吧。
ANY.LNK
发表于 2024-7-22 23:16:36 | 显示全部楼层
hsks 发表于 2024-7-22 23:13
https://github.com/bytecode77/r77-rootkit

是的,开源仓库已经官方网站都标上了rootkit(

FileLess R3 Rootkit
wowocock
发表于 2024-7-23 10:39:25 | 显示全部楼层

注册表里保存的就是那EXE,H:\CRYPTOCOIN\rootkit\r77-rootkit-master_1.3.0\r77-rootkit-master\vs\InstallStager\obj\Release\InstallStager.exe

评分

参与人数 1人气 +1 收起 理由
ANY.LNK + 1 感谢解答: )

查看全部评分

wowocock
发表于 2024-7-24 10:56:51 | 显示全部楼层
ANY.LNK 发表于 2024-7-22 19:10
已按要求导入注册表,导入XML完成,重启完成

配置有要求吗,SYSTEM权限,配置是按哪个系统(XP,7,还 ...

扫描计划任务是通过COM调用,SVCHOST来枚举计划任务,如果木马做了API HOOK挂钩隐藏了文件,可能导致枚举不到木马计划任务了,如图连PCHUNTER都枚举不到木马的计划任务,只有清除SVCHOST里的NtQueryDirectoryFile hook 后,PCHUNTER才能枚举到该计划任务,所以需要用PCHUNTER手动删除c:\windows\system32\tasks\目录下的这2个隐藏计划任务文件才行。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?快速注册

x

评分

参与人数 4经验 +30 人气 +6 收起 理由
驭龙 + 1 版区有你更精彩: )
QVM360 + 30 版区有你更精彩: )
ANY.LNK + 2 感谢解答: )
tdsskiller + 3 版区有你更精彩: )

查看全部评分

wwwab
发表于 2024-7-24 11:28:10 | 显示全部楼层
本帖最后由 wwwab 于 2024-7-24 11:40 编辑
wowocock 发表于 2024-7-24 10:56
扫描计划任务是通过COM调用,SVCHOST来枚举计划任务,如果木马做了API HOOK挂钩隐藏了文件,可能导致枚举 ...
手动删除c:\windows\system32\tasks\目录下的这2个隐藏计划任务文件

手动删除计划任务文件夹里面的xml文件是没有用的吧,我星期一还在跟楼主讨论过这个事情,很多人走进对计划任务的误区了
实际上这里的计划任务文件不要,相关的计划任务也能够启动,这个木马作者估计也不清楚,所以还特意隐藏这里的两个计划任务文件,实际上应该是删除了都没有影响的







可以做个实验:新建一个计划任务,登录账户之后启动浏览器,在计划任务创建完成之后注销然后登录,验证该计划任务已经生效,然后删除tasks文件夹下的对应计划任务xml文件,重启计算机
实验结果可以提前透露:该计划任务照常能够启动并且正常运行






是这样的,Windows在实际启动计划任务时,是按照注册表位置
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Schedule\TaskCache\Tree

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Schedule\TaskCache\Tasks
启动的

之前我和@UNknownOoo 测样本的时候就发现过这个情况

具体的注册表位置如下图所示:

执行的操作为Actions Key下的二进制数据,如下图所示:

这个Actions下的二进制数据格式不好琢磨,并不方便读取之后加工处理

之前我测样本的时候做过一个实验,最后发现:
1. 如果在使用schtasks命令行创建计划任务的时候,使用Hips阻止xml文件写入,就会报计划任务创建失败,同时也不会创建这里的注册表项,schtasks会停止继续创建该计划任务
2. 但是如果一个计划任务已经创建成功,xml和注册表都成功写入,单删除tasks文件夹下的xml之后重启,计划任务依旧会运行,除非把这里的注册表也删了
而我们正常使用schtasks命令行或win32com删除计划任务时,xml和注册表都会删

Windows实际启动的时候是以这里注册表的记录来启动计划任务,这里的注册表位置权重很高,已经创建完成的计划任务单删除tasks目录下的xml其实是没有删除成功的,相关计划任务还会执行。
xml更像是计划任务的文件备份,注册表决定Windows启动的计划任务。

国内也有Windows应急响应研究人员做过很多测试,并且发现:
1. 成功创建计划任务后把tasks目录下的计划任务xml文件删除后不影响计划任务启动
2. 甚至把xml进行修改,Windows还是执行了原本的计划任务命令(操作:改了注册表,没改xml;结果:Windows运行了注册表中修改了的计划任务信息)
3. 对计划任务相关注册表进行修改,手动设置错误配置,可以隐藏计划任务(任务计划程序库、autoruns等均无法发现该计划任务,但是该计划任务能够实际启动并正常运行),而且Windows原本就有不少隐藏的计划任务
相关测试:
https://cloud.tencent.cn/developer/article/2377195
https://cloud.tencent.cn/developer/article/2377196

遍历tasks下的xml读取不靠谱,读注册表或者win32com靠谱一些


因此,楼主直接想了一个办法:禁用计划任务服务,重启计算机,用行为监控工具开始监控,恢复计划任务。一旦禁用计划任务服务,重启后问题消失,就可以锁定是计划任务的问题

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?快速注册

x

评分

参与人数 4经验 +30 人气 +5 收起 理由
QVM360 + 30 版区有你更精彩: )
ANY.LNK + 2 感谢解答: )
UNknownOoo + 1
tdsskiller + 2 版区有你更精彩: )

查看全部评分

yaokai815
发表于 2024-7-24 11:38:48 | 显示全部楼层
火绒 2x

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?快速注册

x
wowocock
发表于 2024-7-24 14:02:17 | 显示全部楼层
wwwab 发表于 2024-7-24 11:28
手动删除计划任务文件夹里面的xml文件是没有用的吧,我星期一还在跟楼主讨论过这个事情,很多人走进对 ...

本地用这个样本试了下,只要将c:\windows\system32\tasks目录下的文件改名,重启就没有启动木马的计划任务了。虽然注册表里还是存在,所以还是应该以该目录下的文件为准。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?快速注册

x
wwwab
发表于 2024-7-24 14:18:51 | 显示全部楼层
本帖最后由 wwwab 于 2024-7-24 14:34 编辑
wowocock 发表于 2024-7-24 14:02
本地用这个样本试了下,只要将c:\windows\system32\tasks目录下的文件改名,重启就没有启动木马的计划任 ...

怪,这个样本注册表里面的计划任务结构和正常的计划任务好像不太一样?


正常来说,Actions项里面的二进制数据才是计划任务执行的操作,用常规schtasks命令行正常创建的计划任务应该会有这个Actions项

但是这里面没有这个Actions项,也就是说注册表里面的计划任务配置项没有决定计划任务执行的操作

不知道这个计划任务是怎么启动的,当Actions项没有的时候会请求xml?(还真有可能,Windows有可能当Actions项没有的时候,才会去读取Path项或者URI项中Tasks目录下的xml里面的内容,需要后续实验)还是说Windows 7不太一样?





这种特殊情况下,注册表和xml可能删除其中一个就启动不了了
删了注册表的话,Windows就不会去读取xml了,也就不会该启动计划任务了
删了xml的话,Windows就找不到要执行的操作了(注册表中也没有定义Actions项),该计划任务也就无法启动了

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?快速注册

x
wowocock
发表于 2024-7-24 14:32:39 | 显示全部楼层
wwwab 发表于 2024-7-24 14:18
怪,这个样本注册表里面的计划任务结构和正常的计划任务好像不太一样?

木马创建的不是XML文件,而是JOB文件,计划任务安装微软的接口是有Task Scheduler 1.0 和Task Scheduler 2.0,其中Task Scheduler 2.0是从VISTA之后才支持的,木马应该是用1.0接口创建的JOB文件计划任务
struct  Task{
    int Unknown;
    int Unknown1;
    int Unknown2;
    int Unknown3;
    int Unknown4;
    short startLen;
    short Length;
    int Unknown5;
    int Unknown6;
    int Unknown7;
    int Unknown8;
    int Unknown9;
    int Unknown10;
    int Unknown11;
    int Unknown12;
    int Unknown13;
    int Unknown14;
    int Unknown15;
    short Unknown16;
    short pathlength;
    char path[pathlength*2];
    short parameterlen;
    char parameter[parameterlen*2];
    short Unknown17;
    short UserNameLen;
    char User[UserNameLen*2];
};
而用2.0接口创建的计划任务才是XML文件的格式。
您需要登录后才可以回帖 登录 | 快速注册

本版积分规则

手机版|杀毒软件|软件论坛| 卡饭论坛

Copyright © KaFan  KaFan.cn All Rights Reserved.

Powered by Discuz! X3.4( 沪ICP备2020031077号-2 ) GMT+8, 2025-5-15 05:10 , Processed in 0.108660 second(s), 15 queries .

卡饭网所发布的一切软件、样本、工具、文章等仅限用于学习和研究,不得将上述内容用于商业或者其他非法用途,否则产生的一切后果自负,本站信息来自网络,版权争议问题与本站无关,您必须在下载后的24小时之内从您的电脑中彻底删除上述信息,如有问题请通过邮件与我们联系。

快速回复 客服 返回顶部 返回列表