Hasty Briefsbeta

Bilingual

Drawafish.com Postmortem: Whoops

9 months ago
  • #postmortem
  • #coding
  • #security
  • Incident Duration: ~6 hours (2AM–8AM EST)
  • Impact: Username vandalism (slurs), offensive fish approved, safe fish removed
  • Root Causes: Legacy 6-digit admin password exposed in past data breach, username update API lacked authentication, JWT not tied to specific user
  • Mitigation: Manual reversal of mod actions, fixed authorization logic, backups reviewed
  • Takeaway: Importance of security practices and code reviews, even in personal projects
  • Vulnerabilities: Legacy admin password exposed, username update API without authentication, JWT not user-specific
  • Recovery: Firebase backups (initially misconfigured), mod log used to undo changes, collaboration with a helpful user
  • Reflection: Fun of high-velocity coding vs. necessity of security and reviews, LLMs as tools requiring oversight