Meterpreter è un payload a più stadi in cui viene inviato per primo il primo stage che scarica quindi il secondo stadio DLL. Due cose che devi capire qui: quale trasporto sarà utilizzato dal Meterpreter per comunicare con il gestore e se il primo stadio dovrebbe ricollegarsi al conduttore o il conduttore dovrebbe connettersi alla presa di ascolto (in senso inverso o in quello di collegamento).
Sono disponibili tre tipi di trasporto: TCP, HTTP e HTTPS. Se si opera in un ambiente LAN, è possibile utilizzare il trasporto TCP poiché è un meccanismo di trasporto affidabile. Tuttavia, il trasporto TCP ha bisogno di un socket stabilito per comunicare il che significa che se per qualche motivo la sessione si avvicina tra la macchina dell'attaccante e quella della vittima, non può essere ricollegato (a meno che la persistenza non sia già stata raggiunta). Il trasporto TCP non può attraversare i server proxy per accedere a Internet e il trasporto di prima fase è in testo normale che può attivare IDS / IPS.
HTTP e HTTPS utilizzano entrambi WinInet, il che significa che se la vittima è dietro un proxy HTTP, il meterpreter della prima fase sarà in grado di utilizzare il server proxy e le credenziali memorizzate nella cache (se necessario) per attraversare il proxy e accedere a Internet. < br>
Il trasporto HTTPS ha il vantaggio aggiuntivo di trasferire la DLL di secondo stadio su un trasporto tunnelizzato SSL completo che non può essere rilevato da IDS / IPS a meno che la sessione non sia MITM-ed al proxy.
In caso di binding vs reverse, il reverse è quasi sempre il metodo preferito perché molte volte le organizzazioni dispongono di filtri di input di script ma il filtraggio in uscita non è molto severo (anche se sta cambiando).
Un'ultima cosa che devi capire è che, rispetto a TCP, il trasporto di HTTP (S) è di dimensioni maggiori, motivo per cui non sarà adatto a tutti gli exploit a causa del limitato spazio di carico che possono trasportare. Tuttavia, egy7t ha fatto un ottimo lavoro per ridurre le dimensioni del trasporto HTTPS inverso in modo che la maggior parte degli exploit possano portarlo. Puoi trovare maggiori dettagli a riguardo all'indirizzo Shellcode Golf: ogni byte è sacro .