【学习笔记】基础:web打点---文件上传
首先格式解析是对应的,类型不对无法解析木马
前端js验证(验证不通过都不发包)
通过判断时间和前端源码分析,如果是仅通过js来过滤危险文件类型,直接禁用js以后再上传
解析缺陷
.htaccess
1 | AddType application/x-http-php .png |
将png图片解析成php文件
文件头校验
直接在文件内容添加一个文件头就行,一般GIF都允许上传
1 | GIF89a |
黑名单过滤(不在黑名单列表的类型都能上传)
双写绕过(或者多写几轮,但是对于递归验证无法绕过)
大小写绕过(linux敏感:全大写全小写,windows:可大小写混合)
00截断(php小于5.3.4)
ctf遇到过,实战没遇到
当%00无法被解析的时候,将它url解码一下应该就行了,post请求体中要手动解码,如果是在url上的,会自动解码
白名单验证(只允许上传在白名单列表的类型)
条件竞争(实战一般遇不到,ctf比较多)
原理:逻辑缺陷了,先上传再判断
1 | <?php ?>');?> |
先上传一次然后在访问,然后重复先访问再上传
二次渲染(要配合文件包含漏洞)
难利用
可能绕过
存储不给执行权限
前提:你能控制你要上传的目录
无解
存储解析(只认数据)
上传后的文件编码存储,由固有协议解析上传的文件数据(与文件后缀无关)
分站存储
oss存储桶
只存储,访问只会出现打开或者下载两种情况
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 lan1ocのblog!








