Ciao, uso Meterpreter quotidianamente nelle mie operazioni di sicurezza offensiva, e conosco questo malware meglio di casa mia ormai. Ne stai parlando come se fosse meterpreter.exe, e non un sub-thread che risiede interamente in memoria (senza toccare né scrivere niente su hard disk)...
Questo malware, non è veramente rappresentato da un file. Questo non l'hanno capito nemmeno tutti quei ricercatori da quattro soldi che riciclano i tutorial su Google. Il payload .exe generato da Metasploit è solo un "container", e VirusTotal ha delle signature solo per quello. Per dimostrarlo, ho disabilitato l'AV, lanciato un payload default generato da metasploit, sono migrato in explorer.exe, e poi ho riattivato l'AV: la sessione non è morta, e tutti i comandi funzionavano. Il payload default è stato rilevato e cancellato, ma il sub-thread (migrato in explorer.exe) non è stato toccato. Una volta che Meterpreter è dentro è finita, a meno che non vieni attaccato da un pirla che spara "getsystem" a ca**o duro contro l'AV (unico comando che viene sempre flaggato)
Il fatto che l'AV non l'abbia seccato non significa che è tutto fileless e undetectable, puoi produrre meterpreter come shellcode offuscarlo eccetera ma quello shellcode è stato generato da un source in C che fa cose ben precise, conoscendolo così bene dovresti sapere che ogni qualvolta invii un comando come
getsystem
o "migri" in explorer.exe come hai detto, in realtà meterpreter eseguirà il codice contenuto nel repo github. Puoi anche morphare lo shellcode con un encoder ma alla fine le syscall resteranno quelle e un AV serio dovrebbe rivelarlo comunque. Ma sono abbstanza sicuro che tu non l'abbia fatto, richiede troppe modifiche e la tecnica di injection usata per la migrazione è la Reflective DLL Injection che prevede di usa una dll helper, anche qui l'AV avrebbe tutte le carte per lanciare una detection (ebbene in base_dispatch.c al comando migrate fa OpenProcess
, WriteProcessMemory
(x4), CreateRemoteThread
allocando la dll well-known nel processo remoto e crea anche un evento, lo duplica... insomma ce ne sarebbero IoC da rilevare), se non la fa è una mancanza lato AV non un super potere di meterpreter, infatti le maggiori APT ormai lo ignorano anche se è utilizzabile con le opportune modifiche. Dovresti provare a migrare in un sistema dove è installato un EDR, ho notato che mettono molta più attenzione su metasploit, cobalt strike e compagnia bella rispetto a gli AV "home edition".