Geri Dön
SourceHut hesap devralma: build log'larındaki ansi2html XSS açığı (CVE-2026-92973)
SiTech AI Team2 წთ. საკითხავი

SourceHut hesap devralma: build log'larındaki ansi2html XSS açığı (CVE-2026-92973)

Bir güvenlik araştırmacısı, SourceHut'un build log'larını HTML'e çevirmek için kullandığı ansi2html kütüphanesinde yayılabilir bir XSS açığı buldu. Açık, ziyaretçinin oturumunda JavaScript çalıştırıp hesabı devralmaya izin veriyordu.

Güvenlik araştırmacısı Arusekk, Eylül 2026'da git depolarını, e-posta listelerini ve sürekli entegrasyonu barındıran SourceHut (sr.ht) platformundaki bir hesap devralma açığını yazdı. Açık CVE-2026-92973 kimliğini aldı ve terminal çıktısındaki ANSI kaçış dizilerini HTML'e çeviren Python kütüphanesi ansi2html'i etkiledi. SourceHut bu kütüphaneyi CI hizmeti builds.sr.ht'de build log'larını göstermek için kullanıyor.

Build log'una metin sokabilen herkes, o günlük sayfasını açan kişinin tarayıcısında rastgele JavaScript çalıştırabiliyordu. Sayfa CSRF token'ını ve oturumun yetkilerini taşıdığı için saldırgan kurban adına hareket edebiliyordu: onun adına build işi gönderiyor ve ana kurulumda SourceHut'un kendi altyapısı için sakladığı deploy anahtarlarına erişebiliyordu.

Hesap devralma nasıl işledi

ansi2html yalnızca renk eklemiyor; otomatik bağlantıları ve OSC 8 hiperbağlantılarını da HTML bağlantılarına dönüştürüyor. Bağlantı adresi href özniteliğine düzgün kaçış yapılmadan yazılıyordu, bu yüzden özel hazırlanmış bir kaçış dizisi öznitelikten çıkıp yenilerini ekleyebiliyordu: autofocus, tabindex ve onfocus gibi.

Diziyi günlüğe sokmak için hesap gerekmiyordu: CI'ı açık bir genel e-posta listesine patch göndermek ya da çıktısı günlüğe düşen herhangi bir dış kaynağı kontrol etmek yeterliydi. Sonuç, çok ziyaret edilen bir sayfada kalıcı bir XSS; üstelik otomatikleştirilebilir: kurban anında sonraki saldırıların kaynağına dönüşüyor.

Düzeltme ve takvim

Araştırmacı sorunu 1 Ağustos 2026'da, ön bir yamayla birlikte SourceHut'un güvenlik e-posta listesine bildirdi. 4 Ağustos'ta Drew DeVault açığı doğruladı ve builds.sr.ht'yi ansi2html çıktısını otomatik temizleyecek şekilde yamaladı. pycontribs/ansi2html projesinde nihai düzeltme 2 Eylül 2026'da 1.9.4 sürümüyle yayımlandı. Etkilenen sürümler ansi2html 1.7.0 ile 1.9.3 arası ve builds.sr.ht 0.40.0 ile 0.105.0 arası.

Maruz kalma süresi uzundu: ansi2html Mart 2019'da builds.sr.ht'ye eklendi, hata projenin kaynak kodunda Eylül 2021'de ortaya çıktı, etkilenen sürüm ise Şubat 2022'de Alpine için paketlenip ana kuruluma geldi. builds.sr.ht neredeyse tam dört buçuk yıl boyunca savunmasız kaldı.

Diğer platformlar için anlamı

Olay, güvenilmeyen build çıktısını HTML olarak göstermenin riskini hatırlatıyor. Araştırmacı üç savunma katmanı öneriyor: Content-Security-Policy'yi sıkılaştırıp 'unsafe-inline'ı kaldırmak; dönüştürücünün çıktısını ek temizlikten geçirmek, ki SourceHut bunu ekledi ama araştırmacıya göre fazla agresif olduğu için renkler kayboldu; ve ayrıştırıcıyı dizge işlemleri yerine durum tutan bir otomat olarak yeniden yazmak.

SSiTech

SiTech — AI destekli web geliştirme

Hızlı ve modern web siteleri kuruyor, AI'yı gerçek iş akışlarına taşıyoruz. Projeniz veya sorunuz mu var? Yardımcı olmaktan mutluluk duyarız.