【CTF

您所在的位置:网站首页 php文件解析漏洞是什么类型的问题 【CTF

【CTF

2024-07-12 02:21| 来源: 网络整理| 查看: 265

文件上传

文章目录 文件上传What is Upload-File?Upload-File In CTFWeb151考点:前端校验解题: Web152考点:后端校验要严密解题: Web153考点:后端校验 配置文件介绍解题: Web154考点:后端内容校验 大小写绕过解题: Web155考点:后端内容校验 短标签绕过解题: Web156考点:后端内容校验 中括号 符号绕过解题: Web157、158考点:后端内容校验 大括号 符号绕过解题: Web159考点:后端内容校验 小括号 符号绕过解题: Web160考点:后端内容校验 强限制 日志文件包含利用解题: Web161考点:文件头检测解题: Web162Web164考点:PNG图片二次渲染 Web165考点:JPG图片二次渲染 web166考点:zip文件包含 Web167考点:.htaccess解析 web168考点:基础免杀 Web169、170考点:高级免杀 包含日志

What is Upload-File?

顾名思义就是给网上传文件,比如qq空间

上传文件时服务器后端语言没有对上传的文件进行严格的验证和过滤,容易造成上传任意文件的情况,从而使得攻击者绕过上传机制上传恶意代码并执行控制服务器

恶意代码文件就是php asp aspx jsp等,也被称为webshell

Upload-File In CTF Web151 考点:前端校验 解题:

image-20240131144641594

进来之后很明显一个上传点 并且给出提示

直接上传php后缀文件被禁止 同时任意长传一个其他的后缀 随意输入也被禁止

故为白名单检测 只能上传png后缀格式

于是构造一句话木马放到图片中上传

GIF89a

image-20240131152056625

抓包,想要把php的内容解析 需要把后缀修改

在抓包的这一块已经绕过了前端验证

image-20240131152156373

修改 发送 上传成功

image-20240131152539213

得到图片的路径/upload/upload.php

一定注意是php后缀 因为修改过 上传的就是php后缀的文件

法1 : 直接rce

image-20240131152623585

法2 : 中国蚁剑

image-20240131152741640

密码是我们一句话木马里面的参数a

image-20240131152828313

连接成功

image-20240131152848665

Web152 考点:后端校验要严密 解题:

image-20240131153040791

image-20240131153612836

这里和上一题一样 就能打通 但是思考一下题目 为什么说后端验证要严格呢

这里我们重新构造了一个一句话木马图片不加前缀GIF89a

image-20240131153918152

好吧 效果是一样的hhh

本来我以为与Content-Type有关

image/pngimage/gifjpg image/jpeg

然鹅并没有 OK 解决 下一题

Web153 考点:后端校验 配置文件介绍 解题:

再上传一个png 改后缀为php 好!寄

image-20240131154809751

可以看到msg没有正常显示位置 上传失败

所以我们使用配置文件去解析一下,配置文件有两个 下面分别介绍一下

Reference1

.user.ini

在nginx或者Apache服务中都可以使用

利用条件:open_basedir没有被限制

利用函数:auto_append_file 、 auto_prepend_file

利用原理:使用该配置文件可以让所有php文件自动包含某个文件

解释两个函数:

auto_append_file : 在加载打开的php文件的第一行代码之后加载配置指定的php文件

auto_prepend_file : 在加载打开的php文件的第一行代码之前加载配置指定的php文件

利用过程:

上传一句话木马图片上传配置文件找到目标服务器任意的php进行访问 会触发我们的配置文件

.htaccess

只能在Apache使用

那我们先探测一下 这个网址的服务是什么

在kali里面直接whatweb

┌──(kali㉿kali)-[~] └─$ whatweb http://340f03f0-6c52-4b26-95e2-65c0a527be46.challenge.ctf.show/ http://340f03f0-6c52-4b26-95e2-65c0a527be46.challenge.ctf.show/ [200 OK] Country[CHINA][CN], HTML5, HTTPServer[nginx/1.20.1], IP[124.223.158.81], JQuery[3.2.1], PHP[7.3.11], Script, Title[CTFshow-web入门], X-Powered-By[PHP/7.3.11], nginx[1.20.1]

发现是nginx 所以使用第一个配置文件

先上传我们一句话木马构造的png文件 不用抓包了 就直接上传即可

然后 想办法上传配置文件

先上传一个正常的png后缀 否则过不了前端 抓包 修改名字和内容

image-20240131165333798

然后在upload目录下尝试index.php 确实存在 访问则会触发配置文件

image-20240131165646048

image-20240131165703211

Web154 考点:后端内容校验 大小写绕过 解题:

image-20240131170824223

上传png文件 发现对内容有检测

先大小写绕过试试

image-20240131170933236

成功

image-20240131171015379

上传配置文件

image-20240131171112212

拿到flag

Web155 考点:后端内容校验 短标签绕过 解题:

image-20240204041544098

大小写绕过失效 改为短标签



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3