
Détournement de DLL adaptatif / redirection d'exportation dynamique
Ce projet est une démonstration de techniques avancées de détournement de DLL. Il a été publié conjointement avec l'article de blog "Adaptive DLL Hijacking". Je recommande de commencer par là pour contextualiser ce code.
Ce projet est composé des éléments suivants :
La solution Visual Studio elle-même prend en charge 4 configurations de build qui correspondent à 4 méthodes différentes de proxy de fonctionnalités. Cela devrait fournir une manière évolutive intéressante de démontrer plus de techniques à l'avenir.
L'objectif de chaque technique est de capturer avec succès l'exécution du code tout en faisant office de proxy vers la DLL légitime. Chaque technique est testée pour garantir que les situations de sink statique et dynamique sont gérées. Ce n'est de loin pas toutes les primitives ou variations de techniques. L'article ci-dessus entre plus dans les détails.
Préparez un scénario de détournement avec une DLL manifestement incorrecte
> copy C:\windows\system32\whoami.exe .\whoami.exe
1 file(s) copied.
> copy C:\windows\system32\kernel32.dll .\wkscli.dll
1 file(s) copied.
L'exécution dans la configuration actuelle devrait entraîner une erreur
> whoami.exe
"Entry Point Not Found"
Convertir kernel32 en fonction proxy pour wkscli
> NetClone.exe --target C:\windows\system32\kernel32.dll --reference C:\windows\system32\wkscli.dll --output wkscli.dll
[+] Done.
> whoami.exe
COMPUTER\User