CVE-2025-8088, WinRAR'ın 7.13 sürümünden önceki sürümlerini etkileyen bir yol geçişi güvenlik açığıdır. Bu güvenlik açığından yararlanılması, özel olarak hazırlanmış bir arşivin, arşiv açma işlemi sırasında dosya adı ve yol doğrulamasını atlatmasına ve saldırganın kontrolündeki içeriğin bir NTFS birimindeki belirli konumlara yazılmasına neden olur. Belirli koşullar altında, bu yazma yeteneği uzaktan kod yürütme amacıyla kullanılabilir.
OPSWAT Burs Programı'nın bursiyerleri, CVE-2025-8088 güvenlik açığına ilişkin teknik bir analiz gerçekleştirdi. RAR5 ve NTFS (ADS) mekanizmalarına yönelik bu analizde elde edilen bulgular, güvenli olmayan yazma işlemlerine yol açan veri çıkarma iş akışını ve ADS işleme yolunu ortaya koymakta ve siber güvenlik uzmanları ile kuruluşlar için pratik önleme ve düzeltme yönergelerini özetlemektedir.

CVE-2025-8088'e Giriş
WinRAR, Windows'ta en çok kullanılan arşivleme araçlarından biridir. ADS (Alternate Data Streams) gibi NTFS'ye özgü meta verilerin korunmasını ve geri yüklenmesini destekler. CVE-2025-8088, belirli WinRAR sürümlerinin ADS işleme mantığında bulunmaktadır. Güvenlik açığı bulunan sürümlerde, kötü amaçlı bir arşiv, açma işlemi sırasında kullanılan akış tanımlayıcısını etkileyebilir; ADS oluşturma iş akışındaki yetersiz yol normalleştirme ve doğrulama işlemleri ise dizin geçişine olanak tanır.
CVE-2025-8088, yüksek önem derecesine sahip bir sorun olarak değerlendirilmektedir. CVSS v4.0 temel puanı 8,4 (Yüksek) olan bu sorun, bir kullanıcının güvenlik açığı bulunan bir WinRAR sürümünü kullanarak özel olarak hazırlanmış bir arşivi açması durumunda, ölçülebilir bir güvenlik etkisinin ortaya çıkma olasılığını yansıtmaktadır.

Teknik Arka Plan
NTFS Alternatif Veri Akışları
NTFS (New Technology File System) is the default filesystem for modern versions of Windows. Compared to FAT-based filesystems, NTFS supports advanced capabilities including ACLs (access control lists), EFS encryption, compression, hard links, reparse points (junctions and symlinks), and ADS.
ADS is an NTFS feature that allows a single file or directory to contain multiple independent streams of data. The primary, user-visible content is stored in the unnamed default stream, commonly represented as ::$DATA, while additional named streams can be accessed using the syntax:
dosyaadı.uzantı:akışadı
These named streams are not normally visible in standard Windows Explorer views, but they are fully supported by the filesystem and can be enumerated using supported tooling. For instance, dir /R can display alternate streams.
WinRAR supports extracting archive entries that include ADS syntax. When such entries exist within an archive, WinRAR writes the corresponding content into the target file’s alternate stream during extraction.

RAR5 Dosya Yapısını Anlamak
RAR5 arşivleri bir dizi blok halinde depolanır. Her blok, blok türünü ve boyut bilgilerini tanımlayan bir başlıkla başlar. İsteğe bağlı olarak, ek bir meta veri alanı ve sıkıştırılmış içerik gibi yük baytlarından oluşan bir veri alanı içerebilir.
Blok = Başlık + (isteğe bağlı Ek Alan) + (isteğe bağlı Veri Alanı)
RAR5, çeşitli blok türleri kullanır. CVE'de yer alan ilgili blok türleri şunlardır:
- Dosya başlığı (tip 2): Arşivdeki bir dosya girişini tanımlar (ad/yol, öznitelikler, zaman damgaları, sıkıştırma parametreleri) ve ardından dosyanın veri kısmı gelir
- Hizmet başlığı (tip 3): Arşivle veya belirli bir dosya girdisiyle ilişkili ek meta verileri (örneğin ADS) depolayan isteğe bağlı ek başlıklar
NTFS dosya sistemindeki ADS’ler, STM olarak adlandırılan bir Hizmet başlığı (tip 3) ile temsil edilir. Hizmet başlığının veri alanı, temel dosya girdisine ait ADS akış baytlarını içerir.
Basitçe söylemek gerekirse:

Teknik analiz (CVE-2025-8088)
RAR5 Dosyalarını Çıkarma Süreci
WinRAR processes RAR5 archives as a sequence of blocks. During extraction, it iterates over these blocks, parses each block header, and validates header integrity using the embedded CRC32 before continuing. After a file entry is processed, WinRAR decompresses and writes the base file content to the disk, then determines whether additional NTFS-related metadata must be applied via associated service records. When an ADS (Alternate Data Stream) record is present, such as an STM service entry, WinRAR enters the ADS-handling path, combines the base file path with the stream name to form the ADS target, and creates the stream.

CVE-2025-8088'de temel sorun, ADS akışının oluşturulması sırasında arşiv tarafından yönetilen meta verilerden türetilen bir yol kullanılarak Windows API () işlevinin çağrılmasıdır; bu durum, ADS yolunun oluşturulması ve doğrulanmasının dizin gezintisini önlemek için yetersiz kalmasına neden olmaktadır.
ADS (“STM”) kod yolunun belirlenmesi
Yüksek lisans bursiyerlerimiz, WinRAR 7.12 kullanarak kontrollü bir laboratuvar ortamında statik ve dinamik analizleri bir arada gerçekleştirdiler. İkili dosyada “STM” hizmet işaretçisini arayarak ADS ile ilgili mantığı tespit ettiler ve ardından çalışma zamanında veri çıkarma tarafındaki kod yolunu doğruladılar.

ADS verilerini içeren bir arşivin çıkarılması sırasında karşılaşılan “STM” referansına bir durma noktası yerleştirildiğinde, bu durma noktası her seferinde tetiklendi; bu da bu yürütme yolunun normal çıkarma iş akışı sırasında çağrıldığını doğruladı.

Kesme noktasına ulaşıldığında, hata ayıklayıcının çağrı yığını kullanılarak WinRAR kullanıcı arayüzündeki “Çıkar” eyleminin ardından çağrılan işlevlerin sırası yeniden oluşturuldu ve böylece sonraki blok işleme ve ADS yürütme yolu için net bir referans noktası belirlendi.

Başlık Ayrıştırma ve CRC32 Doğrulama
WinRAR, her bir RAR5 bloğunu blok başlığını okuyarak, bütünlük alanlarını doğrulayarak ve bloğun türüne özgü bir işleyiciye yönlendirerek işler. Blok işleme giriş noktası ve ilgili başlık ayrıştırma mantığı Şekil 6-10’da gösterilmiştir; burada WinRAR, dosya işaretçisini geçerli blok ofsetine ayarlar, başlık türü ve boyutunu içeren ilk başlık baytlarını okur ve devam etmeden önce CRC32 kullanarak başlık bütünlüğünü doğrular.
Doğrulama işlemi başarıyla tamamlandıktan sonra, bayraklar, açılmış boyut, sıkıştırma yöntemi ve isteğe bağlı sağlama toplamları gibi ek başlık alanlarını ayrıştırır. Ardından, blok gövdesini işler.



Tersine mühendislik çalışması sırasında, CRC32 rutininin standart bir zlib tarzı CRC32 uygulamasına uygun şekilde çalıştığı gözlemlenmiştir. Pratikte bu CRC32 kontrolü, bir bütünlük kontrolü işlevi görür. Başlık alanlarında değişiklik yapıldığında, WinRAR'ın başlığı kabul edip işleme devam etmesini sağlamak için gömülü CRC32'nin güncellenmesi gerekir.

CRC32 başlığını doğruladıktan sonra, ayrıştırıcı açılmış boyut, sıkıştırma yöntemi ve diğer özellikler gibi kalan başlık bilgilerini çıkararak işleme devam eder.

Başlık ayrıştırma ve doğrulama işlemleri tamamlandıktan sonra, WinRAR ayrıştırılan başlık türüne ve bayraklarına göre blok gövdesini işler.

CVE-2025-8088 güvenlik açığında, WinRAR'ın ADS kayıtlarını işleyen Hizmet bloğu işleyicisine verileri iletmeden önce başlık bütünlüğü doğrulaması uygulanmaktadır.
Hizmet bloğu (“STM”) aracılığıyla ADS oluşturma
WinRAR bir Hizmet bloğuyla karşılaştığında ADS işleme yoluna geçilir. Hizmet blokları, blok türü değeri 3’ü kullanır. Bir Hizmet bloğu tespit edildiğinde, WinRAR bunu bir hizmet başlığı işleyicisine yönlendirir.

Hizmet işleyicisi içinde WinRAR, hizmet adını kontrol eder. Hizmet adı “STM” ile eşleştiğinde, kayıt bir ADS yükü olarak değerlendirilir ve uygulama bir ADS oluşturma rutinine geçer.

WinRAR daha sonra hizmet kaydından akış adını alır ve bunu temel dosya yoluyla birleştirerek nihai ADS hedefini oluşturur. 7.13 sürümünden önceki sürümlerde yapılan analiz, akış adının yeterince temizlenmediğini ve bu durumun, geçiş dizilerinin ortaya çıkan hedef yolun çözümlenmesini etkilemesine yol açtığını göstermektedir.


Hedef oluşturulduktan sonra WinRAR, Windows CreateFileW API çağıran bir yardımcı yordam aracılığıyla akışı oluşturur ve ardından WriteFile işlevini kullanarak ADS baytlarını yazar. Çözülen yol, kullanıcının seçtiği açma dizininin dışında ise WinRAR, hedef akışı/dosyayı oluşturur ve bunu saldırganın kontrolündeki içerikle doldurur.




Özetle, ADS çıkarma iş akışı iki güvenlikle ilgili sorunu ortaya koymaktadır. İlk olarak, ADS akış adı yeterince temizlenmemektedir; bu da geçiş dizilerinin sonuçta ortaya çıkan hedef yolu etkilemesine olanak tanımaktadır. İkinci olarak, WinRAR, arşiv tarafından kontrol edilen meta verilerden türetilen bir yol ile CreateFileW() işlevini çağırarak ADS akışını oluşturmaktadır.
Bu koşullar bir araya geldiğinde, özel olarak hazırlanmış bir arşiv, CreateFileW() işlevinin hedefini amaçlanan açma dizininden başka bir yere yönlendirebilir ve saldırganın kontrolündeki içeriği saldırganın etkisindeki bir konuma yazabilir. Hedef, kalıcılıkla ilgili bir dizinse (örneğin, kullanıcının Başlangıç klasörü), bu yazma işlemi, yükün türüne ve sistem yapılandırmasına bağlı olarak, bir sonraki oturum açma veya yeniden başlatma sırasında kod yürütülmesini sağlayabilir.
Saldırı Senaryosu
CVE-2025-8088, bir saldırganın kullanıcıyı, güvenlik açığı bulunan bir WinRAR sürümünü kullanarak özel olarak hazırlanmış bir RAR arşivini açmaya ikna ettiği senaryolarda pratik olarak istismar edilebilir. Tipik bir saldırı yöntemi, kurbanın kötü amaçlı bir arşive güvenmesini ve kritik bir sistemde arşivin açılmasını başlatmasını sağlayan oltalama gibi sosyal mühendislik teknikleridir.
Arşiv, bir ADS (“STM”) hizmet kaydı içerir. Akış adı, çapraz erişim mantığını sağlayacak şekilde oluşturulmuştur. NTFS üzerinde açma işlemi sırasında WinRAR, ADS kaydını işler ve hedef akış yolunu arşivin kontrolündeki meta verilerden türetir. Bu ADS yol oluşturma işlemi yeterince kısıtlanmadığından, belirlenen hedef, kullanıcının seçtiği açma dizininin dışına düşebilir; bu durum, kullanıcının başlangıç klasörü gibi kritik konumları da kapsayabilir.

Kavram Kanıtı
To demonstrate CVE-2025-8088, our graduate fellows prepared a crafted RAR archive file containing an ADS (“STM”) service record with attacker-controlled fields. This archive is structured with an ADS stream name that includes traversal sequences. This structure influences the final target location during ADS handling, including the path passed to CreateFileW() when the stream is created. To ensure that WinRAR accepts the modified metadata and reaches the ADS-processing path, the relevant header CRC32 values are recomputed so the archive passes header integrity validation.

Güvenlik açığı bulunan bir WinRAR sürümü, özel olarak hazırlanmış arşivin açılması sırasında ADS işleme rutinine girdiğinde, saldırganın kontrolündeki içeriği kullanıcının seçtiği açma dizini yerine önceden belirlenmiş hedefe yazar. Açma işlemi tamamlandıktan sonra, yükün çalıştırılması, yükün biçimine ve önceden belirlenmiş hedefin çalıştırma özelliklerine bağlı olarak gerçekleşir. Örneğin, bir sonraki oturum açma veya sistem yeniden başlatma sırasında içeriği çalıştırabilecek konumlar.

İyileştirme
CVE-2025-8088 güvenlik açığının riski, yönetilen tüm uç noktalarda WinRAR'ı yamalı bir sürüme (7.13 veya üstü) güncelleyerek azaltılabilir. Zamanında güncelleme yapılamıyorsa, aşağıdakiler gibi telafi edici önlemler değerlendirilmelidir:
- Gerekli olmadığında arşivleme araçlarında ADS korumasını sınırlandırma veya devre dışı bırakma
- Güvenilmeyen arşivlerin çıkarılmasını izole ortamlarla sınırlandırma
- En az ayrıcalık ilkesinin uygulanması (yükseltilmiş haklarla veri çıkarma araçlarının çalıştırılmasından kaçınılması)
- Başlangıç konumları gibi kritik dizinleri, arşiv açma iş akışlarından kaynaklanan beklenmedik yazma işlemleri açısından izleme
vulnerability detection erken vulnerability detection kapsamlı bir şekilde vulnerability detection hızlı bir şekilde giderilmesi için MetaDefender , güvenlik açığı bulunan WinRAR sürümlerini çalıştıran cihazları tespit ederek ve gerekli güncellemeleri öne çıkararak acil düzeltme işlemlerini destekler. 1100'den fazla uygulamayı destekleyen sağlam güvenlik açığı ve yama yönetimi özellikleri, yamalanmamış veya güncel olmayan işletim sistemleri ile üçüncü taraf uygulamaları çalıştıran uç cihazları proaktif olarak tespit eder ve önerilen düzeltmeleri sunar.
Vulnerability Management , yöneticilerin güvenlik açıklarını hızla tespit etmelerine, düzeltme işlemlerini öncelik sırasına koymalarına ve yamalı sürüme geçişi sağlamalarına olanak tanıyarak, CVE-2025-8088 gibi arşiv tabanlı dosya yazma saldırıları ve benzer uç nokta tabanlı tehditlerin riskini azaltır.

