4 ms·
Usually when I read something like this I am worried about the false sense of security that SOCKS proxy users give themselves. SOCKS is a very outdated protoco
by cookiengineer 6y ago
Usually when I read something like this I am worried about the false sense of security that SOCKS proxy users give themselves.
SOCKS is a very outdated protocol, that's why I wrote an in-depth article about it. The TLDR is kinda like this:
- don't use socks proxy passwords, they're plaintext or work only with pre-shadow BSD 0.x.
- IPv6 doesn't work. TOR socks proxy supports it but no Browser does.
- DNS isn't tunneled (only enforced DNS over TLS is due to http upgrade nature), and TTL of 0 (which is pretty much always everywhere) leads to the ISP / spy agencies being able to correlate your internet connection regardless.
- Most SOCKS implementation if not all that I've seen don't support "bind" correctly and neither work with UDP connection handshakes.
- therefore SOCKS in practice is TCP only, http upgrades will always circumvent a socks proxy because it cannot handle those connections.
- instead of a socks proxy I'd recommend to use a simple https proxy that uses a CONNECT header which has the identical features as a socks proxy in practice, but could be implemented in a way that it is compatible with http3/quic upgrades and websocket upgrades.
Source: The "RFCs" (which are two specs of an already proprietary implemented protocol at the time) and my Implementer's Guide to SOCKS that I posted on HN a while ago and didn't get any traction [1]
[1] https://cookie.engineer/weblog/articles/implementers-guide-to-socks.html https://cookie.engineer/weblog/articles/implementers-guide-t...
- sedachv 6y ago> IPv6 doesn't work. TOR socks proxy supports it but no Browser does. Firefox 87.0 on GNU/Linux with an OpenSSH 7.9 SOCKS proxy (-D) does make IPv6 connections from the correct destination address. Is there any other sense in which it does not work? One thing I do is bind on ::1 locally instead of 127.0.0.1