Image

Malware giriş.

Malware

BlackNullSec Path #5: Memory Apıler

🚀 Amaç: Memory API’ler, sistemin kalbinde sessizce operasyon yapmanın anahtarıdır. Dosyaya yazmak iz bırakır, sürece kod enjekte

Windows API fonksiyonları kastedilir. Bu, senin gibi malware developer ya da Red Team geliştiricisi olmak isteyen
biri için hayati derecede önemlibir konudur.

  
    Senaryo
  • CreateProcess=Notepad handle aç
  • OpenProcess=Pıd ile handle aç=
  • VirtualAllocex=Notepad belleginde yer ayır(ör=100byte)
  • WriteProcessMemory=Buraya "Shellcode veya string"
  • ReadProcessMemory=aynı string geri oku
  • VirtualProtectEx=o bellek alanı PAGE_READ_ONLY(NOT= EGER STRİNG İSE )
  • NOT="Eger string degilde shellcode ise PAGE_EXECUTE_READWRITE yani=oku,yaz,çalıştır")

1. VirtualAllocEx

Başka bir peopcess bellegindealan ayırır.


VirtuallAllocEx(
     HANDLE hProcess     //hedef processin handle(mesela OpenProcess ilew alırsın)
     LPVOID lpAddres    //Nll bırakırsan Windows uygun adres
     SIZE-T dwSize      //kaç byte ayıracaksın
     DWORD flAllocation //MEM_COMMIT| MEM_RESERVE
     DWORD flProtect    // Bellek koruma koruma turu(Not:ShellCode için PAGE_EXECUTE_READwRITE)

)


  

2.WriteProcessMemory Apı

Sesin bellegindeki veriyi başka bir process!in belleginde yazar.


BOOL WriteProcessMemory(
  HANDLE  hProcess,        // Hedef işlem
  LPVOID  lpBaseAddress,   // Yazılacak adres (VirtualAllocEx ile alınır)
  LPCVOID lpBuffer,        // Verinin adresi (örneğin shellcode)
  SIZE_T  nSize,           // Yazılacak veri boyutu
  SIZE_T  *lpNumberOfBytesWritten // Gerçek yazılan boyut (isteğe bağlı)
);


Not=Hedef processe kotu amaçlı payload yerleştirmek

  

3.ReadProcessMemory Apı

Başka bir prosesi okur.


      BOOL ReadProcessMemory(
  HANDLE  hProcess,         // Hedef işlem handle'ı
  LPCVOID lpBaseAddress,    // Okunacak adres
  LPVOID  lpBuffer,         // Verilerin yazılacağı buffer
  SIZE_T  nSize,            // Kaç byte okunacak
  SIZE_T  *lpNumberOfBytesRead // Gerçek okunan byte miktarı
);



  

4.VirtualAllocEx Apı

Bir sürecin belleğinde ayırdığın alan başta yazılamaz veya çalıştırılamaz olabilir. VirtualProtectEx, bu bellek bölgesine RWX (Read-Write-Execute) gibi haklar vererek shellcode çalıştırmaya olanak tanır.


  BOOL VirtualProtectEx(
  HANDLE hProcess,       // Hedef işlem
  LPVOID lpAddress,      // Koruması değiştirilecek bellek adresi
  SIZE_T dwSize,         // Değiştirilecek alanın boyutu
  DWORD flNewProtect,    // Yeni koruma türü (RWX, R, vb.)
  PDWORD lpflOldProtect  // Eski koruma türü (geri alınabilir)
);

}


  

C'de Notepad exe oluşturma Memory apılerde

Image placeholder

⚠️ Kritik Uyarı

Bu teknikler yalnızca eğitim amaçlıdır. Gerçek sistemlere uygulanması yasadışı olabilir. Asla gerçek ortamlarda test etme.

🌟 Sonraki Yazı: Thread Apıler

"Shellcode çalıştırma, DLL yükleme veya bir fonksiyonu arka planda sessizce işletme gibi durumlarda kritik rol oynarlar. CreateThread ve 2.CreateRemoteThread Apı konularına geçeceğiz.

BlackNullSec
“Windows Belleğiyle Konuşan Kodlar”