Bonjour à tous.
Après avoir lu ce sujet de Labo je me suis rendu compte qu'il n'y avait pas d'alternative simple à proxychain sur windows.
Pour étudier un peu plus la redirection d'une connection j'ai donc implémenté trois projet qui sont disponibles sur mon github :
- https://github.com/numaru/socksifier
- https://github.com/numaru/injector
- https://github.com/numaru/socksy
N’hésitez pas a faire un tour et donner des retours.
-------------------------------------------------------------------------------------
Socksifier
Ce projet pour but, via une simple DLL à injecter, de pouvoir rediriger une connection vers un proxy SOCKS4. Par default,
l'adresse du proxy est 127.0.0.1:1080. Pour changer cette adresse il faut un injecteur capable d'appeler des
fonctions exporté par ladite DLL.
Injector
Ce basique injecteur de DLL écrit en python utilise l’injection via CreateRemoteThread et LoadLibrary. Il peut appeler
des fonctions de la DLL (pour changer une configuration par example).
Socksy
Il s'agit d'un proxy SOCKS4 qui redirige les connections. Il donne accès au messages reçu via une queue de
synchronisation.
-------------------------------------------------------------------------------------
Utilisation
Apres avoir cloné/téléchargé les trois repositories, il faut commencer par compiler la DLL.
Si vous ne pouvez/voulez pas, une version compilée est disponible ici.
Il faut ensuite lancer le serveur proxy:
...\socksy> python socksy_cli.py 1080
Puis lancer et injecter la DLL grâce à injector_cli ou votre injecteur préféré (on utilise ici le port par default 1080) :
...\injector> python injector_cli.py path\to\exe path\to\dll
A noter: Windows permet une injection dans un process x64 uniquement via un autre process x64 (meme chose pour x86).
Donc si vous voulez injecter une DLL dans un process x86, vérifiez bien que votre version de python est x86. (normalement c'est le cas).