Blog'a Dön

CVE-2025-51591: Pandoc, SSRF ve AWS Metadata Kimlik Bilgisi Hırsızlığı

Öne Çıkan Özet

Belge dönüştürme açığı, arkasında metadata erişimi ve aşırı yetkili IAM rolü varsa bulut komprome hikâyesine dönüşür.

CVE-2025-51591PandocAWS EC2IAM Credentials

Görsel Yön

Güvensiz belge içeriğinden AWS metadata erişimine ve oradan çalınan geçici IAM bilgilerine uzanan SSRF zinciri.

Yönetici Özeti

CVE-2025-51591, bulut bağlamındaki zafiyetlerin izole uygulama hataları değil uçtan uca saldırı yolları olarak analiz edilmesi gerektiğini gösteren öğretici bir örnektir. Sorun, Pandoc'un belge işleme pipeline'ındaki sunucu tarafı istek sahteciliği (Server-Side Request Forgery — SSRF) sınıfı bir davranış üzerinde yoğunlaşıyordu; güvenilmeyen girdi içeriği, sunucu tarafındaki renderer'ın saldırgan tarafından belirtilen hedeflere HTTP istekleri göndermesine neden olabiliyordu. Bir bulut ortamında—özellikle AWS EC2'de—iş yükünün ağ bağlamı instance metadata servisine erişime izin veriyorsa bu davranış hızla tehlikeli hale gelir.

Bu yol mevcut olduğunda “belge dönüştürme hatası” tanımı artık yeterli değildir. Doğru çerçeveleme “uygulama katmanı SSRF ile bulut kimlik maruziyetinin birleşimi”dir; bu kombinasyon tek bir exploit zincirinde paket düzeyinde bir bulgudan ortam genelinde kimlik bilgisi erişimine yükselebilir.

Belge Dönüştürme İş Akışları Neden Göründüğünden Fazla Risk Taşır?

Pandoc gibi araçlar pek çok mühendislik ve içerik pipeline'ında aldatıcı biçimde güvenilir bir konumda yer alır. Belirtilen işlevleri—Markdown, HTML, LaTeX ve PDF gibi belge formatları arasında dönüştürme—salt işlevsel görünür. Ancak bu işlevselin arkasındaki yürütme modeli karmaşıktır. Render sırasında bu dönüştürücüler rutin olarak dış referansları çözümlüyor, gömülü kaynakları getiriyor, dahil etme direktiflerini işliyor ve uzak içeriği birinci sınıf girdi olarak yönetiyordur.

Bu dış fetch davranışı uygulama veya ağ katmanında açıkça kısıtlanmadığında, saldırgan converter'ın dış içeriğe duyduğu güveni dahili bir istek motoruna dönüştürebilir; bu motor sunucu sürecinin tam ağ ayrıcalıklarıyla çalışır.

SSRF'den IMDS'ye Exploit Zinciri

AWS'de instance metadata servisi, yalnızca instance içinden erişilebilen bağlantı-yerel 169.254.169.254 adresinde bulunur. Bu adres tabanlı erişim kontrolü, SSRF'yi bulut ortamlarında bu denli operasyonel açıdan tehlikeli kılan şeydir: saldırganın internetten metadata servisine doğrudan yolu yoktur, ancak instance üzerinde çalışan zafiyetli uygulamanın vardır.

Zararlı bir belge, metadata uç noktasını işaret eden crafted bir referans içerebilir—görüntü kaynağı, dahil etme direktifi veya başka bir getirilebilir nesne olarak biçimlendirilmiş. Converter belge oluşturma sırasında bu referansı çözümlediğinde, sunucu tarafı süreç saldırgan adına AWS instance metadata uç noktasına HTTP isteği gönderir.

Ortaya çıkan exploit zinciri temiz ve tekrarlanabilirdir:

saldırgan dönüştürülmek üzere özel hazırlanmış belge içeriği gönderir.

renderer, belge oluşturma sırasında gömülü dış referansı çözümler.

sunucu tarafı süreç dahili olarak AWS instance metadata uç noktasını getirir.

IAM kimlik bilgisi materyali dahil metadata yanıtı, çıktı aracılığıyla yansıtılır, günlüklere gömülür veya başka biçimde saldırgana sızdırılır.

Bu ders kitabı SSRF mantığıdır. Onu ilgi çekici bir uygulama hatasından operasyonel açıdan ciddi bir bulut olayına yükselten şey, metadata yolunun diğer ucundaki IAM kimlik bilgisi materyalidir.

Geçici IAM Kimlik Bilgileri Neden Anlamlı Bir Güvence Değildir?

Saldırgan EC2 instance metadata servisindeki IAM kimlik bilgileri uç noktasına ulaştığında yanıt, geçici erişim materyali içerir: bir AccessKeyId, bir SecretAccessKey ve bir oturum token'ı. Bu kimlik bilgileri, instance'ın rol yenileme döngüsüyle sınırlıdır; ancak kısalık zararsızlık anlamına gelmez.

Instance rolü aşırı yetkili ise—ki üretim bulut ortamlarında rahatsız edici biçimde yaygındır—kısa ömürlü kimlik bilgileri bile S3 paketlerine okuma erişimi, AWS Secrets Manager veya Parameter Store'daki secretlara, veritabanı bağlantı dizelerine, dahili servis uç noktalarına, SQS kuyruklarına ve bulut yönetim API'lerine erişim sağlayabilir. Kimlik bilgileri sona ermeden önce veri sızdırma, pivot eylemleri veya kalıcılık kurma için zaman penceresi çoğunlukla yeterlidir.

Bulut olay incelemelerinde patlama yarıçapı neredeyse tamamen iş yüküne bağlı IAM rolüyle belirlenir; SSRF mekanizmasının kendisiyle değil.

IAM Rol Tasarımı Gerçek Etkiyi Nasıl Belirler?

Aynı temel zafiyet, etkilenen EC2 instance'ına bağlı IAM rolüne bağlı olarak dramatik biçimde farklı operasyonel etki üretir. Dar kapsamlı izinlere sahip en az ayrıcalıklı bir rol, kötüye kullanımı dar bir hizmet kümesiyle sınırlayabilir. Zamanla organik biçimde izin biriktirmiş ya da “kolaylık sağlansın” gerekçesiyle geniş erişim verilmiş aşırı yetkili bir rol ise özdeş zafiyeti ortam genelinde veri erişimi ve yanal hareket kapasitesine dönüştürebilir.

Bu, bulut zafiyet analizini geleneksel yerinde değerlendirmeden ayıran temel kavrayıştır. Risk yalnızca uygulama kodunda yaşamaz. Kod yolu, metadata erişim sınırı ve IAM izin modelinin kesişiminde yaşar. Gerçek maruziyeti anlamak için üçünün birlikte değerlendirilmesi gerekir.

Savunma Hafifletmeleri

Kapsamlı bir savunma yanıtı sorunu birden fazla katmanda ele alır:

tüm EC2 instance'larında token tabanlı IMDSv2 erişimini zorunlu kılmak; IMDSv1, SSRF koşullarında çok daha kolay sömürülüyor.

en az ayrıcalık ilkesini tüm instance IAM rollerine uygulamak ve spesifik iş yükünün gerektirmediği izinleri kaldırmak.

belge dönüştürme hizmetlerindeki dış fetch davranışını hem uygulama yapılandırması düzeyinde hem de ağ çıkış kontrolleriyle kısıtlamak.

belge işleme hizmetlerini arka plan yardımcı araçlar değil güven sınırı bileşenleri olarak ele almak ve uygun ağ segmentasyonu uygulamak.

dönüştürme iş yüklerinden beklenmedik dış bağlantıları günlüğe kaydetmek ve uyarmak.

CVSS Vektörü ve Etkilenen Bileşenler

CVE-2025-51591, CVSS 3.1 puanlamasında 8.8 (Yüksek) değeri aldı:

~~~

CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:N

~~~

Değişmiş kapsam (S:C), sömürünün zafiyetli Pandoc sürecinin ötesine geçtiğini yansıtır — AWS IAM kimlik bilgisi erişimi yalnızca yerel uygulamayı değil, daha geniş bulut ortamını etkiler.

| Bileşen | Etkilenen Sürümler | Düzeltme |

|---|---|---|

| Pandoc | Render sırasında kısıtlanmamış dış URL getirişine izin veren sürümler | Yükseltme + --sandbox veya ağ çıkış kısıtlamaları |

| AWS EC2 (IMDSv1) | IMDSv1 etkin herhangi bir instance | IMDSv2'yi etkinleştirin (--http-tokens required) |

| AWS IAM Rolleri | Aşırı yetkili herhangi bir instance rolü | En az ayrıcalık; izinleri belirli kaynak ve eylemlere sınırlandırın |

Tespit Sinyalleri

~~~yaml

title: Belge Dönüştürücü Üzerinden AWS IMDS'ye SSRF Girişimi Tespiti (CVE-2025-51591)

status: experimental

description: Belge işleme servisinden AWS metadata IP'sine HTTP isteklerini tespit eder

detection:

condition: selection

selection:

dst_ip: '169.254.169.254'

process_name|contains:

'pandoc'.

'wkhtmltopdf'.

'headless'.

logsource:

category: network_connection

product: linux

~~~

Ayrıca belge dönüştürme iş yükleriyle ilişkili EC2 instance rollerinden gelen GetSecretValue, ListBuckets veya AssumeRole çağrıları için AWS CloudTrail'i izleyin — bunlar başarılı SSRF sonrasında IAM kimlik bilgisi kötüye kullanımına işaret edebilir.

MyVuln Yaklaşımı

MyVuln, CVE-2025-51591'i yalnızca belge dönüştürme yardımcı aracına karşı bir SSRF bulgusu olarak değil, çok boyutlu analiz gerektiren bağlamsal bir bulut riski olarak sunmalıdır. MyVuln'ün Cloud Risk Correlation modülü bağımlılık zekasını, instance metadata maruziyetini ve bağlı IAM ayrıcalığını tek tutarlı bir risk değerlendirmesinde birleştirir; güvenlik ekiplerinin “Pandoc paket uyarısı”ndan önceliklendirilmiş bulut kimliği tehlike yoluna geçişini hızlandırır. Üstelik IMDSv2 zorunlu kılma durumu ve IAM rol izin genişliği gibi bulut yapılandırma sinyallerini de aynı görünümde sunar.

CVE-2025-51591PandocAWS EC2IAM CredentialsSSRFIMDSmyvuln

MyVuln Araştırma Ekibi

Siber güvenlik istihbaratı ve zafiyet araştırmaları.