Windows CLFS arabelleği taşma güvenlik açığı CVE-2024-49138


CVE-2024-49138 olarak tanımlanan yakın zamanda açıklanan Windows çekirdeği düzeyinde bir güvenlik açığı, siber güvenlik topluluğunda önemli güvenlik endişelerini dile getirmiştir.

Windows Ortak Günlük Dosyası Sistemi (CLFS) içinde bir arabellek taşma güvenlik açığından yararlanan araştırmacılar, kusurla ilişkili kritik riskleri sergileyen bir konsept kanıtı (POC) istismarı yayınladılar.

Aralık 2024’te Microsoft tarafından tanımlanan ve yamalanan güvenlik açığı (KB5048685 Yaması), Windows 11 22H2 ve 23H2 sistemlerini etkiler.

Bu yığın tabanlı arabellek taşması, özellikle LoadContainerQ () ve WriteMetadatablock () yöntemlerinde, Windows çekirdek sürücüsü CLFS.SYS ile bağlantılı işlevlerde bulunur.

BLF dosyasının düzeniBLF dosyasının düzeni
BLF dosyasının düzeni

Başarılı bir şekilde sömürülürse, güvenlik açığı saldırganlara Ring 0’da keyfi okuma ve yazma yetenekleri verir ve sonuçta ayrıcalıkları sistem seviyesine yükseltmelerine izin verir.

Jenkins & Jira -> Ücretsiz Web Semineri kullanarak uygulama güvenliğini CI/CD iş akışlarınıza entegre etmek

CVE-2024-49138 Kazanma Nasıl Çalışır?

Ortak Günlük Dosya Sistemi (CLFS), Windows’ta günlük dosyalarını yönetmek için kullanılan yüksek performanslı bir alt sistemdir.

Saldırganlar, meta veri yapılarını (özellikle bellekteki genel meta veri bloğu) manipüle ederek çekirdek korumalarını atlayabilir ve kötü amaçlı işlemler yürütebilir.

CLFS_CONTAINER_CONTEXT Genel Meta Veri Bloğu (IMHEX)CLFS_CONTAINER_CONTEXT Genel Meta Veri Bloğu (IMHEX)

Bu güvenlik açığından yararlanmak, blok kodlama ve kod çözme sırasında bir uyumsuzluğu tetiklemek için özenle hazırlanmış meta veri bloklarını içerir, bu da Huma Nativa Spa’nın bir raporuna göre, pencereler çekirdeğinin yürütme akışını kaçırmak için silahlandırılmış koşulsuz koşullara yol açar.

İstismar zinciri özellikle genel meta veri bloğu içindeki CLFS_CONTAINER_CONTEXT ve CLFS_LOG_BLOCK_HEADER gibi bellek yapılarını hedefler.

Karmaşık manipülasyonlar yoluyla, POC sömürüsü, bu yapıların bütünlüğünü normal olarak koruyacak güvenlik kontrollerini ortadan kaldırır.

İşleme sırasında meta veri bloğu referanslarının işlenmesinden yararlanarak, saldırganlar rasgele kod yürütmek için çekirdek işaretçilerine müdahale edebilirler.

Bir GitHub deposunda halka açık olan POC istismarı, aşağıdaki saldırı adımlarını gösterir:

  1. Başlatma: CLFS güvenlik açığını hedeflemek için kurcalanmış meta veri alanlarıyla kötü amaçlı bir günlük dosyası (.blf) oluşturulur.
  2. Yürütme Kaçak: Güvenlik açığı, Windows çekirdeği .BLF dosyasını işlemeye çalıştığında tetiklenir.
  3. Ayrıcalık yükseltme: Çekirdek erişiminden yararlanan POC, sistem düzeyinde ayrıcalıklara ulaşmak için kurbanın süreç jetonunu manipüle eder.

Bu istismar, saldırganların sistemler üzerinde tam kontrol sahibi olabileceği kurumsal ortamlara yönelik hedefli saldırılar için özellikle tehlikelidir.

İstismardan Anahtar Kod bilgileri

İstismar, meta verileri kurcalamak için aşağıdaki yöntemi kullanır:

typedef struct _CLFS_CONTAINER_CONTEXT {

    CClfsContainer* pContainer;      // Tampered pointer

    CLFS_CONTAINER_STATE eState;    // Set to deliberately fail flush

    ULONG cbPrevOffset;

    ULONG cbNextOffset;

} CLFS_CONTAINER_CONTEXT, *PCLFS_CONTAINER_CONTEXT;

containerContext->pContainer = (CClfsContainer*)0x2100000;

// Fake pointer used for kernel hijack

containerContext->eState = 1; // Force error in FlushImage()

Ayrıca POC, meta veri kurcalama için CRC32 sağlama toplamlarını hesaplamak için bu Python snippet’ini kullanır:

import binascii

def calculate_crc32(file_path):

    with open(file_path, "rb") as f:

        data = f.read()

    checksum = binascii.crc32(data) & 0xFFFFFFFF

    print(f"CRC32: {checksum:08x}")

Aralık 2024’te piyasaya sürülen Microsoft’un yaması (KB5048685), CLFS yöntemleri LoadContainerQ () ve WriteMetAdatablock () ‘daki güvenlik kontrollerini güçlendirerek kusuru ele alıyor.

Güncelleme, yanlış işlenmiş blokların artık çekirdeği bellek yolsuzluğuna maruz bırakmamasını sağlar. Henüz yamayı uygulamayan kullanıcılara ve kuruluşların bunu derhal yapması şiddetle tavsiye edilir.

Ek koruma için kuruluşlar:

  • CLFS API’lerinin anormal kullanımı için günlükleri izleyin.
  • CLF’lerle etkileşime giren süreçler için katı ayrıcalık kısıtlamalarını uygulamak.
  • Olağandışı çekirdek düzeyinde davranışı tanımlamak için uç nokta algılama ve yanıt (EDR) araçlarını kullanın.

CVE-2024-49138 için POC istismarı şimdi halka açık olarak, Windows sistemleri tehdit aktörleri için cazip bir hedef olmaya devam ediyor.

Kuruluşlar, Microsoft’un yamasını uygulayarak ve çekirdek seviyesindeki saldırılara karşı savunmalarını güçlendirerek bu güvenlik açığını ele almak için proaktif bir yaklaşım benimsemelidir.

Collect Threat Intelligence with TI Lookup to improve your company’s security - Get 50 Free Request



Source link