应急响应和权限维持 | autoruns使用手册-上

admin 2025年3月20日14:13:49评论12 views字数 6923阅读23分4秒阅读模式
01
前言
    Windows官方提供的Autoruns工具,是用来查看、监视以及禁用自启动程序的最佳工具之一,能深度扫描注册表、服务、驱动、计划任务等数十个关键位置

 下载地址:

https://learn.microsoft.com/en-us/sysinternals/downloads/autoruns

02
主要模块

Everything 

 检测和展示所有的自启动项

Logon

注册表Run、RunOnce等

Explorer  

资源管理器 

Internet Explorer 

IE浏览器插件,BHO,ActiveX控件等

Scheduled Task 

划任务 C:WindowsSystem32Tasks

Servers

系统服务包括隐藏服务等

Drivers

已加载的驱动文件sys或者恶意驱动

Codecs

多媒体编码解码器的异常文件加载

Boot Excute

系统启动阶段执行的恶意程序

Image Hjacks

映像劫持

AppInit

通过AppInit_DLLs注册表键注入到所有进程的DLL

KnowDlls

已知的DLL列表

Winlogon

用户登录相关项检测

Winsock Providers

网络协议处理程序(LSP),检测分层服务提供程序

Print Monitors

打印机模块检测HKLMSYSTEMCurrentControlSetControlPrintMonitors

LSA Providers

LSA插件检测

HKLMSYSTEMCurrentControlSetControlLsa

Network Providers

网络驱动和命名空间提供程序,检测HKLMSYSTEMCurrentControlSetControlNetworkProvider

WMI

WMI事件权限维持

Sidebar Gadgets

Windows 侧边栏,检测

%ProgramFiles%Windows SidebarGadgets

Office

Office系统的启动项目

0x01 使用流程:

1)打开后优先查看红色和黄色标签

红色代表无数字签名(可能需要Verify Image验证)

黄色代表为为最近新增

应急响应和权限维持 | autoruns使用手册-上

2)并且在某些情况可能需要:

在Autoruns中启用Options → Scan Options → Verify Code Signatures——>取消勾选Hide Windows Entries

应急响应和权限维持 | autoruns使用手册-上

勾选此选项后,Autoruns会自动隐藏所有由Microsoft官方签名的启动项,可以大幅度减少影响和干扰,但是微软签名启动不等于无风险

这是一段将1.txt转换为php代码的Logon恶意注册表,用于维持Webshell的权限。

reg add HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionRun /v "decode_test" /t REG_SZ /d "C:WindowsSystem32certutil.exe -decode C:1.txt D:www1.php" /f

例如我未取消勾选Hide Windows Entries,找不到该启动项

应急响应和权限维持 | autoruns使用手册-上

取消勾选Hide Windows Entries 后

应急响应和权限维持 | autoruns使用手册-上

3)一般来说,最常见的检测项有如下:

Login(登陆启动项)

Server(系统服务)

Scheduled Tasks(计划任务)

Drivers(驱动程序)

Image Hijacks (映像劫持)

Wmi(WMI事件订阅之前常备用于高级威胁利用)

在本文章中不探讨这些启动项的免杀强度

03
各个模块基本利用

1、Logon  

注册表相关启动项地方

用户级:

HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionRun HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionRunOnce

系统级 :

HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionRun HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionRunOnce HKEY_LOCAL_MACHINESOFTWAREWOW6432NodeMicrosoftWindowsCurrentVersionRun HKEY_LOCAL_MACHINESOFTWAREWOW6432NodeMicrosoftWindowsCurrentVersionRunOnce

只需要新建一个字符串类型的参数,并输入路径,例如:

reg add HKLMSOFTWAREMicrosoftWindowsCurrentVersionRun /v "Keyname" /t REG_SZ /d "C:WindowsSystem32calc.exe" /f

StartUp文件夹:

C:ProgramDataMicrosoftWindowsStart MenuProgramsStartup

注册表Run键 > Startup文件夹 > 注册表RunOnce键。

应急响应和权限维持 | autoruns使用手册-上

可以看到这里和autoruns的检测一致

应急响应和权限维持 | autoruns使用手册-上

在C:ProgramDataMicrosoftWindowsStart MenuProgramsStartup添加一个进程(需要管理员权限),autoruns检测成功

应急响应和权限维持 | autoruns使用手册-上

2、Server

利用sc命令可以快速创建一个server123服务,该服务启动时可启动一个进程

sc create "server123" binpath= "C:UsersAdministratorDesktopartifact.exe"
应急响应和权限维持 | autoruns使用手册-上

设置这个服务为自动启动

sc config "server config" start= auto 

关于服务的制作也可以使用nssm文件

可以查看该文章:https://mp.weixin.qq.com/s/r4Yst_jVr9JDjJH7hO97Aw

在server选项里可被直接查看

应急响应和权限维持 | autoruns使用手册-上

3、Scheduled Tasks

Windows使用 SCHTASKS 命令执行定时任务,例如以下命令:

每次运行时,执行命令 copy E111.txt E:111.exe,将 E:111.txt 文件复制为 E:111.exe

schtasks /create /sc minute /mo 5 /tn "sd" /tr "C:WindowsSystem32cmd.exe /c copy E:\111.txt E:\111.exe"
应急响应和权限维持 | autoruns使用手册-上

此时可以看到autoruns出现被黄色标记的sd计划任务

应急响应和权限维持 | autoruns使用手册-上

计划任务的内容就是我们刚刚写入的命令行,可以右键直接  delete 这个计划任务

4、Drivers

驱动程序(Drivers)在权限维持中具有独特优势,因为它们运行在操作系统内核模式(Ring 0)层,拥有最高的权限,如果有了解过BYOVD的同学应该很好理解底层驱动安装后能够做什么事情。

在autoruns可以看到也是检测的注册表

主要扫描的地方是:

注册表键值(如 HKLMSYSTEMCurrentControlSetServices),它会扫描下面的每一项,筛选Type=1或者2的项目(驱动服务),例如type=20这里就不会被autoruns认为是驱动服务

提取 ImagePath、Start 等字段。

应急响应和权限维持 | autoruns使用手册-上
应急响应和权限维持 | autoruns使用手册-上

我在系统目录(C:WindowsSystem32drivers)添加了非官方的驱动,并未在autoruns里告警

应急响应和权限维持 | autoruns使用手册-上

模拟恶意驱动添加一个项,autoruns可以检测到

reg add "HKLMSYSTEMCurrentControlSetServicesTestDriver" /v Type /t REG_DWORD /d 1 /freg add "HKLMSYSTEMCurrentControlSetServicesTestDriver" /v Start /t REG_DWORD /d 3 /freg add "HKLMSYSTEMCurrentControlSetServicesTestDriver" /v ErrorControl /t REG_DWORD /d 1 /freg add "HKLMSYSTEMCurrentControlSetServicesTestDriver" /v ImagePath /t REG_EXPAND_SZ /d "SystemRootfaketest.sys" /freg add "HKLMSYSTEMCurrentControlSetServicesTestDriver" /v DisplayName /t REG_SZ /d "TestDriver" /f
应急响应和权限维持 | autoruns使用手册-上

在正常情况下,Windows 驱动程序需要以下步骤才能被加载:

1、注册表配置:在 HKLMSYSTEMCurrentControlSetServices 下创建驱动服务项,包含 Type、Start、ImagePath 等键值。

2、服务管理:通过 sc create 或服务控制管理器(SCM)注册服务。

3、驱动文件验证:系统检查驱动文件的数字签名和完整性。

4、加载执行:根据 Start 类型(如引导启动、系统启动等)自动或手动加载驱动。

此流程会在注册表中留下明确的痕迹,因此 Autoruns 等工具可以轻松检测到。

但是byovd通过已知的“合法驱动”漏洞进行攻击,并不会有上面的流程,它可以通过调用未公开的 Native API——NtLoadDriver,直接加载驱动文件,重启后消失,执行恶意流程后例如RealBlindingEDR清除EDR回调后,驱动可以删除。

5、Image Hijacks

映像劫持也是从注册表入手,通过注册表劫持一个合法的程序来启动恶意文件

HKLMSOFTWAREMicrosoftWindows NTCurrentVersionImage File Execution Options

我们可以添加一个aaa.exe   然后在aaa.exe下添加一个键为debugger为恶意程序的路径C:\bbb.exe,这样我们在启动aaa.exe的时候,就会顺带启动bbb.exe

一般情况下,我们会劫持常启动的程序,例如notepad.exe或者cmd.exe

例如我们劫持cmd.exe,在启动cmd.exe的时候启动calc.exe

reg add "HKLMSOFTWAREMicrosoftWindows NTCurrentVersionImage File Execution Optionscmd.exe" /v Debugger /t REG_SZ /d "C:WindowsSystem32calc.exe" /f

注册表如下所示

应急响应和权限维持 | autoruns使用手册-上
应急响应和权限维持 | autoruns使用手册-上

取消Hide Windows Entries 后能看到劫持cmd.exe程序,启动calc.exe的映像劫持启动项

应急响应和权限维持 | autoruns使用手册-上
应急响应和权限维持 | autoruns使用手册-上

6、Wmi

wmi的目的是提供一个本地或者远程管理多种系统组件的接口,如进程管理,账号管理,计划任务,安装服务等,在红队行动中很多命令都可以使用,例如:

具体可以查看飞鸟:

    https://www.yuque.com/feiniao112/rq5bav/wth417#wZwHG

Wmic权限维持是15年的badhat usa提出的无文件权限维持的一种技术,创建wmic权限维持需要进行三个操作:

    1、创建事件过滤器

    2、创建事件消费者

    3、绑定过滤器与消费者,这过程也叫做订阅

[事件过滤器] →(订阅绑定)→ [事件消费者]  条件监测        关联关系      动作执行

1、创建事件过滤器:__EventFilter

电脑系统运行时间在240s到310s为触发条件,过滤器名称为eval

wmic /NAMESPACE:"\rootsubscription" PATH __EventFilter CREATE Name="eval", EventNameSpace="rootcimv2", QueryLanguage="WQL", Query="SELECT * FROM __InstanceModificationEvent WITHIN 60 WHERE TargetInstance ISA 'Win32_PerfFormattedData_PerfOS_System' AND TargetInstance.SystemUpTime >= 240 AND TargetInstance.SystemUpTime < 310"
应急响应和权限维持 | autoruns使用手册-上

2、创建命令行事件消费者:

创建事件消费者名称为evilConsumer,执行命令为C:UsersiceDesktopcmd.exe /c calc 

wmic /NAMESPACE:"\rootsubscription" PATH CommandLineEventConsumer CREATE Name="evilConsumer",CommandLineTemplate="C:UsersiceDesktopcmd.exe /c calc "
应急响应和权限维持 | autoruns使用手册-上

3、绑定消费者的和过滤器

绑定eval和evilConsumer,使其启动自动触发运行逻辑

wmic /NAMESPACE:"\rootsubscription" PATH __FilterToConsumerBinding CREATE Filter="__EventFilter.Name="eval"",Consumer="CommandLineEventConsumer.Name="evilConsumer""
应急响应和权限维持 | autoruns使用手册-上

4、如何查询——Poweshell下运行

#列出事件过滤器Get-WmiObject -Namespace rootSubscription -Class __EventFilter      Get-WmiObject -Namespace rootSubscription -Class __EventFilter   |Select Name , query#列出事件消费者Get-WmiObject -Namespace rootsubscription -Class CommandLineEventConsumerGet-WmiObject -Namespace rootsubscription -Class CommandLineEventConsumer |     Select Name, ExecutablePath, CommandLineTemplate  #查询绑定关系Get-WmiObject -Namespace rootsubscription -Class __FilterToConsumerBinding |    Select Filter, Consumer
应急响应和权限维持 | autoruns使用手册-上

5、如何删除

#删除过滤器wmic /NAMESPACE:"\rootsubscription" PATH __EventFilter WHERE "Name='eval'" DELETE#删除消费者wmic /NAMESPACE:"\rootsubscription" PATH CommandLineEventConsumer WHERE "Name='evilConsumer'" DELETE#删除订阅关系wmic /NAMESPACE:"\rootsubscription" PATH __FilterToConsumerBinding WHERE "Filter='__EventFilter.Name="eval"' AND Consumer='CommandLineEventConsumer.Name="evilConsumer"'" DELETE
应急响应和权限维持 | autoruns使用手册-上

6、autoruns检测wmi

autoruns主要是检测是事件消费者,也就是攻击者通过wmi启动了什么恶意程序
应急响应和权限维持 | autoruns使用手册-上
04
autoruns的局限性

    autoruns虽然是非常优秀的启动项排查工具,但是还是存在很大的不足,例如LogonScript的检测在autoruns就是缺失的,因此也无法完全依赖autoruns的检测。

    例如LogonScript是登陆脚本的启动项,在用户登录的时候会主动执行这个脚本,这个脚本也可以设置为bat路径,Logon Scripts优先于AV(杀毒软件)先执行。

    Autoruns检测不到通过 HKEY_CURRENT_USEREnvironment 添加的登录脚本

reg add HKEY_CURRENT_USEREnvironment /v "UserInitMprLogonScript " /t REG_SZ /d "C:UsersiceDesktopcmd.exe" /f
应急响应和权限维持 | autoruns使用手册-上
应急响应和权限维持 | autoruns使用手册-上

删除LoginScript

reg delete HKEY_CURRENT_USEREnvironment /v "UserInitMprLogonScript" /f

05

总结

觉得微信排版有点乱的话可以前往语雀查看

https://www.yuque.com/g/iceqaq/gpxll3/dpngffzvbwr1mtiu/collaborator/join?token=CnW2Q058oqqqNova&source=doc_collaborator

后排求个关注吧~

原文始发于微信公众号(Ice ThirdSpace):应急响应和权限维持 | autoruns使用手册-上

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2025年3月20日14:13:49
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   应急响应和权限维持 | autoruns使用手册-上https://cn-sec.com/archives/3862043.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息