# BootDo ContentController 跨站脚本漏洞
## 概述
在 lcg0124 BootDo 项目(提交版本 e93dd428ef6f5c881aa74d49a2099ab0cf1e0fcb 及之前)中发现一个跨站脚本(XSS)漏洞,位于 `ContentController` 组件的 `/blog/bContent/save` 文件的 `Save` 函数。
## 影响版本
lcg0124 BootDo 提交版本 e93dd428ef6f5c881aa74d49a2099ab0cf1e0fcb 及之前版本。项目采用滚动发布模式,未提供具体的版本号信息。
## 细节
漏洞源于 `Save` 函数对 `content`、`author`、`title` 参数缺乏充分的输入验证和输出转义,攻击者可通过操纵这些参数注入恶意脚本代码。
## 影响
攻击者可远程利用该漏洞实施跨站脚本攻击(XSS),已存在公开的 exploit,可能被用于实际攻击。
是否为 Web 类漏洞: 未知
判断理由:
| # | POC 描述 | 源链接 | 神龙链接 |
|---|
标题: BootDo System /blog/bContent/save xss vulnerability · Issue #4 · webzzaa/CVE- -- 🔗来源链接
标签:exploitissue-tracking
神龙速读:
### 漏洞关键信息总结
#### 受影响产品
- **BootDo**
- 官方主页路径: `/blog/bContent/save`
- 漏洞文件: `ContentController` 类
- 版本: v1.0
- 提供的软件链接:
- [GitHub](https://github.com/lcg0124/bootdo)
- [Gitee](https://gitee.com/lcg0124/bootd)
#### 漏洞类型与影响
- **类型**
- XSS漏洞
- **影响**
- 攻击者可利用反射型XSS,进行未授权访问、劫持会话、盗取敏感数据、破坏网页内容和威胁网站整体完整性,影响用户隐私及业务正常运行。
#### 描述与利用
- **无需登录或授权**即可进行攻击。
- 漏洞存在于 `/blog/bContent/save` 路径的 `'content'`、`'author'`、`'title'` 参数中,可使用 `<script>alert(123)</script>` 作为POC。
- `ContentController` 类中的`save` 方法未包含XSS过滤。
#### 提议修复方案
1. **输出编码**: 对所有用户生成的内容进行编码处理,以确保在显示时只作为纯文本,而非可执行代码。
2. **输入验证和过滤**: 严格验证和过滤用户输入,确保符合预期格式。
3. **内容安全策略(CSP)**: 使用CSP来限制可执行脚本的来源。
4. **定期安全审计**: 常规进行代码和系统安全审计以识别并修复潜在安全漏洞。
暂无评论