[GDOUCTF 2023]泄露的伪装

开启环境得到一个界面进行js审计后发现什么东西也没有

 接着进行目录扫描

发现一个/orzorz.php目录,进入访问

 接下来我们解释下这段代码

  1. 第一行 error_reporting(0); 关闭了 PHP 的错误报告,这意味着在脚本执行过程中不会显示任何错误信息。

  2. 通过 isset($_GET['cxk']) 检查是否存在名为 'cxk' 的 GET 参数。GET 参数是通过 URL 的查询字符串传递给脚本的数据。

  3. 如果存在 'cxk' 的 GET 参数,将其值赋给变量 $cxk

  4. 使用 file_get_contents($cxk) 函数读取 $cxk 变量中指定的 URL 或文件的内容。

  5. 如果读取的内容等于字符串 "ctrl",则输出变量 $flag 的值。这里假设变量 $flag 包含了某个敏感信息或秘密。

  6. 如果读取的内容不等于字符串 "ctrl",则输出字符串 "洗洗睡吧"

  7. 如果不存在 'cxk' 的 GET 参数,则输出字符串 "nononoononoonono"

通过分析我们可以利用file_get_content()函数配合php伪协议来获取flag

data://

自PHP>=5.2.0起,可以使用data://数据流封装器,以传递相应格式的数据。通常可以用来执行PHP代码。一般需要用到base64编码传输

所以该题我们可以构造payload:

/orzorz.php?cxk=data://text/plain,ctrl

或者:/orzorz.php?cxk=data://text/plain;base64,Y3RybA==

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值