申请靶场环境后php
点开题目html
一段奇怪的PHP代码mysql
由于我本身电脑重装了win10系统,php+apache+mysql的环境本地主机以为不必弄了,因而咱们用在线的PHP编码(百度一下处处都是)sql
复制进去以";"来排个格式apache
运行下,报错。函数
看看源码,"$_" "$__" "$___" 这三个是变量名,咱们用echo输出下内容学习
连在一块儿了,可是能够肯定编码
$_ => 1spa
$__ => _GETcode
$___ => _POST
而后观察最后一行代码,把咱们变量给用值替换进去
${_GET}[!1](${_POST}[1]);
把多余的{}去掉 [!1]也就是[0],整理下代码是这样的
$_GET[0]($_POST[1]);
和一句话的$_POST[1]传参差很少了,那么$_GET[0]就是咱们的函数名了
根据"b.php源码"提示去b.php目录下
用hackbar传GET和POST请求
可是并无返回phpinfo的信息。
这里又百度了下,学习到了新的知识点assert与eval的区别
咱们改为0=assert
phpinfo显现出来了,用菜刀链接下
将key提交上去,正确。