translation/translated/documents/SuperClaude/SECURITY.md

201 lines
5.6 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 安全策略
## 🔒 报告安全漏洞
我们认真对待安全。如果您发现 SuperClaude Framework 中的安全漏洞,请帮助我们负责任地解决它。
### 负责任的披露
**请不要为安全漏洞创建公共 GitHub 问题。**
相反,请直接通过电子邮件联系我们:`security@superclaude.dev`(或创建私有 GitHub 安全咨询)
### 报告内容
报告漏洞时,请提供:
- **漏洞描述**及其潜在影响
- **复现步骤**提供最小示例
- **受影响的版本**和组件
- **建议的修复**如果您有任何想法
- **您的联系信息**用于后续问题
### 响应时间表
- **初始响应**:报告后 48 小时内
- **严重性评估**1 周内
- **修复时间表**:取决于严重程度(见下文)
- **公开披露**:修复发布且用户有时间更新后
## 🚨 严重性级别
### 关键24-48 小时内修复)
- 远程代码执行漏洞
- 影响系统安全的权限提升
- 数据泄露或对敏感信息的未授权访问
### 高1 周内修复)
- 通过钩子操作进行的本地代码执行
- 超出预期范围的未授权文件系统访问
- MCP 服务器通信中的身份验证绕过
### 中1 个月内修复)
- 非敏感数据的信息泄露
- 通过资源耗尽造成的拒绝服务
- 影响有限的输入验证问题
### 低(下一版本修复)
- 轻微信息泄露
- 具有安全影响的配置问题
- 利用性低的依赖漏洞
## 🛡️ 安全功能
### Hook 执行安全
- **超时保护**:所有 hooks 都有可配置的超时
- **输入验证**:所有 hook 输入的 JSON 模式验证
- **沙盒执行**hooks 以有限系统权限运行
- **错误包含**hook 失败不影响框架稳定性
### 文件系统保护
- **路径验证**:防止目录遍历攻击
- **权限检查**:操作前验证文件系统权限
- **安全默认**:保守的文件访问模式
- **备份机制**:操作失败时的安全回退
### MCP 服务器安全
- **服务器验证**:验证 MCP 服务器的真实性和完整性
- **通信加密**:所有 MCP 通信的安全通道
- **超时处理**:防止无响应服务器的资源耗尽
- **回退机制**:服务器受损时的优雅降级
### 配置安全
- **输入清理**:所有配置输入都经过验证和清理
- **密钥管理**API 密钥和敏感数据的安全处理
- **权限控制**settings.json 中的细粒度访问控制
- **审计日志**:跟踪安全相关的配置更改
## 🔧 安全最佳实践
### 用户指南
#### 安装安全
```bash
# 运行前验证安装脚本
cat install.sh | less
# 使用开发模式进行测试
./install.sh --dev
# 安装后检查文件权限
ls -la ~/.claude/
```
#### 配置安全
```json
{
"permissions": {
"deny": [
"Bash(rm:-rf /*)",
"Bash(sudo:*)",
"WebFetch(domain:localhost)"
]
}
}
```
#### 定期维护
- **定期更新**:保持 SuperClaude 和依赖项为最新版本
- **查看日志**:检查 `~/.claude/` 中是否有可疑活动
- **监控权限**:确保 hooks 具有最小必需权限
- **验证配置**:使用提供的模式验证设置
### 开发者指南
#### Hook 开发
```python
# 始终验证输入
def validate_input(data: Dict[str, Any]) -> bool:
required_fields = ["tool", "data"]
return all(field in data for field in required_fields)
# 优雅地处理错误
try:
result = process_data(input_data)
except Exception as e:
return {"status": "error", "message": "Processing failed"}
# 对外部调用使用超时
import signal
signal.alarm(10) # 10秒超时
```
#### 安全编码指南
- **输入验证**:验证所有外部输入
- **错误处理**:永远不要在错误消息中暴露内部状态
- **资源限制**:实现超时和资源限制
- **最小权限原则**:请求最小必需权限
## 📋 安全检查清单
### 发布前
- [ ] 所有依赖项更新到最新安全版本
- [ ] 运行静态安全分析bandit、safety
- [ ] 输入验证测试通过
- [ ] 审查权限模型
- [ ] 更新包含安全考虑因素的文档
### 定期维护
- [ ] 每月依赖项安全更新
- [ ] 代码库的季度安全审查
- [ ] 年度第三方安全评估
- [ ] 持续监控安全咨询
## 🤝 安全社区
### 漏洞奖励计划
目前,我们没有正式的漏洞奖励计划,但我们认可帮助改进 SuperClaude 安全性的安全研究人员:
- 在发布说明和安全咨询中的**公开致谢**
- 新功能和版本的**早期访问**
- 与开发团队的**直接沟通**
### 安全咨询流程
1. 对报告漏洞的**内部评估**
2. 全面测试的**修复开发**
3. 与安全研究人员的**协调披露**
4. 修复发布后的**公开咨询**
5. **事后分析**以防止类似问题
## 📞 联系信息
### 安全团队
- **电子邮件**`security@superclaude.dev`
- **PGP 密钥**:根据要求提供
- **响应时间**:最多 48 小时
### 一般安全问题
对于一般安全问题(不是漏洞):
- 创建带有"security"标签的 GitHub 讨论
- 检查此文件中的现有文档
- 查看 [贡献指南](CONTRIBUTING.md) 了解开发安全实践
## 📚 额外资源
### 安全相关文档
- [贡献指南](CONTRIBUTING.md) - 安全开发实践
- [安装指南](README.md) - 安全安装程序
- [配置参考](SuperClaude/Settings/settings.json) - 安全设置
### 外部安全资源
- [OWASP 前十](https://owasp.org/www-project-top-ten/)
- [Python 安全最佳实践](https://python.org/dev/security/)
- [Node.js 安全最佳实践](https://nodejs.org/en/docs/guides/security/)
---
**最后更新**2025年7月
**下次审查**2025年10月
感谢您帮助保持 SuperClaude Framework 的安全性!🙏