Come nascondere la dll iniettata?

0

Quindi, se inserisco la mia DLL in un processo (o in tutti i processi in esecuzione, inclusi gli AV) e aggancia alcune funzioni, perché non posso semplicemente agganciare le funzioni (funzioni WinAPI) che potrebbero rilevare il processo di iniezione e hook? Ma il fatto è che non so quale API usi gli AV per rilevarlo. Conosci qualche? Oppure gli AV usano persino WINAPI per rilevare questi hook? o iniezioni?

Solo alcune domande:  * Quale possibile WinAPI può essere usato per rilevare i dll iniettati o i thread sconosciuti (da CreateRemoteThread?)? Ad esempio, forse un'API che enumera tutti i processi o i thread di dll. * Se amo queste funzioni, dovrei essere in grado di nascondere il mio hook?

Quello di cui sto parlando è che, non posso agganciare le funzioni che gli AV usano per rilevare la mia attività malvagia?

    
posta Cedrick 06.10.2018 - 02:38
fonte

2 risposte

0

I fornitori di antivirus non pubblicizzano tutti i loro metodi per rilevare il malware, altrimenti qualcun altro semplicemente li copierà. C'è molto di più nel rilevamento che nel guardare le chiamate API.

Stai provando a rilevare gli hook della DLL da solo o è solo un esercizio di pensiero?

Ecco una discussione sullo scambio di stack di reverse engineering che parla della possibilità di rilevare il rilevamento da un software POV vittima.

link

Questa community potrebbe essere più adatta a questa domanda poiché l'iniezione di DLL è comune nei malware e analizzano il malware tutto il giorno.

    
risposta data 06.10.2018 - 06:24
fonte
0

Il problema principale del tuo approccio è che un processo non ha bisogno di alcuna API per controllare il proprio spazio degli indirizzi. Può solo leggere da esso; è praticamente la definizione del suo spazio di indirizzamento. Quindi un prodotto AV può impostare un processo "esca" che sappia cosa dovrebbe e non dovrebbe essere in esecuzione nel suo spazio indirizzo e rilevare il codice inaspettato.

Sapresti come appare questo processo di esca? Non realisticamente. Il codice AV può generare al volo questo processo di esca, quindi è sempre diverso. Per un prodotto AV di un altro questo sembrerebbe terribilmente pescoso, quindi consiglia di non eseguire mai due prodotti AV in parallelo.

C'è una leggera complicazione con questo metodo: i tuoi hook potrebbero essere in qualche modo invisibili e in realtà essere generati al volo tramite un gestore di eccezioni. Ma questo gestore di eccezioni deve esistere e può essere invece rilevato.

    
risposta data 05.11.2018 - 17:02
fonte

Leggi altre domande sui tag