[ 应急响应基础篇 ] Windows 写入任务计划程序详解--任务计划程序窗口写入 & 命令行写入

🍬 博主介绍

👨‍🎓 博主介绍:大家好,我是 _PowerShell ,很高兴认识大家~
✨主攻领域:【渗透领域】【数据通信】 【通讯安全】 【web安全】【面试分析】
🎉点赞➕评论➕收藏 == 养成习惯(一键三连)😋
🎉欢迎关注💗一起学习👍一起讨论⭐️一起进步📝文末有彩蛋
🙏作者水平有限,欢迎各位大佬指点,相互学习进步!

1 windows任务计划程序介绍

计划任务是系统的常见功能,利用任务计划功能,可以将任何脚本、程序或文档安排在某个最方便的时间运行。任务计划在每次系统启动的时候启动并在后台运行。
当我们需要在服务器上定时执行一些重复性的事件时使用的,可以通过计划任务程序来运行准备好的脚本、批处理文件夹、程序或命令,在某个特定的时间运行。

2 任务计划程序窗口写入任务计划程序

2.1打开任务计划程序窗口

方式一:控制面板–>管理工具–>任务计划程序
方式二:运行窗口或者撞断面板执行如下命令:Taskschd.msc
Windows10系统的任务计划程序窗口如下:

在这里插入图片描述

2.2 创建任务和创建基本任务介绍

其中创建任务分创建基本任务和创建任务,这两者本身并没有区别,只是创建的过程,一个是可以最简化的任务创建方式,一个是完整的创建窗口页面

在这里插入图片描述

2.3 选择创建任务

这里只介绍创建任务,创建任务包含了创建基本任务,可以在任意一个文件夹下创建计划任务,效果是一样的,选中文件夹,然后右键,创建任务。
点击创建任务之后会弹出一个创建任务的窗口,下载在创建过程中对窗口中口中包含的字段进行解释。

在这里插入图片描述

2.4 常规设置

首先进行常规设置,字段描述于图片后面呈现

在这里插入图片描述

2.4.1 名称

这里输入一个任务的名称,很好理解,可任意填写。

2.4.2 位置

就是你选择的文件夹处在的位置,这里的\表示创建的位置在任务计划程序库的下面,也就是任务计划程序的根目录下面。

2.4.3 创建者

你当前登陆的账号,当前我是Administrator所以创建者就是Administrator

2.4.4 描述

对这个任务的描述,可任意填写

2.4.5 用户账户

这里点更改用户或组,可以选择切换到其他账户或者组。
里面可以选择到三类账号以及组如,下:
1.域账号
2.本地账号
3.系统账号,如system
4.组,含域、本地组

2.4.6 更改用户和组

这里我不更改账号了,我直接用登录的administrator进行操作。
这里选择的账号和组,会使用该账号的权限进行任务的执行,前提是创建任务的账号可以操作这个执行的用户账户,否则需要输入对应的账号密码。
我们常规会用到如下账号:
1.具有本地管理员的账号,可是是创建者的账号,也可以是别的
2.具有域权限的账号
3.使用system,因为system具有很大的权限,可以执行很多本地管理员也无法执行的任务。

2.4.7 只在用户登录时运行

只有用户登陆时才能执行,如果用户账户注销了,这个任务怎么也无法执行。通常用于一些需要输入账号密码,但是不方便输入的任务,因为本地你输入了账号密码,是会保存在任务计划中的。

2.4.8 不管用户是否登录都要运行

一般我们默认会选线该选项,并且,当需要访问其他资源,如域中的,其他服务器的资源,我们需要保存一下账号的密码。

2.4.9 使用最高权限运行

有时候我们使用的管理员账号,但是是需要提升,才能执行管理员的权限,这个作用就是帮你提升到管理员的权限了。

2.4.10 隐藏

就是把任务隐藏了,很少使用,如果隐藏了,要找出来,需要额外通过命令找到他。我这里就不隐藏了,下一篇文章会讲到如何隐藏任务计划,如何发现隐藏的任务计划。

2.5 触发器设置

触发器只有新建、编辑、删除三个按钮,针对具体触发的内容的操作。

在这里插入图片描述

点击新建触发器弹出新建触发器窗口

2.5.1 开始任务:

默认都是使用的按预定计划来执行,其他几个任务状态可以根据字面意思的实际需求进行设置,基本属于是特殊用法,等于是在下面的任务设置的基础上,加了条件。

在这里插入图片描述

2.5.2 设置

设置分一次,或者周期的每天,每周,每月。里面左侧跟右侧同时选择生效,例如,可以选择每天,开始2022/09/08 00:00:00点开始。可以选择,每2天 每3天 ,选择好了之后,他会在每天(或者2、3天)的 00:00:00 开始。
设置里面分的很细,可以只执行一次,也可以周期性执行。我这里就选择执行一次,在下午六点执行。

在这里插入图片描述

2.5.3 高级设置

1.任务最多延迟时间(随机延迟):
这个是针对有部分需求,需要随机的,他会通过系统自带的随机函数,在未来指定如一个小时内执行,而不是每天固定的。
2.重复任务间隔:
这个功能是实现最短周期重复任务的功能,这个是经常会被用到的功能,这个功能和后面的持续时间是一起使用的。
3.重复持续时间结束时停止所有运行的任务:
因为重复任务可能导致后台存在很多个任务,所以可以勾选重复持续时间结束停止他发起的所有任务,从而避免资源占用
4.任务的运行时间超过此值停止执行:
字面意思
5.到期时间:
选择了到期时间,那么所有这个任务发起的,到这个到期时间后就不在发起,并且会停止所有任务。类似关闭任务进程并且禁用任务。
6.已启用:
字面意思,就是启用了高级设置

在这里插入图片描述

2.6 操作设置

触发器只有新建、编辑、删除三个按钮,针对具体操作的内容进行操作。

在这里插入图片描述

点击新建触发器弹出新建操作窗口,我这里就让他启动Autoruns程序

在这里插入图片描述

2.6.1 操作:

分启动程序还有其他两种,嗯,其他两种基本没人用,所以只保留了启动程序,其他两种被弃用了(发送电子邮件、显示消息)。

2.6.2 设置

这里我就是简单的打开了一个程序,关于其他字段介绍在图后呈现
1.程序和脚本:
关于程序,直接选择到对应的程序路径即可
如:C:\Users\Administrator\Desktop\工具\Autoruns\Autoruns64.exe
2.添加参数:
可以添加这个程序支持的参数,效果类似在命令行执行一个程序,打一个空格后面加了参数
3.起始于:
选择这个程序的执行的路径,一般会选择到该程序所在的目录,确保执行的时候,里面会调用到同目录文件,可以顺利调用。

2.6.3 注意事项

2.6.3.1 如果是执行cmd脚本

说明:可以直接选择到具体路径就行,最好的保证能执行脚本的方法如下
路径:输入 cmd
添加参数:输入要执行的脚本路径,如c:\aa.bat
起始于:选择这个程序的执行的路径,一般会选择到该程序所在的目录,确保执行的时候,里面会调用到同目录文件,可以顺利调用

2.6.3.2 如果是执行powershell

说明:很多powershell脚本添加后是无法执行的,只能通过先打开powershell,然后把脚本当做一个参数输入,才能顺利打开
路径:输入powershell
添加参数:输入要执行的脚本路径,如:c:\aa.ps1
起始于:选择这个程序的执行的路径,一般会选择到该程序所在的目录,确保执行的时候,里面会调用到同目录文件,可以顺利调用
5、条件设置
字面意思,基本都能看得懂,就是额外增加条件,一般保持默认,我这里也保持默认

在这里插入图片描述

2.5.1 空闲

在这里插入图片描述

2.5.2 电源

在这里插入图片描述

2.6 设置

字面意思,基本都能看得懂,就是额外增加条件,一般保持默认,我这里也保持默认

在这里插入图片描述

2.7 创建成功

点击确认即可创建成功,如果需要填入密码,自行填入就行。

在这里插入图片描述

到点了就自动执行了我之前设定的任务,打开了Autoruns.exe程序

在这里插入图片描述

3 命令行写入任务计划程序

windows系统中,可通过命令行创建任务计划,用到 schtasks 命令

3.1 Schtasks命令详解

安排命令和程序定期运行或在指定时间内运行。从计划表中添加和删除任务,按需要启动和停止任务,显示和更改计划任务。

3.1.1 语法:

schtasks/create /tn TaskName /tr TaskRun /sc schedule [/mo modifier ]
[/d day][/m month[,month...][/i IdleTime][/st StartTime]
[/sd StartDate][/ed EndDate][/scomputer[/u [domain\]user /p password]]
[/ru {[Domain\]User|"System"} [/rp Password]]

3.1.2 参数:

/tn TaskName:指定任务的名称
/tr TaskRun:指定任务运行的程序或命令。键入可执行文件、脚本文件或批处理文件的完全合格的路径和文件名。如果忽略该路径,SchTasks.exe 将假定文件在Systemroot\System32 目录下。
/sc schedule:指定计划类型。有效值为 MINUTE、HOURLY、DAILY、WEEKLY、MONTHLY、ONCE、ONSTART、ONLOGON、ONIDLE。

说明
MINUTE、HOURLY、DAILY、WEEKLY、MONTHLY指定计划的时间单位。
ONCE任务在指定的日期和时间运行一次。
ONSTART任务在每次系统启动的时候运行。可以指定启动的日期,或下一次系统启动的时候运行任务。
ONLOGON每当用户(任意用户)登录的时候,任务就运行。可以指定日期,或在下次用户登录的时候运行任务。
ONIDLE只要系统空闲了指定的时间,任务就运行。可以指定日期,或在下次系统空闲的时候运行任务。

/mo modifier:指定任务在其计划类型内的运行频率。这个参数对于 MONTHLY 计划是必需的。对于 MINUTE、HOURLY、DAILY 或 WEEKLY 计划,这个参数有效,但也可选。默认值为 1

计划类型修饰符说明
MINUTE1 - 1439任务每1分钟运行一次。
HOURLY1 - 23任务每小时运行一次。
DAILY1 - 365任务每n天运行一次。
WEEKLY1 - 52任务每n周运行一次。
MONTHLY1 - 12任务每n月运行一次。
LASTDAY任务在月份的最后一天运行。
FIRST、SECOND、THIRD、FOURTH、LAST 与/d参数共同使用,并在特定的周和天运行任务。

/d dirlist:指定周或月的一天。只与 WEEKLY 或 MONTHLY 计划共同使用时有效。

计划类型日期值
WEEKLY可选项。有效值是MON~SUN和* (每天) 。MON是默认值。
MONTHLY在使用FIRST、SECOND、THIRD、 FOURTH或LAST修饰符(/mo)时,需要MON ~ SUN中的某个值。1 ~ 31是可选的,只在没有修饰符或修饰符为1 ~ 12类型时有效默认值是1 (月份的第一天)。

/m month[,month…]:指定一年中的一个月。有效值是 JAN ~ DEC 和 * (每个月)。/m参数只对于 MONTHLY 计划有效。在使用 LASTDAY 修饰符时,这个参数是必需的。否则,它是可选的,默认值是 * (每个月)。
/i InitialPageFileSize:指定任务启动之前计算机空闲多少分钟。键入一个1 ~ 999之间的整数。这个参数只对于 ONIDLE 计划有效,而且是必需的。
/st StartTime:以HH:MM:SS24 小时格式指定时间。默认值是命令完成时的当前本地时间。/st参数只对于 MINUTE、HOURLY、DAILY、WEEKLY、MONTHLY 和 ONCE 计划有效。它只对于 ONCE 计划是必需的。
/sd StartDate:以MM/DD/YYYY格式指定任务启动的日期。默认值是当前日期。/sd参数对于所有的计划有效,但只对于 ONCE 计划是必需的。
/ed EndDate:指定任务计划运行的最后日期。此参数是可选的。它对于 ONCE、ONSTART、ONLOGON 或 ONIDLE 计划无效。默认情况下,计划没有结束日期。
/s Computer:指定远程计算机的名称或 IP 地址(带有或者没有反斜杠)。默认值是本地计算机。
/u [domain]user:使用特定用户帐户的权限运行命令。默认情况下,使用已登录到运行 SchTasks 的计算机上的用户的权限运行命令。
/p password:指定在/u参数中指定的用户帐户的密码。如果使用/u参数,则需要该参数。
/ru {[Domain]User|“System”}:使用指定用户帐户的权限运行任务。默认情况下,使用用户登录到运行 SchTasks 的计算机上的权限运行任务。

说明
[domain}User?指定用户帐户。
“System”或””指定操作系统使用的NT Authority\System帐户。

/rp Password:指定用户帐户的密码,该用户帐户在/ru参数中指定。如果在指定用户帐户的时候忽略了这个参数,SchTasks.exe 会提示您输入密码而且不显示键入的文本。使用 NT Authority\System 帐户权限运行的任务不需要密码,SchTasks.exe 也不会提示索要密

3.1.3 示例

示例:

将定时执行脚本 C:\test\test.vbs 加入到任务计划中,任务名为 “Test Script”
每20分钟执行一次

schtasks /create /sc minute /mo 20 /tn “Test Script” /tr C:\test\test.vbs

在这里插入图片描述

4 写入计划任务实例讲解

4.1 每五分钟执行javs一次

直接双击每5执行javs一次就可以新建一个计划任务,每五分钟执行一次javs.exe

在这里插入图片描述

schtasks /create /tn updater /tr "C:\Users\Administrator\Documents\wkbd\javs.exe" /sc minute /mo 5

在这里插入图片描述

我们也可以在终端中直接执行bat里面的命令创建计划任务

在这里插入图片描述

任务计划程序创建成功

在这里插入图片描述

为了避免不执行,我们进行如下设置

在这里插入图片描述

4.2 每三分钟执行javs启动程序一次

schtasks /create /tn updater2 /tr "C: \Users\Administrator\Documents \wkbd\执行javs. bat" /sc minute /mo 3

在这里插入图片描述

直接双击每3执行javs一次就可以新建一个计划任务,每3分钟执行一次执行javs.bat,也就是每三分钟执行一次javs.exe

在这里插入图片描述

5 导入\导出任务计划程序

如果是需要批量导入到多台机器的,可以把脚本\程序的位置统一路径放置。
然后把第一台的完成任务导出,之后在其他机器导入任务就可以了。

5.1 使用任务计划程序窗口导入导出

5.1.1 导出

导出如下图,右键任务计划程序选择文件夹进行导出即可导出任务计划程序。

在这里插入图片描述

5.1.2 导入

导入如下图,右键左侧文件夹点击导入即可选择文件进行导入。

在这里插入图片描述

5.2 使用PowerShell导出任务

5.2.1 导出

以管理员身份运行Powershell
键入以下命令以导出计划任务,然后按Enter键:

Export-ScheduledTask -TaskName “TASK-NAME” -TaskPath “\TASK-PATH-TASKSCHEDULER” | out-file C:\PATH\TO\EXPORT-FOLDER\TASK-EXPORT-NAME.xml

Export-ScheduledTask -TaskName “任务计划程序名称” -TaskPath “\TASK-PATH-TASKSCHEDULER” | out-file 导出文件地址

5.2.2 导入

以管理员身份运行Powershell
键入以下命令以导入计划任务,然后按Enter键:

Register-ScheduledTask -xml (Get-Content ‘C:\PATH\TO\IMPORTED-FOLDER-PATH\TASK-INPORT-NAME.xml’ | Out-String) -TaskName “TASK-IMPORT-NAME” -TaskPath “\TASK-PATH-TASKSCHEDULER” -User COMPUTER-NAME\USER-NAME –Force

Register-ScheduledTask -xml (Get-Content ‘任务计划程序名称xml文件地址’ | Out-String) -TaskName “任务计划程序名称” -TaskPath “\TASK-PATH-TASKSCHEDULER” -User 电脑名称\用户名称 –Force

相关资源

各类问题解决杂记录
应急响应入门到精通
[ 提升篇 ] 钓鱼实战系列
vulnhub 综合靶场通关之路
[ 问题解决篇 ] 解决windows虚拟机安装vmtools报错-winserver2012安装vmtools及安装KB2919355补丁 (附离线工具)

Windows任务计划程序是由微软公司开发的一种系统工具,用于在指定的时间或事件触发时自动执行各种任务。它可以用于计划执行定期重复的任务,比如每天早上6点自动备份文件,或每周五下午3点自动关闭计算机等。 Windows任务计划程序具有用户友好的界面,使用户能够方便地创建、编辑和管理计划任务。用户只需指定任务的执行时间、频率和其他相关设置,任务计划程序就会按照用户的要求自动执行任务。此外,任务计划程序还支持设置任务的优先级、权限和条件,以满足不同的需求。 任务计划程序可以执行各种任务,包括运行应用程序、执行命令或脚本、打开网页、发送邮件等。用户可以根据自己的需求,将任务计划程序应用于各个方面。比如,可以利用它来自动清理临时文件、更新软件或病毒库、进行系统维护等。 使用任务计划程序还可以提高计算机的效率和安全性。通过进行定期的系统清理和维护,可以确保计算机的正常运行。此外,通过定期备份文件和系统,可以有效防止数据的丢失和计算机崩溃后的恢复问题。 总之,Windows任务计划程序是一种方便实用的系统工具,可用于自动执行各种任务。它提供了用户友好的界面,支持多种设置和条件,可满足用户不同的需求。通过合理利用任务计划程序,用户可以提高计算机的效率和安全性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

寒蝉听雨[原ID_PowerShell]

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值