Microsoft Windows Sistemi 0day Açığı Analizi: Web3 Ekosistemine Önemli Etkiler Yapabilir
Geçen ayki Microsoft güvenlik yamanmasında, kötüye kullanım için bir win32k yetki yükseltme açığı bulundu. Bu açığın Windows 11 sistem versiyonunda tetiklenemediği, yalnızca daha erken sistemlerde mevcut olduğu görülüyor. Bu makalede, mevcut yeni hafifletme önlemlerinin sürekli iyileştirilmesi bağlamında, saldırganların bu açığı nasıl kullanmaya devam edebileceği analiz edilecektir. Analiz süreci Windows Server 2016 ortamında tamamlanmıştır.
0day açığı, ifşa edilmemiş ve düzeltilmemiş bir güvenlik açığıdır; bu, saldırganlar tarafından fark edilmeden kötüye kullanılabilir ve genellikle büyük yıkıcılığa sahip olur. Bu tespit edilen 0day açığı, Windows sistem düzeyinde bulunmaktadır; hackerlar bu açığı kullanarak Windows'un tam kontrolünü ele geçirebilir. Bu, kişisel bilgilerin çalınması, sistem çökmesi, veri kaybı, mali kayıplar, kötü amaçlı yazılım yerleştirilmesi gibi sonuçlar doğurabilir. Web3 perspektifinden bakıldığında, kullanıcıların özel anahtarları çalınabilir ve dijital varlıklar transfer edilebilir. Daha geniş bir ölçekte, bu açık Web2 altyapısı üzerinde çalışan tüm Web3 ekosistemini bile etkileyebilir.
Yaman yaman yaman, bir nesnenin referans sayısının bir kez daha işlenmesiyle ilgili bir sorun olduğu tespit edildi. Erken kaynak kodu yorumları, önceki kodun yalnızca pencere nesnesini kilitlediğini, pencere nesnesindeki menü nesnesini kilitlemediğini gösteriyor; burada menü nesnesi yanlış bir şekilde referans alınmış olabilir.
Açıkların doğrulanması için bir kavramsal doğrulama (PoC) gerçekleştirdik. Özel çok katmanlı iç içe menüler oluşturarak xxxEnableMenuItem fonksiyonunda açık tetiklenebilir. Anahtar, menü C ve menü B'nin referans ilişkisini uygun bir zamanda kaldırmaktır, böylece menü C nesnesi başarıyla serbest bırakılır. Bu şekilde, xxxEnableMenuItem fonksiyonu dönerken, referans alınan menü C nesnesi geçersiz hale gelmiştir.
(Exp)'yi gerçekleştirirken, iki ana seçeneği dikkate aldık: shellcode kodunu çalıştırmak ve token adresini değiştirmek için okuma/yazma ilkelere başvurmak. Nihayetinde, son iki yılda hala referans alabileceğimiz açık exp'ler mevcut olduğu için ikinci seçeneği tercih ettik. Tüm istismar süreci iki adımdan oluşmaktadır: öncelikle UAF açığını kullanarak cbwndextra'nın değerini kontrol etmek, ardından stabil bir okuma/yazma ilkesini kurmak.
Hedef nesne üzerinde hassas kontrol sağlamak için dikkatlice tasarlanmış bellek düzenini kullanabiliriz. GetMenuBarInfo() ve SetClassLongPtr() fonksiyonlarını kullanarak sırasıyla rasgele okuma ve rasgele yazma işlemlerini gerçekleştirebiliriz. TOKEN'ın yazma işlemini ikinci pencerenin sınıf nesnesine bağlanması dışında, diğer yazma işlemleri birinci pencere nesnesinin sınıf nesnesini kullanarak offset ile yazma yapmaktadır.
https://img-cdn.gateio.im/webp-social/moments-697c5814db02534f63b44c0d1d692f83.webp(
Genel olarak, win32k açığının uzun bir geçmişi olmasına rağmen, Microsoft bu bölümün çekirdek kodunu Rust ile yeniden yapılandırmaya çalışıyor. Gelecekteki yeni sistemlerde bu tür açıkların önüne geçilebilir. Şu anda bu tür açıkların istismar süreci oldukça zor değil, esasen masaüstü yığın işaretçi adresinin sızdırılmasına dayanıyor. Eski sistemler için bu, hâlâ bir güvenlik açığı oluşturuyor.
![Numen Özel: Microsoft 0day açığı, Web3 oyununun sistem ve fiziksel katmanını alt üst edebilir])https://img-cdn.gateio.im/webp-social/moments-b0942592135ac96c6279544a62022329.webp(
Açıkların tespiti açısından daha kapsamlı bir kod kapsama testi, bu tür açıkların bulunmasına yardımcı olabilir. Açıkların istismarının tespiti için, yalnızca açıkları tetikleyen fonksiyonların kritik noktalarına odaklanmakla kalmayıp, ayrıca bellek düzenindeki anormallikler ve pencere türündeki ek verilerin anormal kaydırılarak okunması ve yazılması gibi hedefe yönelik testler de yapılmalıdır; bu, benzer türde açıkların tespit edilmesinin etkili yollarından biri olabilir.
![Numen özel: Microsoft 0day açığı, Web3 oyununun sistem ve fiziksel katmanını alt üst edebilir])https://img-cdn.gateio.im/webp-social/moments-b06b098af4f07260fdc03a75da160706.webp(
View Original
This page may contain third-party content, which is provided for information purposes only (not representations/warranties) and should not be considered as an endorsement of its views by Gate, nor as financial or professional advice. See Disclaimer for details.
Windows 0day açığı Web3 güvenliğini tehdit ediyor, Özel Anahtar çalma riski yükseliyor
Microsoft Windows Sistemi 0day Açığı Analizi: Web3 Ekosistemine Önemli Etkiler Yapabilir
Geçen ayki Microsoft güvenlik yamanmasında, kötüye kullanım için bir win32k yetki yükseltme açığı bulundu. Bu açığın Windows 11 sistem versiyonunda tetiklenemediği, yalnızca daha erken sistemlerde mevcut olduğu görülüyor. Bu makalede, mevcut yeni hafifletme önlemlerinin sürekli iyileştirilmesi bağlamında, saldırganların bu açığı nasıl kullanmaya devam edebileceği analiz edilecektir. Analiz süreci Windows Server 2016 ortamında tamamlanmıştır.
0day açığı, ifşa edilmemiş ve düzeltilmemiş bir güvenlik açığıdır; bu, saldırganlar tarafından fark edilmeden kötüye kullanılabilir ve genellikle büyük yıkıcılığa sahip olur. Bu tespit edilen 0day açığı, Windows sistem düzeyinde bulunmaktadır; hackerlar bu açığı kullanarak Windows'un tam kontrolünü ele geçirebilir. Bu, kişisel bilgilerin çalınması, sistem çökmesi, veri kaybı, mali kayıplar, kötü amaçlı yazılım yerleştirilmesi gibi sonuçlar doğurabilir. Web3 perspektifinden bakıldığında, kullanıcıların özel anahtarları çalınabilir ve dijital varlıklar transfer edilebilir. Daha geniş bir ölçekte, bu açık Web2 altyapısı üzerinde çalışan tüm Web3 ekosistemini bile etkileyebilir.
Yaman yaman yaman, bir nesnenin referans sayısının bir kez daha işlenmesiyle ilgili bir sorun olduğu tespit edildi. Erken kaynak kodu yorumları, önceki kodun yalnızca pencere nesnesini kilitlediğini, pencere nesnesindeki menü nesnesini kilitlemediğini gösteriyor; burada menü nesnesi yanlış bir şekilde referans alınmış olabilir.
Açıkların doğrulanması için bir kavramsal doğrulama (PoC) gerçekleştirdik. Özel çok katmanlı iç içe menüler oluşturarak xxxEnableMenuItem fonksiyonunda açık tetiklenebilir. Anahtar, menü C ve menü B'nin referans ilişkisini uygun bir zamanda kaldırmaktır, böylece menü C nesnesi başarıyla serbest bırakılır. Bu şekilde, xxxEnableMenuItem fonksiyonu dönerken, referans alınan menü C nesnesi geçersiz hale gelmiştir.
(Exp)'yi gerçekleştirirken, iki ana seçeneği dikkate aldık: shellcode kodunu çalıştırmak ve token adresini değiştirmek için okuma/yazma ilkelere başvurmak. Nihayetinde, son iki yılda hala referans alabileceğimiz açık exp'ler mevcut olduğu için ikinci seçeneği tercih ettik. Tüm istismar süreci iki adımdan oluşmaktadır: öncelikle UAF açığını kullanarak cbwndextra'nın değerini kontrol etmek, ardından stabil bir okuma/yazma ilkesini kurmak.
Hedef nesne üzerinde hassas kontrol sağlamak için dikkatlice tasarlanmış bellek düzenini kullanabiliriz. GetMenuBarInfo() ve SetClassLongPtr() fonksiyonlarını kullanarak sırasıyla rasgele okuma ve rasgele yazma işlemlerini gerçekleştirebiliriz. TOKEN'ın yazma işlemini ikinci pencerenin sınıf nesnesine bağlanması dışında, diğer yazma işlemleri birinci pencere nesnesinin sınıf nesnesini kullanarak offset ile yazma yapmaktadır.
https://img-cdn.gateio.im/webp-social/moments-697c5814db02534f63b44c0d1d692f83.webp(
Genel olarak, win32k açığının uzun bir geçmişi olmasına rağmen, Microsoft bu bölümün çekirdek kodunu Rust ile yeniden yapılandırmaya çalışıyor. Gelecekteki yeni sistemlerde bu tür açıkların önüne geçilebilir. Şu anda bu tür açıkların istismar süreci oldukça zor değil, esasen masaüstü yığın işaretçi adresinin sızdırılmasına dayanıyor. Eski sistemler için bu, hâlâ bir güvenlik açığı oluşturuyor.
![Numen Özel: Microsoft 0day açığı, Web3 oyununun sistem ve fiziksel katmanını alt üst edebilir])https://img-cdn.gateio.im/webp-social/moments-b0942592135ac96c6279544a62022329.webp(
Açıkların tespiti açısından daha kapsamlı bir kod kapsama testi, bu tür açıkların bulunmasına yardımcı olabilir. Açıkların istismarının tespiti için, yalnızca açıkları tetikleyen fonksiyonların kritik noktalarına odaklanmakla kalmayıp, ayrıca bellek düzenindeki anormallikler ve pencere türündeki ek verilerin anormal kaydırılarak okunması ve yazılması gibi hedefe yönelik testler de yapılmalıdır; bu, benzer türde açıkların tespit edilmesinin etkili yollarından biri olabilir.
![Numen özel: Microsoft 0day açığı, Web3 oyununun sistem ve fiziksel katmanını alt üst edebilir])https://img-cdn.gateio.im/webp-social/moments-b06b098af4f07260fdc03a75da160706.webp(