Record’un boyut alanı ile Windows Yığın Sömürü Güvenlik Açığı Rasgele R/W’ya yol açar


Windows Yığın Sömürü Güvenlik Açığı

Windows yığın yönetiminde kritik bir güvenlik açığı, kayıt boyutu alanlarının uygunsuz ele alınmasının keyfi bellek okuma ve yazma işlemlerini nasıl mümkün kıldığını göstermektedir.

Suraj Malhotra, Windows sistemlerinde kod yürütme elde etmek için düşük parçalanma yığın (LFH) mekanizmasından yararlanan ayrıntılı bir sömürü tekniği paylaştı.

Windows Yığın Sömürü Güvenlik Açığı

Windows NT yığını ön uç ve arka uç tahsisatçılarından çalışır. Ön uç tahsisatçı, LFH kullanarak 16KB altında küçük tahsisleri yönetirken, arka uç daha büyük istekleri kullanır.

LFH aktivasyonu, benzer boyutlarda 18 müteakip tahsis gerektirir ve saldırganlar tarafından kullanılabilir öngörülebilir bellek düzenleri oluşturur. Güvenlik açığı, HeapCreate () işlevleri aracılığıyla oluşturulan özel yığınları kullanarak uygulamalarda kendini gösterir.

Bu ortamlar, GetProcessHeap () aracılığıyla erişilen varsayılan işlem yığınlarına kıyasla daha az güvenlik azaltımı sunar. Temel güvenlik açığı, yeni verileri okurken uygulamaların önceki kayıt boyutlarını yeniden kullandığı kayıt güncelleme işlevselliğinde mevcuttur:

Windows Yığın Sömürü Güvenlik Açığı

Sömürü, tekrarlanan tahsisler yoluyla LFH’yi etkinleştirerek, ardından kontrollü bellek düzenleri oluşturarak başlar.

google

Saldırganlar, güncellemeler sırasında değişmeden kalan hedef-> boyut alanını manipüle ederek yeni veriler tahsis edilen sınırları aştığında yığın taşma koşullarını sağlar.

Suraj Malhotra, LFH aktivasyonu yoluyla kullanıcı bloklarını doldurarak, kayıt kaldırma yoluyla bellek delikleri oluşturarak ve hazırlanmış veri yapılarıyla parçaları yeniden kullanarak keyfi okuma özellikleri gösterir.

Keyfi okuma özellikleri
Keyfi okuma özellikleri

Bu yaklaşım, yığın taban adresleri, NTDLL taban konumları ve proses ortam bloğu (PEB) yapıları dahil olmak üzere hassas bellek bölgelerinin okunmasını sağlar.

Keyfi yazma ilkelleri için, saldırganlar serbest parçalarda flink ve yanıp sönen işaretçiler içeren Windows yığın yapılarından yararlanırlar.

Sahte parçalar oluşturarak ve freelist işaretçileri manipüle ederek, araştırmacılar kontrollü _base, _file, _flag ve _bufSiz alanlarına sahip hazırlanmış dosya nesnelerini içeren dosya yapısı sömürüsü elde ettiler.

Keyfi yazma ilkelleri
Keyfi yazma ilkelleri

Dosya yapısı kullanımı, doğrulama kontrollerini atlamak için _iobuffer_user (0x0080) ve _ioallocated (0x2000) dahil olmak üzere belirli bayrak kombinasyonlarını gerektirir.

_Base’yi hedef bellek adreslerine ayarlamak ve Stdin’e _file, kontrollü konumlara keyfi veri yazmayı sağlar.

Nihai sömürü, kabuk kodunu yüklemek ve yürütmek için Windows API’leri kullanan Windows API’leri kullanan iade odaklı programlama (ROP) zincirlerinin oluşturulmasını içerir.

Windows Yığın Sömürü Güvenlik Açığı

Teknik, NTDLL’de ROP gadget’larını kullanarak RCX, RDX, R8 ve R9 kayıtlarından argümanları aktararak Microsoft X64 çağrı toplantısından yararlanır.

HITCON 2019’un “Dadadb” mücadelesi ile gösterilen bu güvenlik açığı analizi, uygun yığın yönetimi ve boyut doğrulamasının sürekli önemini vurgulamaktadır.

Kuruluşlar sağlam giriş doğrulaması uygulamalı, modern yığın uygulamaları kullanmalı ve pencereler yığın iç kısımlarını hedefleyen sofistike sömürü tekniklerini azaltmak için kapsamlı bellek koruma mekanizmaları kullanmalıdır.

Günlük siber güvenlik güncellemeleri için bizi Google News, LinkedIn ve X’te takip edin. Hikayelerinizi öne çıkarmak için bizimle iletişime geçin.

GoogleNews



Source link