Kötü niyetli bir ChatGPT paylaşım bağlantısı, onu açan oturum açmış herkesin oturumunda saldırganın kodunu çalıştırabiliyor ve özel sohbetlerini okumasına izin veriyordu; güvenlik firması Parameter’daki araştırmacılar bunu gösterdi.
Araştırmacılar açığı 18 Ekim’de OpenAI’ın hata ödül programı üzerinden bildirdi. OpenAI sekiz gün sonra sorunu giderdi ve en ciddi kategorisi olan P1 olarak derecelendirdi.
Tuzağın kaynağı, kamuya açık bağlantısıyla paylaşılmış sıradan bir ChatGPT sohbetiydi. Bu bağlantı, gerçek bir paylaşılmış sohbet gibi e-posta, mesaj, destek bileti ya da sosyal medya gönderisiyle gönderilebiliyordu.
Kurbanın bir şey yüklemesi, bir çalışma alanına katılması ya da saldırgan üzerinden oturum açması gerekmiyordu. En güvenilir saldırı senaryosunda bağlantıyı açıp ChatGPT’nin Önizleme düğmesine bir kez tıklaması yeterliydi. Daha sonraki bir sürümde Parameter sayfanın Önizleme’yi kendi kendine açmasını sağladı; böylece bağlantıyı açmak tek adım oldu.
Saldırgan Ne Yapabilirdi
Bağlantı açıldığında saldırganın kodu, kurbanın oturum açmış oturumunda gerçek ChatGPT sitesiyle aynı erişimle çalıştı. Kurbanın son sohbetlerini listeledi, saldırganla hiç paylaşılmamış özel bir sohbeti açtı ve küçük bir kısmını araştırmacıların kontrolündeki bir sunucuya gönderdi.
Kod, ekranda olanı kopyalamak yerine doğrudan ChatGPT’nin oturum açmış API’lerini çağırdı. Kurbanın tam web erişimiyle çalıştığı için erişimi sadece o sohbetlerle sınırlı değildi. Araştırmacılar yazdıklarına göre “Esasen kurbanın ChatGPT hesabı adına her türlü işlemi gerçekleştirebiliyorduk.”
Çalışma kontrollü bir testti. Parameter açığın gerçek dünyada kullanıldığına dair bir rapor sunmuyor ve özel sohbet kanıtını gerçek kullanıcılara karşı değil, ayrı hesaplar arasında yürüttü.
Bağlantı Kum Havuzundan Nasıl Çıktı
Parameter’a göre zincir şöyle işledi. ChatGPT, bir sohbetteki HTML bloğunu Önizleme adlı özellik sayesinde küçük bir web sayfasına dönüştürebiliyor. Bu sayfa her türlü kodu barındırabildiği için ChatGPT onu ana ChatGPT sayfasını okuyamayacağı ayrı bir web adresinde kilitli bir çerçevede çalıştırıyor.
Kum havuzu sağlam kaldı. Açık, aynı sohbetteki ikinci bir özellikle geldi.
Paylaşılan sohbet ayrıca etkileşimli bir grafik de içeriyordu ve grafiğin çizilmesi MathLive adlı matematik kütüphanesini ana ChatGPT sayfasına yüklüyordu. MathLive’in yüklenmesi, ekran klavyesi hakkındaki mesajları kabul eden bir dinleyiciyi orada bırakıyordu.
Tarayıcı çerçeveleri arasında geçen bir mesaj yalnızca alıcının kim gönderdiğini kontrol etmesi halinde güvenlidir. Parameter bu dinleyicinin klavye mesajını her gönderenden kabul ettiğini ve mesajın ham HTML taşımaya izin verildiğini buldu. Önizleme böylece sınırın ötesine geçip saldırganın HTML’ini güvenilen ana sayfaya iletebildi.
Bu HTML, tarayıcının chatgpt.com’un bir parçası olarak gördüğü yeni bir çerçeve oluşturdu. YouTube’dan yüklenen bir betik de onun içinde çalışan kodu sağladı.

ChatGPT’nin içerik güvenlik politikası bir sayfanın betiklerinin nereden gelebileceğini sınırlıyor. Satır içi kodu engelliyordu ancak YouTube’dan gelen betiklere izin veriyordu; bu yüzden bu adım işe yaradı.
OpenAI Ne Düzeltmiş ve Kullanıcılar Ne Yapmalı
Parameter, OpenAI’ın hem kod çalıştırma hem de özel sohbet kanıtını yeniden ürettiğini, ciddiyeti P2’den P1’e yükselttiğini ve düzeltmeyi ChatGPT web ön ucunun iki sürümüne de uyguladığını söyledi. 26 Ekim’e kadar her iki sürüm de saldırının dayandığı mesajları reddediyordu.
Araştırmacılar sorunun üç tasarım seçiminin bir araya gelmesinden kaynaklandığını tespit etti:
MathLive, hangi çerçevenin gönderdiğini kontrol etmeden ayarlarını değiştiren bir mesaja tepki verdi.
Bu mesaj klavye düzeni verisi olarak ham HTML taşımaya izin veriliyordu.
HTML, kum havuzuna alınmamış ve chatgpt.com kimliğini miras alan bir çerçeve oluşturabiliyordu.
YouTube adımı yalnızca son geçici çözümdü, neden değildi. Bunu tek başına engellemek, güvensiz bir Önizleme’nin yine de HTML’i ana siteye itmesine izin verecekti.
ChatGPT kullanıcılarının bir şey yapmasına gerek yok. Düzeltme OpenAI tarafında ve yüklenmesi ya da sıfırlanması gereken bir şey yok.
Parameter yazısını düzeltmeden sonra 28 Ekim’de yayımladı. OpenAI rapor için toplam 5.000 dolar ödedi.