Ncloader
Un utilitaire simple d'injection de DLL
La conception actuelle implémente la technique bien connue d'injection de DLL :
- VirtualAllocEx (alloue de la mémoire pour la chaîne dans le processus distant)
- WriteProcessMemory (écrit le « path/to/dll/file » dans la mémoire allouée à distance)
- CreateRemoteThread (avec l'adresse de démarrage de LoadLibrary[A/W] et l'adresse de « path/to/dll/file » comme paramètre)
Fonctionnalités
- Depuis une invite administrateur élevée, injecte dans tout processus (non protégé), y compris les processus de la session 0
- Autonome (aucune bibliothèque tierce, compilation statique)
- Code propre (compile sans avertissements et avec /Wall sur MSVC)
- Vérification stricte des erreurs et rapports détaillés
- Aucune API NT non documentée
- Ne crée pas de services
- N'utilise pas de pilote
- Binaires précompilés 32 bits et 64 bits
Utilisation
ncloader.exe [process name | pid] [dll full path] [1]
note: the optional trailing '1' disables elevation attempt
Exemples
Par nom de processus depuis une invite standard (privilège de débogage absent du jeton restreint)
ncloader.exe some_service.exe c:\path\to\library.dll
Dll c:\path\to\library.dll successfully injected in session 0 process some_service.exe (debug privilege was enabled)
Par PID depuis une invite élevée (le jeton possède le privilège de débogage mais il est désactivé)
ncloader.exe 1234 c:\path\to\library.dll
Dll c:\path\to\library.dll successfully injected in session 1 process 1234