- 3 Ağustos 2025’te DrawAFish! web sitesinde yaklaşık 6 saat süren bir büyük güvenlik ihlali meydana geldi
- Yönetici parolası sızıntısı, kimlik doğrulaması eksik API ve JWT zafiyeti gibi temel güvenlik açıklarının birleşik şekilde saldırıya açık hale gelmesi tespit edildi
- Sonuç olarak tüm kullanıcı adları küfürlü ifadelerle değiştirildi, rahatsız edici çizimler onaylandı ve aynı anda mevcut güvenli çizimlerin silinmesi gerçekleşti
- Manuel kurtarma, kimlik doğrulama mantığının düzeltilmesi ve yedeklerin doğrulanması gibi adımlarla sorun giderildi
- Temel ders, hızlı geliştirme ("vibe-coding") ve test/kod inceleme eksikliğinin güvenlikte ciddi sonuçlar doğurabileceğiydi
DrawAFish.com Genel Bakış ve 3 Ağustos 2025 Olay Özeti
- DrawAFish.com kullanıcıların kendi balıklarını çizip diğer kullanıcılarla birlikte bir akvaryumda yüzdürüp eğlenebileceği bir web sitesidir
- 1 Ağustos 2025’te Hacker News’te birinci sıraya yükselerek büyük ilgi gördü. Geliştirici, Copilot gibi araçlarla özellikleri hızla üreten bir “vibe-coding” yaklaşımı benimsedi
- Ancak 3 Ağustos 2025’in şafağında ciddi bir güvenlik ihlali meydana geldi
- Yaklaşık 6 saat boyunca tüm kullanıcı adları kaba ifadelerle değiştirildi, uygunsuz çizimler onaylandı ve genel bir kaos yaşandı
- Sonuçta bir yönetici olaydan manuel olarak geri döndü
Güvenlik Açıklarının Detaylı Analizi
1. Geçmişte Sızdırılmış 6 Haneli Yönetici Şifresi
- Geliştirici başlangıçta kendi çocukluk dönemi kullanıcı adı ve şifresini (6 hane) yönetici hesabında kullanmıştı
- Bu parola, Neopets gibi sitelerin veri sızıntılarıyla zaten internette yayıldığı için herkese açıktı
- Geliştirici daha sonra Google Auth’a geçtiyse de eski parolayı kaldırmadı ve zafiyet saldırgana karşı açık kaldı
- Saldırgan, sızdırılmış bilgileri kullanarak yönetici kimlik doğrulamasından geçti ve hakaret içerikli çizimlerin onaylanması ile normal çizimlerin silinmesi gibi kötü niyetli eylemler yaptı
2. Kimlik Doğrulaması Olmayan Kullanıcı Adı Değiştirme API’si
- Profil backend’i geliştirirken “hızlı geliştirme” adına kimlik doğrulaması kontrolü olmadan kullanıcı adı değiştirme API’si yazıldı
- Bu sayede pratikte herkes herhangi birinin kullanıcı adını değiştirebilir hale geldi
3. Yetersiz JWT Doğrulaması
- JWT tabanlı kimlik doğrulamada, token ile userId/e-posta eşleşmesi kontrol edilmeden yönetici işlemlerine izin verecek şekilde uygulandı
- Yani saldırganın elinde yalnızca yönetici doğrulama bilgileriyle alınmış bir token varsa, bu tokenla herkese yönetici yetkisiyle işlem yapılabiliyordu
- İlginç şekilde, bir Hacker News kullanıcısı bu zafiyeti kullanarak saldırgandan önce uygunsuz içeriği silip acil müdahaleye katkı sağladı
Kurtarma Süreci
- Geliştirici sabah saat 07:45 civarında durumu fark ederek masaüstünde anında müdahaleye başladı
- Firebase yedekleri yapılandırılmadığı için yedekleme altyapısına güvenilemedi ve kod hızlıca değiştirerek kimlik doğrulamanın zorunlu olması sağlandı
- Tüm moderasyon loglarını izleyerek kötü niyetli eylemleri geri almak için bir betik geliştirildi (bu betik de yine vibe-coding ile yazıldı)
- Acil durumda üçüncü taraf bir hesabın (bir Hacker News kullanıcısının) yönetici yetkisine erişimi de engellendikten sonra, kod tabanı güvenlik refaktörüne dair geri bildirim alındı ve ek yamalar yapıldı
Geliştirme Kültürü ve Dersler
- Geliştirici, “vibe-coding”, yani hızlı prototipleme ve minimum inceleme kültürünün eğlenceli ve üretken bir süreç sunduğunu, ancak pratikte ciddi güvenlik açıklarına dönüşebileceğini yaşayarak gördü
- LLM (Copilot) hızlı kod üretiminde çok faydalı olsa da, kod kalitesi ve güvenlik sorumluluğu yine geliştiricinin elindedir
- Test, kimlik doğrulama mantığı, kod inceleme gibi temel güvenlik süreçlerinin atlanması, küçük projelerin bile dış saldırılara karşı son derece kırılgan olabileceğini kanıtladı
Sonuç ve İçgörüler
- DrawAFish.com örneği, gerçek servis işletiminde sıkça göz ardı edilen temel güvenlik önlemlerinin önemini gösteriyor
- Açık kaynak araçlarına ve hızlı geliştirme araçlarına bel bağlansa da, test, kimlik doğrulama, kod inceleme ve parola yönetimi gibi temel konular mutlaka kontrol edilmelidir
- Beklenmedik ölçekte dikkat (ör. Hacker News üst sıralar) artınca, saldırı yüzeyi ve risk hızlıca genişleyebilir
- Olay sonrasını şeffaf biçimde belgelemek, benzer başlangıç aşamasındaki girişimcilere veya bireysel geliştiricilere gerçekçi güvenlik dersleri sunuyor
Henüz yorum yok.