Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/Intika-Linux-Proxy/Proxybound
Linux applications proxifier
https://github.com/Intika-Linux-Proxy/Proxybound
injection ldpreload proxifier proxify proxy proxybound proxychains proxying-requests
Last synced: about 2 months ago
JSON representation
Linux applications proxifier
- Host: GitHub
- URL: https://github.com/Intika-Linux-Proxy/Proxybound
- Owner: Intika-Linux-Proxy
- License: gpl-2.0
- Created: 2019-01-18T04:01:56.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2019-05-31T17:46:37.000Z (over 5 years ago)
- Last Synced: 2024-06-01T18:07:33.922Z (4 months ago)
- Topics: injection, ldpreload, proxifier, proxify, proxy, proxybound, proxychains, proxying-requests
- Language: C
- Homepage:
- Size: 657 KB
- Stars: 123
- Watchers: 6
- Forks: 21
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
ProxyBound v5.60
================ProxyBound force any unix application to use a specific proxy and prevent it from leaking the original ip; Technically, ProxyBound is a UNIX program, that hooks network-related libc functions in dynamically linked programs via a preloaded DLL and redirects the connections through SOCKS4A/5 or HTTP proxies. This project is based on proxychain by [netcreature](https://sourceforge.net/u/netcreature/profile/), proxychains-ng by rofl0r, proxychains by haad and torsocks by dgoulet
Features:
=========- Proxify applications (like mainstream proxychains)
- Works with tcp (like mainstream proxychains)
- No leaks over udp/icmp/etc... (INET & INET6)
- Unsupported protocols are blocked
- Support chrome/chromium/skype/similar
- Incompatible applications are terminated with a proper message
- Many additional settings over environment variable
- etc.Used environment variable:
==========================```
- PROXYBOUND_CONF_FILE: Path to config file (default ./proxybound.conf then /etc/proxybound.conf)
- PROXYBOUND_QUIET_MODE: Quiet mode (1 or 0, default 0)
- PROXYBOUND_SOCKS5_HOST: Specify unique socks 5 proxy to use (default not used)
- PROXYBOUND_SOCKS5_PORT: Socks 5 port (default not used)
- PROXYBOUND_FORCE_DNS: Force dns resolv requests through (1 or 0, default 1)
- PROXYBOUND_ALLOW_DNS: Allow direct dns, allow udp port 53 and 853 (1 or 0, default 0)
- PROXYBOUND_ALLOW_LEAKS: Allow/Block unproxyfied protocols "UDP/ICMP/ETC", blocked by default (1 or 0, default 0)
- PROXYBOUND_WORKING_INDICATOR: Create '/tmp/proxybound.tmp' when dll is working as intended (1 or 0, default 0)
```How it works:
=============Proxybound hook libc functions like connect(), dynamic loader facilities are used, namely dl_sym() and LD_PRELOAD thus dynamically linked programs are required.
Install:
========```
./configure
make
[optional] sudo make install
```If you dont install, you can use proxybound from the build directory like this: `./proxybound -f src/proxybound.conf telnet google.com 80`
Install debug version :
=======================```
./configure
make debug
[optional] sudo make install
```Changelog:
==========**Version 5.60:**
- Fix skype compatibility
- Improve no leak feature
- Improve debug version
- Improve output/log messages
- Rewrite main hooked functions connect
- Rewrite main hooked functions bind
- Rewrite main hooked functions sendmsg
- Rewrite main hooked functions sendto
- Rewrite main hooked functions send**Version 5.50:**
- Block non tcp packet on send()
- Prevent bypass noleak
- Add support for bind() to block listen on unsupported protocol
- Add skype support**Version 5.40:**
- Add "--help" and "-h" parameter
- Add "--version" and "-v" parameter
- Update help page**Version 5.30:**
- Code cleaning
- Move readme to md
- Add support for hosts file (upstream import)**Version 5.20:**
- add PROXYBOUND_ALLOW_DNS
- update lock feature (send sendto sendmsg)
- add function to terminate when app is not supported
- add PROXYBOUND_WORKING_INDICATOR
- Code cleaning
- Update readme**Version 5.10:**
- leak lock feature (send sendto sendmsg)
**Version 5.00:**
- Initial leak lock feature
- Code cleaning
- Update readme**Version 4.90:**
- Import simple SOCKS5 proxy mode from @haad/proxychains
- Code cleaning
- Update readme**Version 4.80:**
- Updates with some features from @haad/proxychains
**Version 4.70:**
- Fix chrome compatibility
**Version 4.60:**
- Code cleanning & update
**Version 4.50:**
- Changing the name to ProxyBound
**Version 4.40:**
- Import security issue fix CVE-2015-3887
- Used v4.3 (4.03) for initial forkLimits :
========- IPv6 is blocked and not supported (currently partially supported)
- Some applications are incompatible (they will be explicitly terminated 2 sec after startup, to avoid leaks)Configuration:
==============Proxybound config file in following order:
```
1) File listed in environment variable ${PROXYBOUND_CONF_FILE} or
provided as a -f argument to proxybound script or binary.
2) ./proxybound.conf
3) $(HOME)/.proxybound/proxybound.conf
4) /etc/proxybound.conf
```Usage Example:
==============In this example it will run telnet through proxy without using proxybound binary
```
$ export PROXYBOUND_QUIET_MODE="1"
$ export LD_PRELOAD=/usr/local/lib/libproxybound.so
$ export PROXYBOUND_CONF_FILE=/etc/proxybound.conf
$ telnet targethost.com
```In this example it will run telnet through proxy(or chained proxies) specified by proxybound.conf
```
$ proxybound telnet targethost.com
```In this example it will use different configuration file then proxybound.conf to connect to targethost2.com host.
```
$ proxybound -f /etc/proxybound-other.conf targethost2.com
```In this example it will resolve targethost.com through proxy(or chained proxies) specified by proxybound.conf
```
$ proxyresolv targethost.com
```