rofl0r / proxychains-ng

proxychains ng (new generation) - a preloader which hooks calls to sockets in dynamically linked programs and redirects it through one or more socks/http proxies. continuation of the unmaintained proxychains project. the sf.net page is currently not updated, use releases from github release page instead.

Home Page:http://sourceforge.net/projects/proxychains-ng/files

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Proxy DNS issue

obuno opened this issue · comments

commented

Hi there rofl0r.

I'm trying to use proxychains-ng to force the pcloud client through a SOCKS5 proxy.
On one Arch based host it works all fine while on another (same distro, same updates, same proxychains build etc) it doesn't and I'm trying to nail down where my issue could be.

What I'm seeing on the host that fails is that the pcloud client own DNS requests aren't proxied at all, they're sent to the local DNS server (which doesn't tolerate external lookups), behavior that i cannot explain. Here are my proxychains settings on that host:

grep "^[^#;]" /etc/proxychains.conf
strict_chain
proxy_dns
remote_dns_subnet 224
tcp_read_time_out 15000
tcp_connect_time_out 8000
[ProxyList]
socks5  10.10.10.1 1080

One notable difference I've seen running 'proxychains pcloud' on both hosts, is that there seems to be more DLL init: lines displayed by proxychains at app launch on the working host.

A successful launch:

#which pcloud
pcloud: aliased to proxychains pcloud
#pcloud
[proxychains] config file found: /etc/proxychains.conf
[proxychains] preloading /usr/lib/libproxychains4.so
[proxychains] DLL init: proxychains-ng 4.16
[proxychains] DLL init: proxychains-ng 4.16
[proxychains] DLL init: proxychains-ng 4.16
[proxychains] DLL init: proxychains-ng 4.16
[proxychains] DLL init: proxychains-ng 4.16
[proxychains] DLL init: proxychains-ng 4.16
[proxychains] DLL init: proxychains-ng 4.16
[proxychains] DLL init: proxychains-ng 4.16
[proxychains] DLL init: proxychains-ng 4.16
[proxychains] DLL init: proxychains-ng 4.16

(process:541744): Gtk-WARNING **: 11:40:18.553: Locale not supported by C library.
        Using the fallback 'C' locale.

(pcloud:541744): Gtk-WARNING **: 11:40:18.586: Theme parsing error: gtk.css:1649:16: '-gtk-icon-size' is not a valid property name

(pcloud:541744): Gtk-WARNING **: 11:40:18.587: Theme parsing error: gtk.css:1652:16: '-gtk-icon-size' is not a valid property name
[proxychains] Strict chain  ...  10.10.10.1:1080  ...  224.0.0.1:443 <--socket error or timeout!
[proxychains] Strict chain  ...  10.10.10.1:1080  ...  api.pcloud.com:443  ...  OK
Down: Everything Downloaded| Up: Everything Uploaded, status is OFFLINE
STATUS -------------> 11
[proxychains] Strict chain  ...  10.10.10.1:1080  ...  bineapi.pcloud.com:443  ...  OK
Found version 1.13.0 at https://p-lux4.pcloud.com/cBZYvCrtdZV9h8RoZZZgxbto7Z2ZZZkZW10DVZAZHkZppZ94ZJ7ZfzZR4ZNVZX5ZGRZ8VZqzZeFZlHZzHzEVZ5Wv83PQsOjyCjDSXwP30hhWw7I70/pcloud
[proxychains] Strict chain  ...  10.10.10.1:1080  ...  bineapi.pcloud.com:443  ...  OK
Down: Everything Downloaded| Up: Everything Uploaded, status is SCANNING
STATUS -------------> 13
Down: Everything Downloaded| Up: Everything Uploaded, status is READY
STATUS -------------> 0

and a failing launch:

#pcloud
[proxychains] config file found: /etc/proxychains.conf
[proxychains] preloading /usr/lib/libproxychains4.so
[proxychains] DLL init: proxychains-ng 4.16
[proxychains] DLL init: proxychains-ng 4.16

(process:541744): Gtk-WARNING **: 11:40:18.553: Locale not supported by C library.
        Using the fallback 'C' locale.

(pcloud:541744): Gtk-WARNING **: 11:40:18.586: Theme parsing error: gtk.css:1649:16: '-gtk-icon-size' is not a valid property name
...

After which on the failing host, pcloud complains about a self signed certificate found in chain, obviously so because the RPZ enabled bind server will reply with a dustbin/bogus IP address hosting a deadend web server catching any non tolerated external lookups, hence expected.

I made testings with browsers on both hosts and everything works as expected, addressing the SOCKS5 host for both DNS and TCP based traffic.

Would you perhaps have any further troubleshooting step I could take? I've got the feeling that for some reasons on the failing host, pcloud isn't hooked by proxychains for some reasons..

Let me know,
Thanks for your time,
o.

commented

you showed only one proxychains.conf, so it's hard to guess what it could be. what i'd recommend is to use the new proxy_dns_daemon method, which is a lot more compatible with multi-threaded processes. as for the difference in init lines, it will be printed once per started subprocess, so either on failed host the app terminates quickly, or the preload setting is deleted from env, and proxychains no longer preloaded in the subprocesses.

commented

Hi there rofl0r, thanks for your update, it's pretty much the same although within a different location, different subnets and different SOCKS5 target proxy, here it is:

grep "^[^#;]" /etc/proxychains.conf
strict_chain
proxy_dns
remote_dns_subnet 224
tcp_read_time_out 15000
tcp_connect_time_out 8000
[ProxyList]
socks5  10.20.20.1 1080

As said, a proxychains librewolf does absolutely work on both these hosts with their respective proxychains configs -- I'll sure try out the proxy_dns_daemon option where it fails.. Thanks again !

Hi there rofl0r,

You can close that issue, this isn't a ProxyChains issue -- I've re-installed the problematic host from scratch and now it all works fine... Also, I've edited some notes about running pCloud behind ProxyChains here:
https://github.com/obuno/proxychains-pCloud

Thanks for your help,
o.