攻防世界web高手进阶区:Web_php_include

攻防世界web高手进阶区:Web_php_include

进入链接,可以看到部分源码:
在这里插入图片描述
分析一下,这里可以用GET方式上传两个参数:hello和page
其中,page会先通过strstr(A,B)函数 [在A中查找是否有B] 检查其中是否有"php://",如果有则会通过str_replace(A,B,C)函数 [将C中所有A替换为B] 将"php://"删去。

所以基本上就不可能用php://伪协议

但可以尝试data://text/plain

我们如果要知道flag在哪里,首先得知道有哪些文件
而要知道有哪些文件,又得先知道文件的根目录

这时候可以使用输出$_SERVER[‘DOCUMENT_ROOT’]的方式来探知所在目录
配合data://text/plain使用,结果如下图:
在这里插入图片描述?page=data://text/plain,<?php echo $_SERVER['DOCUMENT_ROOT'];?>

现在我们可以知道目录为/var/www,接下来就是探知该目录下的文件
我们可以使用scandir(A)函数 [以数组形式返回目录A中的文件]
在这里插入图片描述这里注意两点:
1、php中输出数组用print_r()函数
2、scandir()中目录参数是字符串形式,所以要加“”
(我才不会告诉你我忘了)

那么现在我们可以看到目录下的文件,很明显这个fl4gisisish3r3.php就是我们的目标
那么就直接show_source()函数查看一下:
在这里插入图片描述这样我们就得到了flag:ctf{876a5fca-96c6-4cbd-9075-46f0c89475d2}

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值