process

Process Injection Nedir – Process Injection Teknikleri | İşlemleri Hackleyin – Process Güvenliği

Genel Siber Güvenlik

Process Injection Nedir?

Process injection, zararlı kodların sistemde çalışan işlemlere zorla sokulması ve işlemin içerisinde bu kodların çalıştırılmasıdır. Kısacası, process injection yaparken saldırgan bilgisayarımızda çalışan işlemleri hedef alır. Bu işlemlere kendi kodunu enjekte eder. Bu yazımızda bazı process injection tekniklerine değineceğim…

Process Injection Teknikleri

1. Klasik DLL Injection

Bu teknik, zararlı yazılımın işlemlere bulaşması için kullanılan en yaygın enjeksiyon tekniğidir. Bu teknikte, zararlı yazılım sistemde çalışan başka bir işlemin sanal adres alanına kendi kötü amaçlı dinamik bağlantı kitaplığının (DLL) yolunu yerleştirir ve uzaktaki zararlı işleminin sistemde bulunan bu işlem üzerinden yüklenmesini sağlar.

Process Injection Nedir

Zararlı yazılım remote dll process injection gerçekleştirebilmek için bir hedefe ihtiyacı vardır (örneğin hedef svchost.exe işlemi olsun). Zararlı, bu hedefi Application Program Interfaces (APIs) üçlemesi  kullanarak yaptığı arama sonucunda bulur. Bu API’lar:

• CreateToolhelp32Snapshot, Process32First ve Process32Next ‘dır. CreateToolhelp32Snapshot, belirli bir işlemin yada işlemlerin yığın veya modül durumlarını numaralandırmak için kullanılan bir API’dır ve bir snapshot yani anlık görüntü döndürür.
• Process32First, snapshoptta yer alan ilk işlem hakkında bilgi getirir, ardından Process32Next ise döngü içinde yineleme yapar.

Hedef Process bulunduktan sonra, zararlı yazılım OpenProcess’i çağırarak hedef işlem ile ilgilenir.

Process Injection

Yukarıdaki figürde gördüğünüz gibi, zararlı yazılım DLL dosyasının yoluna alan açmak  için  VirtualAllocEx’ı çağırır. Zararlı yazılım, daha sonra oluşturulan alana DLL dosyasını yazacak olan WhiteProcessMemory’i çağırır. Son olarak, kodun başka bir işlemde çalıştırılabilmesi için kötü amaçlı yazılım  CreateRemoteThread, NtCreateThreadEx yada RtlCreateUserThread gibi API’lar kullanır.

CreateRemoteThread genellikle antivirüsler tarafından takip altında olduğu için sofistike saldırganlar tarafından bu yöntem pek kullanılmamaktadır.

 

2. Portable Executable Injection (PE Injection)

LoadLibrary’nin sanal adresine pas geçmek yerine malware. zararlı kodunu var olan açık bir işleme de enjekte edebilir. PE enjeksiyonun bir avantajı, zararlı yazılımın diskte kötü amaçlı DLL’yi bulundurmak zorunda olmamasıdır. 1. teknikten tek farkı, zararlı yazılımın VirtualAllocEx’in açtığı alana DLL dosyasını yazmak yerine direkt olarak zararlı kodun kendisini yazmasıdır.

PE Injection

3. Process Hollowing (İşlem Kabartma)

Host üzerinde çalışan bir işleme bir kod enjekte etmek yerine, işlem kabartma tekniğini kullanabilir. Bu teknikte, hedef işlemin sanal adresindeki yasal kodu kaldırılır ve zararlı kod üzerine yazılır.

proess hollowing

Kaynak
https://www.elastic.co/blog/ten-process-injection-techniques-technical-survey-common-and-trending-process

Bir cevap yazın