0x00前言:

这几天看了看信息安全就业的面试题,其中有一条是计划任务如何设置,好几个月前稍微接触了,但是很久没用差不多都忘了>_<,这里就稍微学习下windows的计划任务

写着写着就偏离了正题,稍微有点像自己的练习记录了,其中除了计划任务也穿插了一些msf的知识

0x01场景设置:

因为直接在windows是敲几个命令太无聊了,于是这里我用msf模块的永恒之蓝漏洞进行远程操作

kali攻击机ip:10.10.10.128

win7目标机ip:10.10.10.129

首先加载模块

然后选下payload,设置下,双方的ip,让它跑起来,就拿到shell了,永恒之蓝还是system权限

然后呢,戏要演得像真的一样

#查进程号
getpid               

#转移session到正常的pid中,这里到lsass.exe
migrate 532             

#查看下当前账号明文密码
load mimikatz
wdigest

0x02定时任务at命令

at命令是比较简单的一个命令,但是后面不常用了

使用必须是administrator权限,并且win8之后没有这个命令了

at time cmd
at 18:14 calc.exe

在msf中先连接shell

shell

#定时任务在18:23启动
at : calc.exe

18:22的时候进程内容如上图

18:23的时候进程如下,成功的启动了

但是回到win7的虚拟机,并没有弹出来,用tasklist查看下进程,发现有启动的clac.exe,但是任务管理器里面没有显示

0x03计划任务schtasks命令:

schtasks功能丰富,应该算是windows下计划任务最主要的工具之一了

适用环境是win7~win10都可以

但是在win7中文版的时候会出现以下情况

schtasks
错误: 无法加载列资源。

问题原因是cmd编码有问题,因为是gbk编码936,所以必须要把cmd编码改成美国的437,就能正常使用,并且不需要管理员权限就能修改

或者改成65001,还能让中文正常显示

但是我在我本机的win10上面就能正常执行,真奇怪233333

OK接下来是schtasks的语法,有点复杂,

/Create         创建新计划任务。
/Delete 删除计划任务。
/Query 显示所有计划任务。
/Change 更改计划任务属性。
/Run 按需运行计划任务。
/End 中止当前正在运行的计划任务。
/ShowSid        显示与计划的任务名称相应的安全标识符。 创建新计划任务
SCHTASKS /Create
[/S system [/U username [/P [password]]]]
[/RU username [/RP password]]
/SC schedule
[/MO modifier] [/D day][/M months][/I idletime]
/TN taskname /TR taskrun
[/ST starttime][/RIinterval]
[{/ET endtime | /DU duration} [/K] [/XML xmlfile][/V1]]
[/SD startdate] [/ED enddate] [/IT | /NP] [/Z] [/F]

看着创建计划任务这么复杂

于是我拿出几个简单易理解的常用的介绍下,其他的读者可以自行查阅

那么先说下必须的结构

SCHTASKS /Create /SC schedule /TN taskname /TR taskrun /ST startime
/Create     创建任务
/SC xxx     指定计划频率 xxx可以为MINUTE、 HOURLY、DAILY、WEEKLY、MONTHLY, ONCE, ONSTART, ONLOGON, ONIDLE, ONEVENT(ONCE指执行一次)
/TN xxx     任务叫啥名字,随意
/TR xxx 是要启动什么任务
/ST xxx     启动的时间(上面表说是可选项但是要/SC ONCE前提下,但是我在win7和win10都报错提示要加/ST)

在win7本地调试可以弹出记事本

schtasks /CREATE /SC ONCE /ST : /TN sijidou /TR notepad.exe

但是远程shell报错,它报是映射的问题

因为是自己的虚拟机随便怎么搞,那这里打开3389远程桌面,看看能不能在远程桌面写

创建个sijidou账号打开3389,虽然之前mimikatz抓到了我的管理员账号,但是这里先用低权限的试试

然后失败了....自己的虚拟机这么不给面子

没事,端口转发,把目标3389转到我们本地12345来,用rdesktop来连

run getgui -e -f 12345

rdesktop 127.0.0.1:1234

之前的sijidou账号是创立成功的,只是没打开远程连接,这里用sijidou账号登录,然后不是远程用户组登不上去....

最后用system登录上去的,system的用户我之前用mimkatz抓的,但是前提是用永恒之蓝打的时候,目标电脑是以system身份运行的

远程桌面是可以写的,只是远程桌面比较坑的是,目标机器会突然登出,这里是我自己的虚拟机就这么瞎搞了

20:18的时候,时间到了,记事本弹了出来

虽然过程稍微有点曲折,这里是能够利用了,msf其实写后面有专门的模块工具,比schtasks要简单一丢丢,这里也不介绍了,大家感兴趣可以去看看这篇文章,记录了很多msf后渗透的命令使用,非常棒的感觉:https://www.cnblogs.com/backlion/p/9484949.html

继续介绍几个参数

/RU  username   #这个程序运行的权限的账号      对于系统帐户,有效值是 ""、"NT AUTHORITY\SYSTEM" 或"SYSTEM"。
对于 v2 任务,"NT AUTHORITY\LOCALSERVICE"和"NT AUTHORITY\NETWORKSERVICE"以及常见的 SID。对这三个也都可用
/RP password   #这个程序运行的权限的账号密码

也就是说着2个参数表示这个程序用什么账号运行,administrator那么就是管理员权限,sijidou那么就是sijidou的权限

但是我这个sijidou账号好像很low,连个程序都没法运行?

但是用win7,也就是我的管理员账号能够运行,但是后面在win7上用sijidou账号登录该账号是可以使用任务计划的,但是加上/RU和/RP就不行了

再看下/RU的参数解释,没懂,以后有机会再探讨吧

接下来是这3个参数

/S   system        指定要连接到的远程系统。如果省略这个系统参数,默认是本地系统。
/U username 连接这个远程系统的可登陆账号
/P password 登录的账号密码

这3个参数的用法一般是域环境下的,因为我笔记本内存不行,就没搭域环境(都是借口)

这里/S是在同一个域中的目标机器名字,如果有/S那么/U和/P必不可少

/U和/P意味着能够登录目标机器账号,比如域控啥都能登,如果拿本地独有账号是不能登上去的

还有些参数大多部分都是设置程序的启动的规则,终止时间,持续时间,频率,还有结束后删除记录等,有兴趣的可以看看这里

https://www.cnblogs.com/yumianhu/p/3710743.html

0x04结语:

本文的参考链接除了文中的2个链接

关于解决中文编码问题:https://www.cnblogs.com/chenglee/p/9110963.html

关于编码问题无法使用schtasks解决办法:https://blog.csdn.net/xiaolongtuan/article/details/8832231

关于windows计划任务的命令介绍:https://www.secpulse.com/archives/73454.html

这篇文章比我的有深度多了,但是还涉及操作系统,也验证了没法靠schtasks提权?

现在功力还不组,先了解些皮毛,一步步来吧

  

 

window下的计划任务的更多相关文章

  1. window下设置定时任务及基本配置

    ### window下设置定时任务及基本配置 轉載請註明出處: https://www.cnblogs.com/funnyzpc/p/11746439.html |****************** ...

  2. PHP window下安装Spl_Types模块

    1. Window下,Spl_Types的模块的下载地址:http://pecl.php.net/package/SPL_Types/0.4.0/windows 2. php的可执行文件已经加到系统的 ...

  3. window下搭建c开发环境(GNU环境的安装)

    一.在windows平台上安装GNU环境 windows操作系统不自带GNU环境,如果需要开发跨平台的C语言程序,那么需要给windows安装GNU环境 windows下的两款GNU环境:MinGW和 ...

  4. Window下python2.7+Apache+mod_wsgi+Django服务器配置

    前言:试着使用python搭建一个网页,分别在windows下和linux下,本篇文章主要讲解Window下python+Apache+mod_wsgi+Django服务器配置过程中遇见的问题和解决方 ...

  5. safari浏览器在window下 打开控制台

    有时候需要在window下测试safari浏览器的兼容性 然后需要打开错误控制台 以下是完整打开的图文教程 1.显示菜单栏 2.打开偏好设置 3.然后切换到高级标签 勾选 在菜单栏显示开发菜单 4.打 ...

  6. window下在同一台机器上安装多个版本jdk,修改环境变量不生效问题处理办法

    window下在同一台机器上安装多个版本jdk,修改环境变量不生效问题处理办法 本机已经安装了jdk1.7,而比较早期的项目需要依赖jdk1.6,于是同时在本机安装了jdk1.6和jdk1.7. 安装 ...

  7. window下安装wamp环境

    Wamp就是Windos Apache Mysql PHP集成安装环境,即在window下的apache.php和mysql的服务器软件.其中php环境配置是至关重要的一部分,本文就针对php在本地的 ...

  8. nw.js FrameLess Window下的窗口拖拽与窗口大小控制

    nw.js FrameLess Window下的窗口拖拽与窗口大小控制 很多时候,我们觉得系统的Frame框很难看,于是想自定义. 自定义Frame的第一步是在package.config文件中将fr ...

  9. Window 下 Qt5 使用QMediaplayer 进行视频播放 流播放问题

    int main(int argc, char *argv[]) { QApplication a(argc, argv); QWidget *widget = new QWidget; widget ...

随机推荐

  1. Java编制至今总结和学习报告

    日期:2018.8.19 星期日 博客期:006 说个事,本来想把博客园做一个交流平台的,可是交流度有点少...嗯...我看我还是把这个平台当作经验传授平台和自己的作品发布平台吧!Java的知识详解, ...

  2. python冒泡排序法

  3. AngularJs中,如何在ng-repeat完成之后,执行Js脚本

    //ng-repeat生成4个li,生成后再执行自定义方法fn在每个li后加一根横线 <script> var myapp=angular.module('myapp',[]); myap ...

  4. 【python】升级pip后报错解决pkg_resources.DistributionNotFound: The 'pip==7.1.0' distribution was not found and is required by the application

    原本使用pip版本为7.1.0,后升级至9.0.1 之后使用pip list提示pkg_resources.DistributionNotFound: The 'pip==7.1.0' distrib ...

  5. JSP 隐式对象

    一. 隐式对象 JSP隐式对象 对象 类型 request javax.servlet.http.HttpServletRequest response javax.servlet.http.Http ...

  6. servlet 会话管理

    一.URL 重写 URL 重写是一种会话跟踪技术,它将一个或多个token添加到URL的查询字符串中,每个token通常为 key=value形式,如下: url?key-1=value-1& ...

  7. laravel 路由模型绑定

    我们在使用路由的时候一个很常见的使用场景就是根据资源 ID 查询资源信息: Route::get('task/{id}', function ($id) { $task = \App\Models\T ...

  8. stylus入门教程,在webstorm中配置stylus

    转载:https://www.cnblogs.com/wenqiangit/p/9717715.html#undefined   stylus特点 富于表现力.具有健壮性.功能丰富.动态编码 不需要写 ...

  9. Mysql 5.7 CentOS 7 安装MHA

    Table of Contents 1. MHA简介 1.1. 功能 1.2. MHA切换逻辑 1.3. 工具 2. 环境 2.1. 软件 2.2. 环境 3. Mysql 主从复制 3.1. Mys ...

  10. SCSS 使用@each 方法循环遍历数组颜色并给li赋值

    $list-bg:red,orange,blue,skyblue; ul{ >li{ height: 30px; @each $c in $list-bg{ $i:index($list-bg, ...