BUUCTF: [BSidesCF 2020]Had a bad day

BUUCTF: BSidesCF 2020Had a bad day

参考链接: https://juejin.cn/post/7091083692939935781

本文知识点:

php伪协议:

  1. 可以在resource中使用相对路径!!!

php://filter/convert.base64-encode/resource=woofers/../flag

  1. 将不存在的过滤器放到路径中时,php找不到只会警告,会继续向下执行,不会报错!!!

php://filter/convert.base64-encode/woofers/resource=flag

题目界面

该界面右两个按钮

随便点击一个按钮:

文件包含漏洞

尝试使用%00截断字符串

  1. 猜测后端是根据传入的category进行对应的文件包含,我很自然的想到使用data为协议先测试下,如下图:
  1. 尝试使用%00截断字符串,且将需要的woofers或则meowers包含进来

进国上述的测试,发现其根本无法绕过,看本文开头的参考链接解释,说高版本的php会检查传入的字符串的长度与传入参数的长度,如果不一样就不会执行,因此使用%00截断路径的方式不行!

尝试使用php的过滤器

  • 继续测试,尝试使用相对路径试试,根据回显发现,后端会将传入的参数后面拼接.php!
  • 传入右边的参数, php://filter/convert.base64-encode/resource=index,发现能够回显数据,其实这里我觉得都是狗运,因为后端的源码允许你查看index,不然这个也不行。按照回显的数据,其实要包含woofers或则meowers,并没有提到index。但是我菜,我看到write up这样写的。
  • 查看flag.php文件,由于查看的路径中必须包含woofers或则meowers,所以可以使用下面两条参数,都可以:

    php://filter/convert.base64-encode/resource=woofers/../flag

    php://filter/convert.base64-encode/woofers/resource=flag

  • base64解码得到flag,如下:

相关推荐
Fnetlink13 小时前
Fnet 云网安 261012
安全·web安全·网络安全
砚凝霜4 小时前
【软考信息安全】第二十一章 网络设备安全增强技术与漏洞防护
网络·安全·web安全
看着博客敲代码6 小时前
GitLab CVE-2026-85706 未授权任意文件读取漏洞排查与修复
安全·web安全·网络安全
hengdonghui21 小时前
Writeup 4 N1BOOK afr_2
ctf·目录穿越
Hum8le1 天前
漏洞知识点《php伪协议》
开发语言·安全·web安全·php
砚凝霜1 天前
【软考信息安全】第十六章 网络安全风险评估过程与技术方法
网络·安全·web安全
砚凝霜1 天前
【软考信息安全】第十七章 网络安全应急响应概述与事件处理流程
网络·安全·web安全
Web Security Loop2 天前
MAC安装最新Burpsuite pro详细步骤教程
web安全·macos·网络安全·安全性测试
xixixi777772 天前
解读|华为星河 AI 三层安全围栏:以 AI 守护 AI,重构智算中心 Token 生产纵深防御体系
人工智能·安全·web安全·华为·提示词注入·agent安全·模型投毒
砚凝霜2 天前
【软考信息安全】第十三章 网络安全漏洞分类管理与扫描处置
安全·web安全