感谢你帮助我们提升 Dawn Course(破晓课程表)的安全性。本项目坚持“离线可用、本地优先、可迁移”的原则,任何安全问题都应以保护用户数据与使用安全为最高优先级。
我们通常只对以下版本提供安全修复支持:
- 最新发布版(Latest Release)
- 最新开发分支(main)中已合并但尚未发布的修复
如果你使用的是较旧版本,建议先更新到最新发布版后再验证问题是否仍存在。
为了避免漏洞被公开滥用,请不要在公开 Issue / 讨论区直接披露漏洞细节。
推荐报告渠道(优先级从高到低):
- GitHub Security Advisories(推荐)
- 进入仓库页面 → Security → Advisories → “Report a vulnerability”
- 私密沟通渠道(仓库所有者的邮箱)
报告时请尽量包含以下信息(越完整越好):
- 漏洞类型(例如:数据泄露、任意代码执行、权限绕过、拒绝服务等)
- 影响范围(影响哪些模块/哪些用户/是否会造成数据外泄)
- 复现步骤(尽量可稳定复现)
- PoC(概念验证)或最小复现工程(如可提供)
- 你期望的修复方向(可选)
- 设备/系统信息:Android 版本、机型、是否开启 Root/LSPosed 等(如相关)
请避免在报告中包含:
- 真实用户的敏感数据(课表、账号、Cookie、Token、手机号等)
- 任何你不希望被第三方看到的隐私信息
我们通常会按以下流程处理:
- 确认收到:尽快确认收到报告,并评估是否属于安全问题
- 风险评估:评估严重等级与影响范围
- 修复与验证:在本地与自动化测试中验证修复有效
- 发布修复版本:以 Release 形式发布,必要时提供风险说明
- 致谢:如你愿意署名,我们会在发布说明中致谢(可选)
响应时间说明(非强保证,尽量做到):
- 严重漏洞:优先处理
- 一般漏洞:按迭代节奏合并修复并发布
我们大致按以下标准判断严重程度:
- Critical(严重):可导致大量用户数据泄露、远程代码执行、权限完全绕过等
- High(高):可导致敏感数据泄露、绕过关键安全检查、持久化恶意行为等
- Medium(中):需要特定条件触发或影响较小,但仍有安全风险
- Low(低):信息泄露风险较低、仅影响调试环境或对用户影响很小
我们会持续遵循以下方向来降低风险:
- 避免在日志中输出敏感信息(Token、Cookie、课表隐私内容等)
- 关键数据本地优先、可迁移,并尽可能减少不必要的权限
- 网络通信尽量明确边界、避免明文泄露与不必要的第三方依赖
本项目为开源软件,我们会尽最大努力及时响应并修复安全问题,但不对因使用本软件导致的间接损失承担责任。欢迎通过合规渠道提交漏洞报告,共同提升安全性。