PortSwigger araştırmacısı Gareth Heyes’in Black Hat USA 2026’da paylaştığı çalışmaya göre, saldırganlar webmail istemcilerindeki CSS ve HTML işlemesini kullanarak Outlook, Gmail, Fastmail, Proton Mail, Yahoo Mail ve AOL Mail üzerinden parola, oturum belirteci ve kullanıcı arayüzü eylemlerini ele geçirebiliyor. Araştırmada gösterilen zincirler, özellikle e-posta içeriğinin tarayıcı ya da istemci tarafından güvenilir arayüze dönüştürüldüğü noktalarda savunmaları deliyor.
Heyes’in sunduğu kanıt-kodları, bazı senaryolarda sahte oturum açma ekranı gösterip parola topluyor, bazı senaryolarda ise kopyala-yapıştır yarışını kullanarak tek kullanımlık giriş token’larını açığa çıkarıyor. Çalışmada ayrıca yapay zekâ destekli e-posta işleme akışlarının CSS enjeksiyonu ve prompt injection ile nasıl yönlendirilebildiği de gösterildi.
Outlook, Gmail ve Yahoo tarafında görülen zincirler
Araştırmanın en çarpıcı örneklerinden biri Outlook ile Firefox arasında kurulan zincir oldu. Bu senaryoda saldırgan, Microsoft oturum açma ekranını taklit eden bir arayüz oluşturup alıcının yazdığı parolayı topluyor. Heyes, bu akışta izin verilen etiketlerin mesaj kutusunun dışındaki kontrol öğelerini tetikleyebildiğini, uygulama tarafındaki JavaScript’in de temizleyicinin izin verdiği sınırların dışına çıkan CSS taşıyan yeni DOM düğümleri üretebildiğini anlattı. Ardından devreye giren medya sorgusu ayrıştırma hilesi, saldırgana rastgele CSS uygulama imkânı veriyor.
Bu zincirde kritik ayrıntı Firefox tarafında ortaya çıkıyor. Tarayıcıda select öğesinin seçenek seçme süresi yaklaşık bir saniye ve öğe ekran dışına taşındığında bu sayaç sıfırlanıyor. Araştırmacı bu davranışı kullanarak parola yakalamanın gerçek zamanlı hale gelebildiğini gösterdi. Çalışmada Outlook için label-jacking tekniğinin ve Gmail tarafındaki image-set() atlatmasının, araştırmanın 6 Ağustos’ta yayımlandığı sırada hâlâ çalıştığı belirtildi.
Gmail ile Cowork arasında gösterilen başka bir zincir, Slack belirtecinin dışarı sızdırılmasına uzanıyor. Burada prompt injection içeren bir e-posta, Anthropic’in Claude Cowork aracılığıyla işleniyor; süreç Gmail konektörü üzerinden bağlanıyor. Saldırgan bir Slack token doğrulama e-postası tetikliyor, ardından kurban Cowork’a e-postaları işlemesini söylüyor. Enjekte edilen talimatlar, aracın token’ı alıp bir HTML taslağına yerleştirmesine yol açıyor; taslak görüntülendiğinde belirteç açığa çıkıyor.
Yahoo Mail ve AOL Mail tarafında ise farklı bir yöntem kullanıldı. Firefox’ta yapıştırılan HTML, sanitizasyon gerçekleşmeden önce kısa süreliğine aktif CSS’i koruyabiliyor. Medium üzerinde gösterilen senaryoda saldırgan bir e-posta ile oturum açma akışını başlatıyor, kurban saldırganın panoya koyduğu CSS’i kopyalıyor ve bunu Yahoo ya da AOL taslağına yapıştırıyor. Ardından üretilen istekler, 12 karakterlik giriş token’ının yeterli kısmını saldırganın sunucusuna taşıyor; saldırgan da bu parçadan token’ı yeniden kurup kurban adına oturum açabiliyor.
Çalışma, İçerik Güvenlik Politikası’nın dış kaynakları engellediği durumlar için de tıklama temelli bir sızıntı tekniği ortaya koyuyor. E-postanın içinde metin olarak gösterilen sayısal bir token ve stil enjeksiyonu varsa, CSS hangi rakamların ve kaç kez geçtiğini ayıklayabiliyor. Eşleşmeyen bağlantılar gizleniyor, eşleşen bağlantı sayfanın üzerine bırakılıyor. Kurbanın tıklaması, rakamları ve frekanslarını saldırganın sunucusuna gönderiyor.
Otomatik işleme tarafında da benzer bir risk var. Gmail’deki image-set() geri dönüş davranışı, sanitizasyona rağmen dış bağlantı isteği doğurabiliyor. Heyes ve PortSwigger’dan Pete Hendy, bu yolu Anthropic Claude Cowork’un Gmail konektörüyle bağlanan dolaylı prompt injection zincirine ekledi. Kurban, gelen e-postaları işlemesi için Cowork’tan yardım istediğinde enjekte edilen komutlar bir Slack token’ını çekip HTML taslağa yerleştirdi; taslak açıldığında token dışarı sızdı.
Fastmail üzerinde gösterilen bir başka örnek ise OpenAI’nin Atlas AI tarayıcısını hedef aldı. CSS pseudo-element’leri ve opacity kullanılarak kullanıcıya zararsız metin gösterilirken modelin gizli talimatları okuması sağlandı. Kullanıcı Atlas’tan görünen metni çevirmesini istediğinde, gizli komut tarayıcıya sekmeler açtırdı ve kurbanın adını URL parçasına kodladı. OpenAI, Atlas’ı kullanımdan kaldırma sürecine girdiğini ve hizmetin 9 Ağustos 2026’da durmasının planlandığını açıkladı.
Fastmail tarafında ayrıca “CSS hotwiring” adı verilen bir yönlendirme tekniği tanımlandı. Bu yöntem, tıklamaları istenmeyen ve çok adımlı arayüz eylemlerine çevirebiliyor. Bir başka bulgu da kaçışılmış ters eğik çizgi kullanan bir Fastmail image-proxy atlatması oldu; burada allow-list’te yer alan user.fm alan adı, e-postanın görüntülendiğinin anlaşılmasını sağlıyor.
Heyes, Proton Mail üzerinde de alıcının IP adresini açığa çıkaran ayrı bir vektör gösterdi. Proton’un mevcut takipçi koruması dokümantasyonu, hizmetin kullanıcının kişisel IP adresini ve e-postanın tam açılma zamanını gizlemek için tasarlandığını söylüyor. Araştırmada paylaşılan örneklerin bir kısmı, bu korumaların CSS ve istek yönlendirme katmanında nasıl aşılabildiğini ortaya koyuyor.
Yayınlanan analizde yer alan savunma önerileri, HTML e-postanın sandbox’lı iframe’lerde sıkı biçimde izole edilmesini, CSS doğrulamada karakter allow-list’lerinin kullanılmasını, custom attribute’lara izin verilmeden önce CSS gadget kontrollerinin yapılmasını, select menülerin ve tehlikeli seçicilerin engellenmesini ve saldırganın yönlendirebileceği görüntü istekleriyle allow-list’teki alan adlarının kısıtlanmasını içeriyor. Araştırmanın public repository’sinde de bu tekniklere ait kanıt-kodları yer alıyor.
Fastmail’in iki CSS mutation hatasını düzelttiği, Proton Mail’deki proxy atlatmasının ise yeniden test sırasında artık çalışmadığı aktarıldı. Buna karşılık Outlook’taki label-jacking zinciri ve Gmail’in image-set() atlatması, çalışma yayımlandığında hâlâ kullanılabiliyordu. Yayınlanan metin, tam Outlook parola yakalama zincirinin yamalanıp yamalanmadığını ise açıkça belirtmiyor.
