本篇文章仅用于技术交流学习和研究的目的,严禁使用文章中的技术用于非法目的和破坏,否则造成一切后果与发表本文章的作者无关
靶机是作者购买VIP使用退役靶机操作,显示IP地址为10.10.10.87
本次使用https://github.com/Tib3rius/AutoRecon 进行自动化全方位扫描
执行命令 autorecon 10.10.10.87 -o ./Waldo-autorecon
就开放了两个端口,访问web应用看看
没发现啥信息,看看网页源码
看到一个list.js文件访问下
经过测试可以通过以下方式绕过,直接读取目录和文件
开始读文件
读取到密钥直接使用密钥登录目标靶机
curl -s -X POST -d "file=....//....//....//home/nobody/.ssh/.monitor" http://10.10.10.87/fileRead.php | jq -r .file > id_rsa
使用nobody用户登录成功之后,试试monitor这个用户在本地进行登录,发现有rbash限制,于是加上-t参数直接绕过限制
登录进去发现还是有写命令执行不了,怀疑是全局环境变量的缘故导致,便添加全局环境变量
export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:$PATH
通过执行当前目录下的文件发现有一个文件可以读取root远程登录的日志内容
由此可判断存在capabilities 具体详情查看:
https://www.insecure.ws/linux/getcap_setcap.html https://www.hrwhisper.me/introduction-to-linux-capability/
得知tac命令没有权限限制,可直接读取任何文件