CTFHUB学习题解Web(4)-文件上传

注:

1.是个正在学习的新手,连脚本小子都不够格
2. 很多题目都很基础,但是都做了详细截图
3. 题库尚不完全,没有内容的分支先直接跳过,等题库更新再做添加
4. 大标题为版块名,小标题为题目名
5. 个人学习记录和复习使用,如有错误欢迎指正


文章目录

  • 无验证
  • 前端验证
  • .htaccess
  • MIME绕过
  • 文件头检查
  • 00截断
  • 双写后缀


无验证

无验证没啥说的,上传php脚本用蚁剑链接即可
CTFHUB学习题解Web(4)-文件上传_第1张图片
CTFHUB学习题解Web(4)-文件上传_第2张图片

前端验证

php文件不允许上传
CTFHUB学习题解Web(4)-文件上传_第3张图片
查看网页源码
CTFHUB学习题解Web(4)-文件上传_第4张图片
将脚本后缀改为.jpg上传并抓包把后缀名改回.php即可上传
在这里插入图片描述
CTFHUB学习题解Web(4)-文件上传_第5张图片
用蚁剑连接即可
CTFHUB学习题解Web(4)-文件上传_第6张图片

.htaccess

查看网页源码发现有黑名单
CTFHUB学习题解Web(4)-文件上传_第7张图片
但是由于没有过滤.htaccess文件,所以可以这样构造.htaccess并上传,使gif文件被php解析器处理
CTFHUB学习题解Web(4)-文件上传_第8张图片
上传图片马并用蚁剑连接即可
CTFHUB学习题解Web(4)-文件上传_第9张图片

MIME绕过

既然是MIME绕过,直接上传php文件
CTFHUB学习题解Web(4)-文件上传_第10张图片
抓包并修改MIME即可成功上传
CTFHUB学习题解Web(4)-文件上传_第11张图片
使用蚁剑连接即可
CTFHUB学习题解Web(4)-文件上传_第12张图片

文件头检查

上传php文件会提示文件类型不正确
CTFHUB学习题解Web(4)-文件上传_第13张图片
抓包在脚本前加上gif文件的前缀GIF89a即可成功上传
CTFHUB学习题解Web(4)-文件上传_第14张图片
用蚁剑连接即可
CTFHUB学习题解Web(4)-文件上传_第15张图片

00截断

查看网页源码,给出了保存路径和允许上传的文件类型
CTFHUB学习题解Web(4)-文件上传_第16张图片
上传.jpg并抓包修改url如下
CTFHUB学习题解Web(4)-文件上传_第17张图片
上传成功,用蚁剑连接即可
CTFHUB学习题解Web(4)-文件上传_第18张图片
为什么修改路径而不是文件名?因为程序中检测的是文件的后缀名,如果后缀合法则拼接路径和文件名,那么修改了path以后的拼接结果为:road=/var/www/html/upload/test.php%00test.jpg,移动文件的时候会将文件保存为/var/www/html/upload/test.php,从而达到Getshell效果。

双写后缀

查看网页源码发现非法后缀名会被替换为空字符串
CTFHUB学习题解Web(4)-文件上传_第19张图片
CTFHUB学习题解Web(4)-文件上传_第20张图片
于是将.php更改为.pphphp并上传
CTFHUB学习题解Web(4)-文件上传_第21张图片

CTFHUB学习题解Web(4)-文件上传_第22张图片
用蚁剑连接即可
CTFHUB学习题解Web(4)-文件上传_第23张图片
原理是处理函数发现.pphphp后将其中的php替换为空字符串,剩下的字符串仍然合成为php,得以以php后缀名保存。通常还有多次替换的类似题目。

其他题目详解链接:

Web(1)-前置技能部分
Web(2)-信息泄露部分
Web(3)-密码口令与XSS部分
Web(5)-RCE部分

如果觉得有用可以关注+一键三连
我走错片场了

你可能感兴趣的:(网络安全,php,html,upload,信息安全,web)