文件上传Ⅲ

#文件-解析方案-执行权限&解码还原

1、执行权限

文件上传后存储目录不给执行权限(即它并不限制你上传文件的类型,但不会让相应存有后门代码的PHP文件执行,但是PNG图片是可以访问的)

2、解码还原

数据做存储,解析固定(有固定协议:eg: data:image/png;base64,一串base 64编码;

文件后缀名无关,最后都会解析为数据

(上传图片->图片数据-> 一串base64编码)

解决方案:显示图片->base64解码->数据还原

文件上传后利用编码传输--解码还原

实例(数据做存储,解析固定,解码还原未进行演示)

上传2.php文件进行尝试

且发现其将2.php文件里面的后门代码base64编码了

虽然不限制上传文件类型,但由于其固定协议,当成图片解析,并且解析为数据类型!

#文件-存储方案-分站存储&OSS对象

1、分站存储

文件上传成功后,到另一个网址里面存储,并不在原网址里面解析

eg:

在upload.xiaodi8.com上传

却在images.xiaodi8.com存储

2、OSS对象

Access控制-oss对象存储-Bucket对象

文件上传成功后,访问相应网址,一打开就是下载这个文件,并不对这个文件进行解析!

#安全绕过

以上方案除目录设置权限如能更换目录解析(即能将文件存储在其能被解析执行的目录下,再次访问该目录可以上传的php文件可以被解析)绕过外,其他(即解码还原分站存储oss对象)均无解

相关推荐
SuperEugene3 分钟前
Vue3 Props 传参实战规范:必传校验 + 默认值 + 类型标注,避开 undefined / 类型混用坑|Vue 组件与模板规范篇
前端·javascript·vue.js·前端框架
im_AMBER7 分钟前
万字长文:编辑器集成Vercel AI SDK
前端·人工智能·react.js·前端框架·编辑器
Y君9 分钟前
面了3个人后我发现:AI用得最溜的,未必是我最想要的工程师
前端·人工智能·面试
一拳不是超人10 分钟前
2026年最值得关注的JavaScript新特性:Signals,响应式编程的下一个十年
前端·javascript·响应式编程
skiy10 分钟前
Webpack、Vite区别知多少?
前端·webpack·node.js
Luna-player14 分钟前
npm install vue-awesome-swiper@5.0.1 swiper@7.4.1安装后,我又想全删了,怎么移除
前端·vue.js·npm
大雷神16 分钟前
HarmonyOS APP<玩转React>开源教程二十:收藏功能实现
前端·react.js·开源·harmonyos
晓得迷路了18 分钟前
栗子前端技术周刊第 121 期 - Vitest 4.1、Nuxt 4.4、Next.js 16.2...
前端·javascript·vite
kyle~19 分钟前
Electron桌面容器
前端·javascript·electron
隔壁小邓21 分钟前
vue如何拆分业务逻辑
前端·javascript·vue.js