在网络攻击中往往涉及到提权技术,为更好的防御与溯源,故总结现有技术文章进行分享,欢迎共同讨论。
涉及文章:
https://docs.microsoft.com/en-us/windows/win32/taskschd/task-scheduler-start-page
https://attack.mitre.org/techniques/T1053/005/https://www.hackingarticles.in/windows-privilege-escalation-scheduled-task-job-t1573-005/
https://qastack.cn/programming/11013132/how-can-i-enable-the-windows-server-task-scheduler-history-recording
攻击者可能会滥用Windows任务计划程序来执行任务计划,以初始或重复执行恶意代码。有多种方法可以访问Windows中的任务计划程序。schtasks可以直接在命令行上运行,也可以通过控制面板的Administrator Tools部分中的GUI打开Task Scheduler。在某些情况下,攻击者使用了一种策略NET包装器,或者攻击者使用Windows netapi32库创建计划任务。
不推荐使用的at实用程序也可能被对手滥用(例如:At (Windows)),尽管at.exe不能访问用schtasks或控制面板创建的任务。
攻击者可以利用Windows任务计划程序在系统启动时或按计划执行程序,以达到持久性。Windows任务安排程序也可以被滥用来进行远程执行,作为横向移动的一部分,或者在指定账户(如SYSTEM)的背景下运行一个进程。
相关程序示例
Agent Tesla 通过计划任务实现了持久性.[1]
Anchor
可以为持久性创建计划任务.[2]
AppleJeus 创建了一个预定的SYSTEM任务,当一个用户登录时运行。.[3]
APT-C-36 使用了一个宏功能来设置预定任务,伪装成谷歌使用的任务。.[4]
APT29 使用并在远程主机上创建新的任务,作为横向移动的一部分.schedulerschtasks[5] 他们通过更新现有的合法任务来操纵计划任务,以执行他们的工具,然后将计划任务恢复到原来的配置。.[6] APT29 还创建了一个计划任务,以便在2020年SolarWinds入侵期间主机启动时维持SUNSPOT的持久性.[7] 他们以前使用命名和劫持的计划任务,也是为了建立持久性.[8]
scheduler
schtasks
APT3 下载器通过创建以下计划任务来创建持久性: .schtasks /create /tn "mysc" /tr C:\Users\Public\test.exe /sc ONLOGON /ru "System"[9]
schtasks /create /tn "mysc" /tr C:\Users\Public\test.exe /sc ONLOGON /ru "System"
APT32 已经使用计划任务在受害者系统上持续存在。[10][11][12][13]
APT33 已经创建了一个计划任务,每天多次执行一个.vbe文件.[14]
APT37 创建了计划任务,在被攻击的主机上运行恶意的脚本。[15]
APT38 已使用任务计划器在系统启动时或按计划运行程序,以实现持久性。[16]
APT39 已经为持久性创建了计划任务。[17][18][19]
APT41 使用一个被泄露的账户在一个系统上创建一个计划任务。[20][21]
Attor's 安装程序插件可以安排一个新任务,在启动/登录时加载计划程序。[22]
BabyShark 已经使用预定任务来维持持久性。[21]
BackConfig 有能力使用预定任务在被攻击的主机上重复执行恶意payload。[23]
Bad Rabbit’该文件创建了一个计划任务来启动一个恶意的可执行文件infpub.dat。[24]
BADNEWS 创建一个计划任务,通过每隔一分钟执行一个恶意的有效载荷来建立。[25]
Bazar 可以为持久化创建一个计划任务。[26][27]
Blue Mockingbird 已使用Windows计划任务在本地和远程主机上建立持久性。[28]
BONDUPDATER 使用一个每分钟执行一次的计划任务来持续进行。[29]
BRONZE BUTLER 曾使用schtasks 来注册一个计划任务,在横向移动过程中执行恶意软件。[30]
Carbon 创建几个任务供以后执行,以继续在受害者的机器上持久存在。[31]
Chimera 已经使用计划任务来调用Cobalt Strike,包括通过批处理脚本和维护持久性。schtasks /create /ru "SYSTEM" /tn "update" /tr "cmd /c c:\windows\temp\update.bat" /sc once /f /st[32][33]
schtasks /create /ru "SYSTEM" /tn "update" /tr "cmd /c c:\windows\temp\update.bat" /sc once /f /st
Cobalt Group 已经创建了Windows任务来建立持久性。[34]
ComRAT 使用了一个计划任务来启动其PowerShell加载器。[35][36]
CosmicDuke 使用通常被命名为 "Watchmon服务 "的计划任务来实现持久性.[37]
CostaRicto 已使用计划任务下载后门工具.[38]
CozyCar 使用的一个持久性机制是将自己注册为一个计划任务.[39]
Crutch 有能力使用预定的任务来持续进行.[40]
CSPY Downloader 可以使用 schtasks 工具来绕过 UAC.[41]
Dragonfly 2.0 使用预定任务,每8小时自动注销创建的账户,以及执行恶意文件。[42][43]
Duqu 通过将自己复制到它所列举的、它已获得合法凭证(通过键盘记录或其他手段)的共享上进行横向传播。然后,远程主机被感染,方法是使用被破坏的凭证在远程机器上安排一个任务,执行恶意软件。.[44]
Dyre 有能力通过在任务计划程序中添加一个新任务来实现持久性,每分钟运行一次。[45]
Emotet 通过一个预定任务保持了持久性。 [46]
Empire 拥有与Windows任务计划程序互动的模块。[47]
EvilBunny 曾使用计划任务执行命令。[48]
FIN10 已经通过使用S4U任务以及PowerShell Empire中的Scheduled Task选项建立了持久性。[49][47]
FIN6 它使用计划任务为其使用的各种恶意软件建立持久性,包括被称为HARDTACK和SHIPBREAD的下载器和 FrameworkPOS.[50]
FIN7 恶意软件已经创建了计划任务,以建立持久性。[51][52][53][54]
FIN8 曾使用计划任务来维护RDP后门。[55]
Fox Kitten 使用调度任务来实现持久性,并加载和执行一个反向代理二进制.[56][57]
Frankenstein 作为通过一个计划任务建立的持久性,使用命令: , named "WinUpdate". /Create /F /SC DAILY /ST 09:00 /TN WinUpdate /TR [58]
/Create /F /SC DAILY /ST 09:00 /TN WinUpdate /TR
GALLIUM 通过创建一个计划任务。建立了持久性的 PoisonIvy [59]
Gamaredon Group 创建了一个计划任务,每10分钟启动一个可执行文件.[60]
Gazer 可以通过创建一个计划任务来建立持久性.[61][62]
GoldMax 已使用计划任务来保持持久性.[63]
Goopy 有能力通过创建设置为每小时运行的计划任务来保持持久性.[12]
GravityRAT 创建一个计划任务,确保每天重新执行.[64]
GRIFFON 曾用于持久性 sctasks[65]
sctasks
GrimAgent 有能力使用任务调度器来设置持久性。[66]
Helminth 已经使用了一个预定任务来实现持久化。[67]
Higaisa 删除并添加到计划任务中.officeupdate.exe[68][69]
officeupdate.exe
HotCroissant 试图在启动时安装一个名为 "Java Maintenance64 "的计划任务以建立持久性。[70]
IcedID 已经创建了一个计划任务,每小时执行一次,以建立持久性。[71]
InvisiMole 已使用预定任务命名并建立持久性.MSST\Microsoft\Windows\Autochk\Scheduled[72]
MSST
\Microsoft\Windows\Autochk\Scheduled
IronNetInjector 已经使用了一个任务XML文件,命名为在用户登录时或特定系统事件产生时运行IronPython脚本.mssch.xml[73]
mssch.xml
ISMInjector 创建计划任务以建立持久性。[74]
JHUHUGIT 已将自己注册为一个计划任务,在当前用户每次登录时运行。[75][76]
JSS Loader 有能力启动计划任务以建立持久性。[77]
Lokibot 在批处理脚本中嵌入这些命令.schtasks /Run /TN \Microsoft\Windows\DiskCleanup\SilentCleanup /I[78]
schtasks /Run /TN \Microsoft\Windows\DiskCleanup\SilentCleanup /I
Lucifer 已经通过创建以下计划任务建立了持久性 .schtasks /create /sc minute /mo 1 /tn QQMusic ^ /tr C:Users\%USERPROFILE%\Downloads\spread.exe /F[79]
schtasks /create /sc minute /mo 1 /tn QQMusic ^ /tr C:Users\%USERPROFILE%\Downloads\spread.exe /F
Machete 的不同组件是由Windows任务调度器执行的。[80][81]
Machete 已经创建了计划任务来维护 Machete'的持久性。[82]
Matryoshka 可以通过添加一个名为 "Microsoft Boost Kernel Optimization "的计划任务来建立持久性。[83][84]
Maze 已经创建了使用 "Windows Update Security"、"Windows Update Security Patches "和 "Google Chrome Security Update "等名称变体的计划任务,以便在特定时间启动 Maze [85]
MCMD 可以使用计划任务来实现持久化。[86]
menuPass 已使用一个脚本(atexec.py)通过任务调度器在目标机上执行一个命令。[87]
Molerats 已经创建了计划任务来持续运行VBS脚本。[88]
MuddyWater 已经使用计划任务来建立持久性。[89]
Mustang Panda 已经创建了一个计划任务来执行额外的恶意软件,并保持持久性。[90][91][92]
Naikon 在被攻击的网络中使用schtasks.exe进行横向移动。[93]
NETWIRE 可以创建一个计划任务来建立持久性。[94]
NotPetya 创建一个任务,在感染后一小时内重新启动系统。.[95]
OilRig 已经创建了计划任务,运行VBScript,在受害者机器上执行payload。[96][97][98][99]
Okrum's 安装程序可以尝试通过创建一个计划任务来实现持久性。[100]
OopsIE 创建一个计划任务,每三分钟运行一次。[96][101]
Operation Wocao 利用计划任务在远程系统上执行恶意的PowerShell代码。[102]
A Patchwork 文件窃取者可以运行一个TaskScheduler DLL来增加持久性.[103]
PowerSploit's 持久性参数可以通过 Scheduled Task/Job.建立新用户持久性选项[104][105]
新用户持久性选项
POWERSTATS 已经通过使用命令的计划任务建立了持久性。 ."C:\Windows\system32\schtasks.exe" /Create /F /SC DAILY /ST 12:00 /TN MicrosoftEdge /TR "c:\Windows\system32\wscript.exe C:\Windows\temp\Windows.vbe"[106]
"C:\Windows\system32\schtasks.exe" /Create /F /SC DAILY /ST 12:00 /TN MicrosoftEdge /TR "c:\Windows\system32\wscript.exe C:\Windows\temp\Windows.vbe"
POWRUNER 通过每分钟执行一次的计划任务来持续进行。[107]
[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)