“百度杯”CTF比赛 2017 二月场 include

2024-01-27 08:32

本文主要是介绍“百度杯”CTF比赛 2017 二月场 include,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

题目
题目说的很明确, 直接告诉说是文件包含漏洞, 看了下分值感觉应该没有什么套路, 打开容器, 具体题目如下
代码
确实很简单, 感觉php://filter/read=convert.base64-encode/resource=一把梭就能搞定

然而我马上发现我错了, 我并不知道flag所在的文件名, 尝试flag.phpflag.txt都是没有卵用的,


然后就没思路了, 只好虚心的去看其他师傅写的wp,

发现原来可以用一把梭的兄弟: php://input,

不过老实说, 我用这个兄弟很久了, 都没想过可以用它绕过,
不过说白了还是脑子转不过弯, 一把梭都行的东西, 换成它的兄弟又何尝不可?

不过还是要标注一下, 这个小兄弟是表示我们提交的POST数据, 就是除去Header的那部分.

想了下还是举个例子

比如我提交了一个POST数据为a=123的请求, 那么php取得php://input的内容就为a=123
举例子
同理, 随便请求数据的时候, 它就只会取得原来请求的那个文本, 并不会因为是json或者是key=value形式的数据而变成数组或者对象.

讲到这里, 或许你会发现, 这个小兄弟不就相当于一个文件路径,
include或者file_get_contents的时候, php就会去读取这个「文件」的内容


然后我们接着解这题,
php要include$_REQUEST.path的值, 那我们就把php://input传给它, 然后把POST数据改为php代码,
这样它就会去执行这些php代码了不是?

因为这些容器一般用的都是linux系统, 所以我们可以试着用system配合ls获取下当前网站目录下的文件列表

使用chrome的hackbar
嗯, 这边要先加个小插曲,

一开始在Chrome下用HackBar插件的我, 以为是方法不行, 所以没成功,
然而, 在看了几个师傅的wp, 加上我用抓包软件测试, 再联想到以前插件是正常工作的, 但是这两天Chrome自动更新到78后,

所以我得出一个结论, Chrome吃相难看.

  • 啊逗比说明年要停止Flash后, Chrome迫不及待的把Flash开关给隐藏的更深了,
    你在访问相关网站的时候, 只能先点网站设置才能看到相关设置, 设置后才会在原来那把破锁头下出现flash设置开关, 而且呢, 你还是得再开一次
  • 总是没有告知用户而做自动更新, 当然, 首先是因为我刚好能连得上他们的服务器, 如果你不更新或者因为网络问题而总是连不上他们的服务器, 那么不好意思, 过段时间, 右上角就会出现引人注目的红色升级按钮逼死强迫症, 可你又「连不上」他们的破服务器不是吗?
  • 而且不更新的时候, 总是会莫名奇妙的突然访问不了一些网站, 或者网站总有这样那样的问题, 但是一更新, 就什么毛病都好了(?)

也许你会说, Chrome是开源的, 可是, 你怎么能保证它开源的代码与他们打包后发给用户的程序之间, 一定没有做什么手脚呢?


不提这个了, 想到乌鸦真的扎心.

总之, 现在我是用抓包软件提交了数据
Fiddler
好在这题没有对函数做什么限制, 所以我们很轻松的就拿到了当前目录下的文件列表,

可以看到, 目录下有个奇怪的dle345aae.php,

我们再用cat获取下文件内容, 于是flag就出来了
cat
细心的你也许发现容器链接变了,
那是因为水的太长时间, 导致环境超时失效, 只好重新创建hhh

也许你会说为什么不用一把梭,
但只要你仔细想想就能明白,
能直接搞定的事, 为什么要套一层base64编码不是?


不过派小兄弟上场也是有条件的, 那就是PHP的设置allow_url_includeon,

好在这道题给了个phpinfo, 让我们可以直接看到php的相关设置, 于是Ctrl + F开启搜索大法.
allow_url_include
这几天刷了几道题下了, 感觉就是修行不够, 连简单题都水不出来, 果然革命尚未结束呢.

不过这样写wp确实很累, 但是为了避免哪天突然自暴自弃, 等后面想努力的时候看不懂, 还是坚持一下把.

最后, 接着吐槽csdn的神经病审核机制, (虽然我个人说明已经说不吐槽了, 但是一吐为快)

也不知道我这人哪有毛病, 别人和我说他的文章从来都不用审核就发出去了, 所以这是欺负我老实人?

好气啊, 可是我也懒得经营另一个博客, 想想写完md还要生成静态网页就麻烦,
虽然也支持自动部署就是了, 不过嘛, 我毕竟就一懒人, 能少动手就少动手,
等哪天看到比csdn更舒适的平台就撤, 反正挖坑再弃坑也不是一次两次了, 我也不是什么大佬, 粉丝或者用户? 不存在的.

审核员你把我这当做一个毫无卵用的威胁就成, 反正用户(体验)至下

吐槽完真舒服, 撤了, 估计明天起来就会发现我号没了hh
在这里插入图片描述

这篇关于“百度杯”CTF比赛 2017 二月场 include的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/649671

相关文章

百度/小米/滴滴/京东,中台架构比较

小米中台建设实践 01 小米的三大中台建设:业务+数据+技术 业务中台--从业务说起 在中台建设中,需要规范化的服务接口、一致整合化的数据、容器化的技术组件以及弹性的基础设施。并结合业务情况,判定是否真的需要中台。 小米参考了业界优秀的案例包括移动中台、数据中台、业务中台、技术中台等,再结合其业务发展历程及业务现状,整理了中台架构的核心方法论,一是企业如何共享服务,二是如何为业务提供便利。

【CTF Web】BUUCTF Upload-Labs-Linux Pass-13 Writeup(文件上传+PHP+文件包含漏洞+PNG图片马)

Upload-Labs-Linux 1 点击部署靶机。 简介 upload-labs是一个使用php语言编写的,专门收集渗透测试和CTF中遇到的各种上传漏洞的靶场。旨在帮助大家对上传漏洞有一个全面的了解。目前一共20关,每一关都包含着不同上传方式。 注意 1.每一关没有固定的通关方法,大家不要自限思维! 2.本项目提供的writeup只是起一个参考作用,希望大家可以分享出自己的通关思路

Imageview在百度地图中实现点击事件

1.首先第一步,需要声明的全局有关类的引用 private BMapManager mBMapMan; private MapView mMapView; private MapController mMapController; private RadioGroup radiogroup; private RadioButton normalview; private RadioBu

我们依旧在追梦的路上-山东省第六届ACM比赛总结

这场比赛从结果而言达到了预期(金牌),从过程而言和我的预期相差甚远(打的太乱,个人发挥很差),还好关键时刻队友抗住压力,负责后果真的不堪设想。 热身赛 热身赛纯粹测机器的,先把A,B,C草草水过(A题小写x打成大写的也是醉了),我和老高开始各种测机器,long long不出所料是lld的,试了一下除0和数组越界的re问题,发现没有re,只有wa(甚至数组越界还AC了),至于栈深的话也没过多追

ACM比赛中如何加速c++的输入输出?如何使cin速度与scanf速度相当?什么是最快的输入输出方法?

在竞赛中,遇到大数据时,往往读文件成了程序运行速度的瓶颈,需要更快的读取方式。相信几乎所有的C++学习者都在cin机器缓慢的速度上栽过跟头,于是从此以后发誓不用cin读数据。还有人说Pascal的read语句的速度是C/C++中scanf比不上的,C++选手只能干着急。难道C++真的低Pascal一等吗?答案是不言而喻的。一个进阶的方法是把数据一下子读进来,然后再转化字符串,这种方法传说中

百度之星 2015 复赛 1001 (数长方形)

数长方形    Accepts: 595    Submissions: 1225  Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Problem Description 小度熊喜欢玩木棒。一天他在玩木棒的时候,发现一些木棒会形成长方形

百度之星 2015 初赛(1) 1002 找连续数

找连续数      Accepts: 401      Submissions: 1911  Time Limit: 2000/1000 MS (Java/Others)      Memory Limit: 32768/32768 K (Java/Others) Problem Description 小度熊拿到了一个无序的数组,对于这个数组,小度熊想知道是

百度之星初赛1002(二分搜索)

序列变换    Accepts: 816    Submissions: 3578  Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Problem Description 给定序列 A={A1,A2,...,An} , 要求改变序列A中

百度之星初赛1006(计算几何:能包含凸包的最小矩形面积)

矩形面积    Accepts: 717    Submissions: 1619  Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Problem Description 小度熊有一个桌面,小度熊剪了很多矩形放在桌面上,小度熊想知道能把这些

结合Python与GUI实现比赛预测与游戏数据分析

在现代软件开发中,用户界面设计和数据处理紧密结合,以提升用户体验和功能性。本篇博客将基于Python代码和相关数据分析进行讨论,尤其是如何通过PyQt5等图形界面库实现交互式功能。同时,我们将探讨如何通过嵌入式预测模型为用户提供赛果预测服务。 本文的主要内容包括: 基于PyQt5的图形用户界面设计。结合数据进行比赛预测。文件处理和数据分析流程。 1. PyQt5 图形用户界面设计