OpenAI, pazartesi günü ChatGPT’yi neden çevrimdışı bıraktığına dair yeni detaylar açıkladı. Şirket, bu süre zarfında bazı kullanıcıların ödeme bilgilerinin olay sırasında başkalarına maruz kalmış olabileceğini belirtti.
Şirketin yaptığı açıklamaya göre, redis-py adlı açık kaynaklı bir kütüphanedeki hata, aktif kullanıcıların başka bir kullanıcının kredi kartının son dört hanesini, son kullanma tarihini, adını, soyadını, e-posta adresini ve ödeme adresini görmelerine neden olabilir. Ayrıca kullanıcılar, diğerlerinin sohbet geçmişlerinden parçaları da görmüş olabilir.
OpenAI, ödeme bilgilerinin sızıntısının 20 Mart günü saat TSİ ile 12.00 ile 21.00 arasında hizmeti kullanan ChatGPT Plus kullanıcılarının yaklaşık yüzde 1.2’sini etkilemiş olabileceğini belirtiyor.
OpenAI’ye göre, ödeme verilerinin izinsiz bir kullanıcıya gösterilmesine iki senaryo neden olabilir. Kullanıcılar, belirtilen zaman aralığında Hesabım > Aboneliği Yönet ekranına gittiğinde, o sırada hizmeti kullanan başka bir ChatGPT Plus kullanıcısının bilgilerini görebilir. Ayrıca şirket, olay sırasında gönderilen bazı abonelik onay e-postalarının yanlış kişiye gittiğini ve bunların bir kullanıcının kredi kartı numarasının son dört hanesini içerdiğini söylüyor.
Şirket, bu tür şeylerin 20’sinden önce de gerçekleşmiş olabileceğini, ancak bunun daha önce hiç yaşanmadığına dair bir teyit almadığını söylüyor. OpenAI, ödeme bilgileri ifşa olabilecek kullanıcılara ulaştı.
Bütün bunların nasıl gerçekleştiğine gelince, sorun önbelleklemeyle ilgiliydi. Şirket, kullanıcı bilgilerini önbelleğe almak için Redis adlı bir yazılım kullanıyor. Belirli koşullar altında, iptal edilen bir Redis isteği, farklı bir istek için bozulmuş verilerin dönmesine neden oluyordu (ki bu olmamalıydı). Genellikle, uygulama bu veriyi alır, “bu benim istediğim şey değil” der ve bir hata bildirir.
Ancak, diğer kişi de aynı tür verileri istediğinde; örneğin, hesap sayfasını yüklemeye çalıştıklarında ve veriler başka bir kişinin hesap bilgileri olduğunda, uygulama her şeyin yolunda olduğuna karar verir ve onlara gösterirdi.
İşte bu yüzden insanlar diğer kullanıcıların ödeme bilgilerini ve sohbet geçmişlerini görüyorlardı; iptal edilen bir istek nedeniyle başka birine gitmesi gereken önbellek verileri onlara sunuluyordu. Bu durum sadece aktif kullanıcıları etkiledi. Uygulamayı kullanmayanların verileri önbelleğe alınmazdı.
20 Mart sabahı, OpenAI’ın sunucusunda yaptığı bir değişiklikle, iptal edilen Redis isteklerindeki artışın yanı sıra, hatalı önbelleğin başkalarına dönme şansı da artmıştı.
OpenAI, Redis’in belirli bir versiyonunda görünen hatanın şu anda düzeltilmiş olduğunu ve projede çalışan insanların “harika iş birlikçiler” olduğunu söylüyor. Ayrıca şirket, bu tür olayların tekrar yaşanmaması için kendi yazılımına ve uygulamalarına bazı değişiklikler yapacağını belirtiyor. Bu değişiklikler arasında, sunulan verilerin gerçekten de istekte bulunan kullanıcıya ait olduğundan emin olmak için “fazladan kontrol” eklemek ve Redis kümesinin yüksek yükler altında hata verme ihtimalini azaltmak bulunuyor.
Bu tür kontrollerin baştan itibaren orada olması gerektiğini savunarak, OpenAI’nin şimdi bu kontrolleri eklemiş olması iyi bir şey. Açık kaynaklı yazılım, modern web için vazgeçilmezdir, ancak kendi başına bazı zorlukları da beraberinde getirir. Herkesin kullanabileceği için, hatalar birden fazla hizmet ve şirketi aynı anda etkileyebilir. Ayrıca, kötü niyetli bir aktör, belirli bir şirketin hangi yazılımı kullandığını bilirse, o yazılımı hedef alarak bilerek bir açık yaratmaya çalışabilir. Bunu zorlaştıran kontroller olsa da, Google gibi şirketlerin gösterdiği gibi, bunun yaşanmaması için çalışmak ve yaşandığında buna hazırlıklı olmak en iyisidir.