shunf4 / proxychains-windows

Windows and Cygwin port of proxychains, based on MinHook and DLL Injection
GNU General Public License v2.0
967 stars 117 forks source link

Any suppot for .NET program? #11

Open Neboer opened 4 years ago

Neboer commented 4 years ago

I use this to proxy my osu!lazer.exe game and it is a game written in C# on .NET platform. When I run it inside proxychains it gives me the output:

[W] 2020/10/13 18:05:53 Warning: Output from X86 Helper executable is in a wrong format. In this case proxychains.exe will not inject X86 descendant processes.
[W] 2020/10/13 18:05:53 Child is an X86(Win32) process (0 1); function address missing: won't inject
[I] 2020/10/13 18:05:53 No child process registered. Injection might not have succeeded.

And the main game doesn't start. Can anyone give me some help on this?

shunf4 commented 4 years ago

I tested with https://github.com/ppy/osu/releases/tag/2020.1009.0 and Proxychains.exe 0.6.8. The following command starts successfully:

proxychains C:\Users\***\AppData\Local\osulazer\app-2020.1009.0\osu!.exe

Have you copied proxychains_helper_win32_x86.exe together with proxychains.exe? They have to reside in the same directory.

shunf4 commented 4 years ago

Note

proxychains C:\Users\***\AppData\Local\osulazer\osu!.exe

Does not work. This launcher may have something to do with GetThreadContext(), so it's not proxify-able by Proxychains.exe.

Neboer commented 4 years ago

Does the game REALLY use the proxy in your test? I've retested it and it do run, but the proxy had no effect.

[PID  980] [W] 2020/10/14 10:11:06 GetThreadContext() Failed: argument error。(87)
[PID  980] [E] 2020/10/14 10:11:06 Injecting WINPID 3592 Error: argument error。(87)
[I] 2020/10/14 10:11:07 All Windows descendant process exited.
[I] 2020/10/14 10:11:07 Master exiting
shunf4 commented 4 years ago
[PID  980] [W] 2020/10/14 10:11:06 GetThreadContext() Failed: argument error。(87)

Did you use C:\Users\***\AppData\Local\osulazer\osu!.exe? This launcher is not able to be proxified. Instead use the osu!.exe in the directory of a specific version, like C:\Users\***\AppData\Local\osulazer\app-2020.1009.0\osu!.exe.

C:\Users\***\AppData\Local\osulazer\app-2020.1009.0>px osu!.exe
[PID13492] [I] 2020/10/14 10:22:45 <> localhost:1079
[PID13492] [I] 2020/10/14 10:22:45 Mswsock.dll (FP)ConnectEx(3628 13.250.168.23:443 16) PROXY
[PID13492] [I] 2020/10/14 10:22:47 <> localhost:1079
[PID13492] [I] 2020/10/14 10:22:47 Mswsock.dll (FP)ConnectEx(4280 13.250.177.223:443 16) PROXY
[PID13492] [I] 2020/10/14 10:22:48 <> localhost:1079
[PID13492] [I] 2020/10/14 10:22:48 Mswsock.dll (FP)ConnectEx(4244 52.217.99.148:443 16) PROXY
[PID13492] [I] 2020/10/14 10:23:15 <> localhost:1079
[PID13492] [I] 2020/10/14 10:23:15 Mswsock.dll (FP)ConnectEx(4520 172.67.14.100:443 16) PROXY
[PID13492] [I] 2020/10/14 10:23:18 <> localhost:1079
[PID13492] [I] 2020/10/14 10:23:18 Mswsock.dll (FP)ConnectEx(4628 104.22.74.180:443 16) PROXY
Neboer commented 4 years ago

That's interesting, thank you very much.

shunf4 commented 4 years ago

Let's keep it open until we figure out whether the launcher can be proxified.