6

I'm currently thinking about developing a sockscap-like tool with some cool new features and a nice WPF gui.

For those who don't remember: SocksCap was a tool that allowed you use any application with the use of a SOCKS4/5 Proxy... So e.g. you could play games with another IP without using VNC and alike.

However I'm not much of a network guy, so I'd love some input on how to "socksify / proxify" from an external application within a windows environment. As this is supposed to be a project, not a "quick and dirty" thing I'm only into "clean and generic" approaches instead of "modify HOSTS entry" or "plugin for each application"...

So how would someone with knowledge about networking programming start his research about redirecting (routing?) an applications traffic via a proxy?

Thanks for any help :-)

Steav
  • 1,478
  • 13
  • 28

1 Answers1

2

Google always helps.

Under windows there is something similar to socksify:

FreeCap -- is a program for transparency redirect connections from programs through SOCKS server. In fact that some programs hasn't native SOCKS support (for example Internet Explorer), In this case FreeCap will be helpful, transparently redirect all connections requests through SOCKS server.

The internal implementation of this seems hijacked the socket call of the client applications.

Sam Liao
  • 43,637
  • 15
  • 53
  • 61
  • "The internal implementation of this seems hijacked the socket call of the client applications." What exactly does that mean? Is there a way I can receive the socket instance when the application creates it socket? And then I could force that socket to use a Proxy? – Steav Aug 31 '12 at 13:23
  • @Steav Usually for such tools they hook or inject some assembly code to monitor all the socket call from the client application, then it can proxy the socket call with configured socks proxy. – Sam Liao Sep 03 '12 at 02:08
  • @Steav as for the unix socksify tools you mentioned, it uses the LD_LIBRARY_PATH to preload a customized socket library; on windows you may need to different and harder work, but the mechanism is similar. - you need track and change client application behavior. – Sam Liao Sep 03 '12 at 02:10