前言
在黑客攻击某台机器之后,为了防止会话中断而失去机器的控制权限,黑客常会通过计划任务的手段来维持自身的权限。在Windows系统中,常通过at;schtasks进行设置。
常见攻击方式
- at
- schtasks
- cron
缓解方式
- 审计
- 系统配置,禁用system权限执行计划任务
- 授权账号管理。只允许管理员相关用户配置计划任务
检测方式
监控相关进程的执行和命令行参数。如win10监控svchost.exe,而更早版本的使用taskeng.exe,计划任务存储在%systemroot%\System32\Tasks。通过autoruns工具可以显示当前所有的计划任务
Windows利用方法
- 利用at命令设置计划任务
首先通过net use建立ipc通道。经测试,ipc通道使用445端口
net use \\192.168.96.218\admin$ /user:sojrs 123456 #net use 连接
net time \\192.168.96.218 #查看远程主机时间
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-EQdlDYlH-1589273593648)(evernotecid://E313BAD6-185D-4B09-A205-0D35B54ADFE7/appyinxiangcom/22766090/ENResource/p365)]](https://i-blog.csdnimg.cn/blog_migrate/c193a84b52e76a306c678bb7eb99313d.png)
通过at方式设置计划任务,注意在新版本系统at已不支持,已通过schtasks进行设置
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-eQtSR3jZ-1589273593650)(evernotecid://E313BAD6-185D-4B09-A205-0D35B54ADFE7/appyinxiangcom/22766090/ENResource/p366)]](https://i-blog.csdnimg.cn/blog_migrate/70fbc0af37a1ae49b1968fca88844cd7.png)
at \\192.168.96.218 17:00 "calc.exe": 当天下午5点运行calc.exe
at \\192.168.96.218 17:00 /every:5,10,15 "calc.exe" : 每月的5,10,15号下午17点启动计算器
注:通过at命令运行的计划任务,你在任务栏里面无法看到相关进程,但你通过wmic process get Name 或者tasklist能看到
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-f5ksI3bn-1589273593651)(evernotecid://E313BAD6-185D-4B09-A205-0D35B54ADFE7/appyinxiangcom/22766090/ENResource/p367)]](https://i-blog.csdnimg.cn/blog_migrate/e8723bb6ef7247ed72333f8449d68e75.png)
- 利用schtasks方式
同样要先通过net use 建立ipc连接,利用schtashs设置计划任务
schtasks /create /s 192.168.1.102 /u “administrator” /p “123!@#” /RL HIGHEST /tn windowsupdate /tr C:\\Windows\temp\1.bat /sc DAILY /mo 1 /ST 19:30 #创建任务
schtasks /run /tn windowsupdate /s 192.168.1.102 /u “administrator” /p “123!@#” : 启用相关任务名
其中,RL表示作业级别,一般设置最高,为HIGHEST,tn是任务名称,tr是运行程序路径,sc表示时间间隔,DAILY表示以天为间隔,mo为执行周期,这里设置成了1天1次
schtasks /delete /tn windowsupdate /s 192.168.1.102 /u “administrator” /p "123!@#" :删除相关计划任务
注:这里RL表示设置的执行权限,如果是HIGHEST,则会以system权限进行执行,因此也经常会通过这种手段进行提权
Linux利用方法
crontab/anacron计划任务
涉及到的文件
/etc/crontab
涉及到的目录
/var/spool/anacron
/var/spool/cron
/etc/cron.d/
/etc/cron.hourly/
/etc/cron.daily/
/etc/cron.monthly/
/etc/cron.weekly/
一般来说里面主要是这个格式,可以直接编辑/var/spool/cron等文件或者crontab -e
分 时 日 月 星期 执行命令
如
* * * * * echo "111" : 表示每分钟打印一次
相关特点
- windows的计划任务将会存储在C:\Windows\System32\Tasks 目录下,在旧的系统版本中,测试用的win server2008每个新的计划任务,根据其id号,生成at[id]的文件名
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-JNc8tdPf-1589273593652)(evernotecid://E313BAD6-185D-4B09-A205-0D35B54ADFE7/appyinxiangcom/22766090/ENResource/p369)]](https://i-blog.csdnimg.cn/blog_migrate/587e880b4a2a63ff4257ac218c7da10c.png)
而在win10中,会在该目录下,创建一个和任务名对应的文件

参考链接
windows计划任务:https://www.c0bra.xyz/2019/11/21/Windows%E8%AE%A1%E5%88%92%E4%BB%BB%E5%8A%A1%E5%9C%A8%E5%90%8E%E6%B8%97%E9%80%8F%E4%B8%AD%E7%9A%84%E5%BA%94%E7%94%A8md/
ipc连接问题报错:https://www.cnblogs.com/backlion/p/7401609.html
crontab计划任务格式详解:https://linuxtools-rst.readthedocs.io/zh_CN/latest/tool/crontab.html
黑客利用计划任务维持控制
本文探讨了黑客如何利用Windows和Linux系统的计划任务功能来维持对受感染机器的长期控制。详细介绍了at、schtasks及crontab的攻击手法,并提供了系统配置、授权管理和监控策略作为防御措施。
831





