Drawafish.com Postmortem: Whoops
9 months ago
- #postmortem
- #coding
- #security
- 事件持续时间:约6小时(美国东部时间凌晨2点至早上8点)
- 影响:用户名遭恶意篡改(含侮辱性内容)、违规鱼类被审核通过、安全鱼类被移除
- 根本原因:历史数据泄露暴露了遗留的6位数管理员密码、用户名更新API缺乏身份验证、JWT令牌未绑定特定用户
- 缓解措施:手动回滚管理操作、修复授权逻辑、审查备份数据
- 经验教训:即使是个人项目也需重视安全实践和代码审查
- 漏洞点:遗留管理员密码暴露、无认证的用户名更新API、非用户绑定的JWT令牌
- 恢复过程:Firebase备份(初始配置有误)、利用操作日志还原变更、与热心用户协作修复
- 反思:高速编程的乐趣 vs 安全与审查的必要性、需监督的大语言模型工具使用