文件
websafe-kb/05-defense/secure-code/ruby/file-upload-validation.md

49 行
851 B
Markdown

# file-upload-validation
> `LAB ONLY` | 修复主题页
- 语言: `ruby`
- 主题: `file-upload-validation`
- 说明: 校验文件类型、名称、存储位置和执行权限。
- 典型场景: 适用于媒体上传、插件安装、主题导入和日志附件接收。
## 脆弱示例
```rb
render inline: "<div>#{value}</div>"
```
## 更安全的写法
```rb
render inline: "<div>#{ERB::Util.html_escape(value)}</div>"
```
## 检查清单
- 明确输入边界与不可信来源
- 在服务端或可信封装层统一做校验/转义/约束
- 对关键路径补充自动化测试和依赖升级策略
## 相关系统
- ASP.NET Core
- Adobe Commerce
- Directus
- Django
- Drupal
- Joomla
- Laravel
- Magento Open Source
- MediaWiki
- Moodle
- OpenCart
- PrestaShop
- Ruby on Rails
- Shopware
- Strapi
- Vite
- WordPress
- esbuild
- webpack