[极客大挑战 2019]Secret File--详细解析

信息搜集

进入界面。黑底红字,有点恐怖。

查看源代码看看有什么信息:
找到一个/Archive_room.php页面,访问:
如果直接点这个按钮的话,会回显这样的界面:

找错地方了,退回/Archive_room.php页面,查看源代码:

发现/action.php,访问,发现还是跳转到了end.php界面。

怀疑是重定向,所有我们访问/action.php并抓包看看:

果然是302重定向,我们访问重定向页面里给的这个地址:
有include函数,应该是文件包含漏洞方面的考察。

信息搜集结束。

文件包含

php 复制代码
<?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里
?>

strstr(str1,str2) 函数用于判断字符串str2是否是str1的子串。如果是,则该函数返回 str1字符串从 str2第一次出现的位置开始到 str1结尾的字符串;否则,返回NULL。

strstr是大小写敏感的。

stristr是大小写不敏感的。

也就是我们上传的参数字符串中不能有 ../ tp input data这几个子串。

也就是我们不能使用data伪协议、input伪协议和通过相对路径直接查找flag文件。

所以我们选择php://filter伪协议。

php 复制代码
file=php://filter/convert.base64-encode/resource=<目标文件名>

这种方法得到的是base64编码后的文件内容,我们找个网站解码一下:

得到flag.

总结

信息搜集是Web安全的基本功,当找不到目标网页的时候,多抓包看看,会有收获。

相关推荐
сокол4 分钟前
【网安-Web渗透测试-内网渗透】内网信息收集(工具)
服务器·windows·网络安全·系统安全
忡黑梨5 分钟前
eNSP_DHCP配置
c语言·网络·c++·python·算法·网络安全·智能路由器
贾铭14 分钟前
如何实现一个网页版的剪映(五)如何跳转到视频某一帧
前端·后端
林恒smileZAZ18 分钟前
CSS 滚动驱动动画(scroll-timeline):无 JS 实现滚动特效
前端·javascript·css
俺不会敲代码啊啊啊18 分钟前
el-table实现行拖拽(包含展开项)
前端·vue.js·typescript
LIO18 分钟前
React Router 极简指南(v6+)
前端·react.js
YaBingSec19 分钟前
玄机网络安全靶场:Jackson-databind 反序列化漏洞(CVE-2017-7525)
linux·网络·笔记·安全·web安全
明月_清风20 分钟前
从 AST 视角看透前端工程化:一条编译管线如何串联起所有工具
前端
架构源启21 分钟前
2026 进阶篇:Spring Boot响应式编程 + Spring AI 1.1.4 流式实战 + Vue前端完整实现(避坑指南)
java·前端·vue.js·人工智能·spring boot·spring·ai编程
白开水都有人用22 分钟前
前端 AES 加密 + 后端解密 + MD5 校验登录
前端