New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Support upstream SOCKS proxy #211
Comments
I don't have the time do work on this at the moment, |
Thank you |
Hello, I am wondering if this feature is implemented in the current version or not. |
Not yet, sorry. |
Hi, so I'm looking at the code for upstream HTTP(S) proxy support and it looks like it's mutually exclusive with running mitmproxy as a SOCKS proxy. I'm potentially interested in looking at adding upstream SOCKS support, but I'd prefer not to have that limitation. Is there an implementation reason for that exclusivity? Is there a good way to implement upstream SOCKS support such that that isn't a problem? |
Just commenting hoping to bump interest some. I've been trying to use Tor as an upstream proxy and it seems that Tor only supports Socks. |
Would also like to have this feature. |
++ |
You can hook the makesocket call in tcp.py. |
@zhangyoufu i tried but i think its not working |
Hi @TonyStark ,
|
@malwarefun
but not working too |
Hi there. |
Hi, sorry to bump an old thread, but has anyone gotten this to work? I'm looking to use Socks5 proxy as upstream. |
@eliyastein I did it with proxychains |
Thanks @baptx - I was actually able to do it using gost: |
Another option is #2813 (comment) |
What a long time unsolved issue, hope support socks5 connect when use upstream mode and us socks5 proxy as its forward proxy. |
socks.go:950: [socks5] 127.0.0.1:12915 -> 127.0.0.1:1089 : EOF |
@eliyastein would be be able to explain your gost setup? I keep getting port is already in use errors. |
@bardic - it has been a while... but I'm looking at the script I wrote to make this work and it looks like it's something like this: gost -L=localhost:LOCAL_PORT -F=socks5://localhost:PROXY_PORT Then when I invoke mitm I pass along So basically gost is forwarding the local port that you specify to the socks proxy. I imagine in your case the argument you pass to gost -F will be remote and not local like it was in my case. Of course if everything is local, make sure it's all running on different ports. |
@mhils Hey, I need to tackle this task for my work, and I want to contribute back upstream. Can you offer me any advice before I start? I´m planning to use https://github.com/romis2012/python-socks |
@bratao: A good first step would be to simply rewrite the existing HTTP Upstream Proxy Implementation with a SOCKSv5 one. Our proxy core is sans-io, which means that python-socks may not be an ideal fit. We already have a SOCKSv5 server Implementation, it'd make more sense to reuse the primitives there. |
Some news for this socks5 in upstream feature? |
+1 |
it's indeed a missing feature Update: I found a workaround by using tinyproxy with the following configuration:
|
Implement support for SOCKS upstream proxy with DNS resolution via SOCKS, so mitmproxy can be easily tunnelled through "ssh -D".
The text was updated successfully, but these errors were encountered: