Iniezione di Eseguibili Portabili: Process Injection via Portable Executable (T1055.002)

L'iniezione di eseguibili portabili rappresenta una tecnica sofisticata per eseguire codice arbitrario nello spazio di memoria di processi legittimi. Questa metodologia permette agli attaccanti di mascherare le proprie attività sotto processi fidati, evadendo i controlli di sicurezza basati sulla reputazione dei processi.

La tecnica si manifesta in due fasi critiche della kill chain: TA0004 (Privilege Escalation) per ottenere privilegi elevati attraverso processi con maggiori permessi, e TA0005 (Defense Evasion) per nascondere l'esecuzione malevola. Il codice viene copiato direttamente nella memoria virtuale del processo target, spesso senza mai toccare il disco.

Attualmente 2 gruppi APT, 10 famiglie di malware e 1 campagna documentata hanno utilizzato questa tecnica, dimostrando la sua efficacia operativa nel contesto di attacchi reali.

Per replicare l'iniezione PE in laboratorio, inizia identificando il processo target tramite tasklist o ps aux. Il processo classico su Windows utilizza tre API native in sequenza.

Prima apri un handle al processo target con privilegi sufficienti: OpenProcess(PROCESS_ALL_ACCESS, FALSE, targetPID)

Alloca memoria nel processo remoto per ospitare il tuo payload: VirtualAllocEx(hProcess, NULL, payloadSize, MEM_COMMIT | MEM_RESERVE, PAGE_EXECUTE_READWRITE)

Scrivi il PE o lo shellcode nello spazio allocato. Qui la complessità aumenta perché devi gestire il remapping delle referenze di memoria. Il payload deve essere position-independent o includere un loader che gestisca le rilocazioni: WriteProcessMemory(hProcess, remoteBuffer, payload, payloadSize, NULL)

Infine, crea un thread remoto che esegua il codice iniettato: CreateRemoteThread(hProcess, NULL, 0, (LPTHREAD_START_ROUTINE)remoteBuffer, NULL, 0, NULL)

Tool come Brute Ratel C4 automatizzano questo processo. La sua capacità di iniettare Latrodectus in Explorer.exe dimostra l'efficacia contro processi di sistema critici. Havoc utilizza un approccio simile iniettandosi in C:\Windows\System32\Werfault.exe, sfruttando la legittimità del Windows Error Reporting.

Per testing avanzato, considera Zeus Panda che analizza i processi prima dell'iniezione, selezionando target che soddisfano requisiti specifici di sicurezza e privilegi. Questo approccio riduce il rischio di crash e aumenta le possibilità di successo.

Vuoi diventare un Ethical Hacker ma non sai da dove iniziare?

Scarica la guida gratuita e segui il percorso corretto fin dal primo passo

We use cookies

Utilizziamo i cookie sul nostro sito Web. Alcuni di essi sono essenziali per il funzionamento del sito, mentre altri ci aiutano a migliorare questo sito e l'esperienza dell'utente (cookie di tracciamento). Puoi decidere tu stesso se consentire o meno i cookie. Ti preghiamo di notare che se li rifiuti, potresti non essere in grado di utilizzare tutte le funzionalità del sito.