Yeni Mockingjay süreç enjeksiyon tekniği, EDR tespitinden kaçınıyor


bilgisayar korsanı

“Alaycı Kuş” adlı yeni bir işlem enjeksiyon tekniği, tehdit aktörlerinin EDR’yi (Uç Nokta Tespiti ve Yanıtı) ve diğer güvenlik ürünlerini atlayarak güvenliği ihlal edilmiş sistemlerde kötü amaçlı kodları gizlice yürütmesine izin verebilir.

Siber güvenlik firması Security Joes’daki araştırmacılar, EDR kancalarından kaçınmak ve uzak işlemlere kod enjekte etmek için RWX (okuma, yazma, yürütme) bölümlerine sahip meşru DLL’leri kullanan yöntemi keşfetti.

İşlem enjeksiyonu, işletim sistemi tarafından güvenilen başka bir çalışan işlemin adres alanında rastgele kod yürütme yöntemidir ve bu nedenle tehdit aktörlerine tespit edilmeden kötü amaçlı kod çalıştırma yeteneği verir.

Süreç enjeksiyon tekniklerine örnek olarak DLL enjeksiyonu, PE (taşınabilir yürütülebilir) enjeksiyonu, yansıtıcı DLL enjeksiyonu, iş parçacığı yürütme kaçırma, süreç içi boşaltma, eşleme enjeksiyonu, APC (eşzamansız prosedür çağrısı) enjeksiyonu ve diğerleri dahildir.

Tüm bu tekniklerde, saldırganların Windows API’lerini ve çeşitli sistem çağrılarını kullanması, süreçler/thread’ler oluşturması, işlem belleği yazması vb.

Security Joes, Mockingjay’in diğer yaklaşımlardan ayrıldığını çünkü yaygın olarak kötüye kullanılan Windows API çağrılarını kullanmadığını, özel izinler ayarlamadığını, bellek tahsisi gerçekleştirmediğini ve hatta bir iş parçacığı başlatmadığını ve dolayısıyla birçok olası algılama fırsatını ortadan kaldırdığını söylüyor.

Alaycı Kuş Tasarlamak

Araştırmacıların ilk hedefi, varsayılan bir RWX bölümüne sahip savunmasız bir DLL bulmaktı, böylece ek izinler almak gibi ekstra adımlar gerçekleştirmeden, güvenlik yazılımlarında kırmızı bayraklara yol açabilecek ekstra adımlar gerçekleştirmeden içeriğini kötü amaçlı kod yükleyecek şekilde değiştirebileceklerdi.

Security Joes analistleri, uygun bir DLL arayışında, Visual Studio 2022 Community içinde varsayılan olarak 16 KB boyutunda bir RWX bölümüne sahip msys-2.0.dll DLL’sini keşfetti.

Raporda, “Bu önceden var olan RWX bölümünden yararlanarak, EDR’ler tarafından zaten bağlanmış olabilecek herhangi bir işlevi etkili bir şekilde atlayarak, sunduğu doğal bellek korumalarından yararlanabiliriz.”

“Bu yaklaşım, yalnızca kullanıcı alanı kancalarının getirdiği sınırlamaları ortadan kaldırmakla kalmıyor, aynı zamanda enjeksiyon tekniğimiz için sağlam ve güvenilir bir ortam oluşturuyor.”

Daha sonra ekip, biri kendi kendine enjeksiyon ve diğeri uzaktan işlem enjeksiyonu için olmak üzere iki enjeksiyon yöntemi geliştirdi.

İlk durumda, özel bir uygulama (“nightmare.exe”) güvenlik açığı bulunan DLL’yi iki Windows API çağrısı kullanarak doğrudan kendi bellek alanına yükler ve bellek tahsisi gerçekleştirmeden veya izinleri ayarlamadan RWX bölümüne doğrudan erişim sağlar.

RWX bölümüne kötü amaçlı kod yazma
RWX bölümüne kötü amaçlı kod yazma (Güvenlik Joes)

Daha sonra, temiz bir sistem modülü olan NTDLL.DLL sistem çağrı numaralarını çıkarmak için kötüye kullanılır; bunlar daha sonra “Hell’s Gate EDR kancasını kaldırma” tekniği kullanılarak EDR kancalarını atlamak için kullanılır ve enjekte edilen kabuk kodunun algılanmadan çalışmasına izin verir.

API kullanımının atlanabilmesi için sistem çağrı saplaması oluşturmaya yönelik kod
API kullanımının atlanabilmesi için sistem çağrı saplaması oluşturmaya yönelik kod
(Güvenlik Joes)

İkinci yöntem, uzak bir işleme, özellikle “ssh.exe” işlemine bir yük enjekte etmek için msys-2.0.dll dosyasının TWX bölümünden yararlanmayı içerir.

Özel uygulama, ssh.exe’yi alt işlem olarak başlatır, hedef işlem için bir tanıtıcı açar ve güvenlik açığı bulunan DLL’nin RWX bellek alanına kötü amaçlı kodu enjekte eder.

Yeni süreci başlatmak için kod
Yeni süreci başlatmak için kod (Güvenlik Joes)

Son olarak, enjekte edilen kabuk kodu “MyLibrary.dll” DLL dosyasını yükleyerek, bir saldırı örneği olarak saldırganın makinesiyle ters bir kabuk oluşturur.

İhlal edilen sistemde ters kabuk oluşturma
İhlal edilen sistemde uzak bir kabuk oluşturma (Güvenlik Joes)

Testler, hedef süreçte yeni bir iş parçacığı oluşturmayı, bellek ayırmayı veya izinleri ayarlamayı gerektirmeyen bu uzaktan enjeksiyon saldırısının EDR çözümlerinden başarıyla kaçtığını gösterdi.

https://www.youtube.com/watch?v=155OXwnnAyw

Mockingjay’de önerilen her iki yöntem de yanlış yapılandırılmış bir DLL yüklemek ve DLL’nin RWX bölümünün adresini bulmak için ‘LoadLibraryW’, ‘CreateProcessW’ ve ‘GetModuleInformation’ gibi Windows API’lerini kullanır.

Bununla birlikte, EDR’ler genellikle geleneksel işlem enjeksiyon saldırılarında daha yaygın olarak çağrılan ‘WriteProcessMemory’, ‘NtWriteVirtualMemory’, ‘CreateRemoteThread’ veya ‘NtCreateThreadEx’ gibi API’leri izler. Bu nedenle, Mockingjay’in alarm verme olasılığı daha düşüktür.

Joes Security tarafından ‘Mockingjay’in geliştirilmesi, kuruluşların neden yalnızca mevcut EDR çözümlerine güvenmek yerine bütünsel bir güvenlik yaklaşımı benimsemeleri gerektiğinin bir başka göstergesidir.



Source link