mirror of
https://github.com/rofl0r/proxychains-ng.git
synced 2024-12-22 04:08:47 +00:00
overhaul README
especially mentioning that proxychains is a HACK so it may not work. it is a hack because it modifies existing programs in a way not originally intended by its authors. additionally it relies on a very complicated and fragile dynamic linker infrastructure which can easily break, as is the case with glibc-linked programs that use dlopen() (see issue #10).
This commit is contained in:
parent
f3af1239a9
commit
aa1b9df2cb
51
README
51
README
@ -1,9 +1,23 @@
|
||||
ProxyChains ver 4.4 README
|
||||
==========================
|
||||
ProxyChains-NG ver 4.5 README
|
||||
=============================
|
||||
|
||||
ProxyChains 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.
|
||||
in DYNAMICALLY LINKED programs via a preloaded DLL (dlsym(), LD_PRELOAD)
|
||||
and redirects the connections through SOCKS4a/5 or HTTP proxies.
|
||||
It supports TCP only (no UDP/ICMP etc).
|
||||
|
||||
The way it works is basically a HACK; so it is possible that it doesn't
|
||||
work with your program, especially when it's a script, or starts
|
||||
numerous processes like background daemons or uses dlopen() to load
|
||||
"modules" (bug in glibc dynlinker).
|
||||
It should work with simple compiled (C/C++) dynamically linked programs
|
||||
though.
|
||||
|
||||
If your program doesn't work with proxychains, consider using an
|
||||
iptables based solution instead; this is much more robust.
|
||||
|
||||
Supported Platforms: Linux, BSD, Mac.
|
||||
|
||||
|
||||
*********** ATTENTION ***********
|
||||
|
||||
@ -25,18 +39,6 @@ ProxyChains ver 4.4 README
|
||||
RESPONSIBILITY FOR ANY ABUSE OR MISUSE OF THIS SOFTWARE AND
|
||||
THE RESULTING CONSEQUENCES.
|
||||
|
||||
|
||||
*********** ATTENTION ***********
|
||||
|
||||
this program works only on DYNAMICALLY LINKED programs.
|
||||
also both proxychains and the program to call must use
|
||||
the same dynamic linker (i.e. same libc).
|
||||
why ? because in order to hook to libc functions like
|
||||
connect(), dynamic loader facilities are used, namely
|
||||
dl_sym() and LD_PRELOAD.
|
||||
|
||||
*********************************
|
||||
|
||||
*** Installation ***
|
||||
|
||||
# needs a working C compiler, preferably gcc
|
||||
@ -51,6 +53,10 @@ ProxyChains ver 4.4 README
|
||||
Changelog:
|
||||
----------
|
||||
|
||||
Version 4.5:
|
||||
- hook close() to prevent OpenSSH from messing with internal infrastructure.
|
||||
this caused ssh client to segfault when proxified.
|
||||
|
||||
Version 4.4:
|
||||
- FreeBSD port
|
||||
- fixes some installation issues on Debian and Mac.
|
||||
@ -104,10 +110,9 @@ Some cool features:
|
||||
random order from the list ( user defined length of chain ).
|
||||
exact order (as they appear in the list )
|
||||
dynamic order (smart exclude dead proxies from chain)
|
||||
* You can use it with any TCP client application, even network scanners
|
||||
yes, yes - you can make portscan via proxy (or chained proxies)
|
||||
for example with Nmap scanner by fyodor (www.insecire.org/nmap).
|
||||
proxychains nmap -sT -PO -p 80 -iR (find some webservers through proxy)
|
||||
* You can use it with most TCP client applications, possibly even network
|
||||
scanners, as long as they use standard libc functionality.
|
||||
pcap based scanning does not work.
|
||||
* You can use it with servers, like squid, sendmail, or whatever.
|
||||
* DNS resolving through proxy.
|
||||
|
||||
@ -116,13 +121,13 @@ Configuration:
|
||||
--------------
|
||||
|
||||
proxychains looks for config file in following order:
|
||||
1) file listed in environment variable ${PROXYCHAINS_CONF_FILE} or
|
||||
1) file listed in environment variable PROXYCHAINS_CONF_FILE or
|
||||
provided as a -f argument to proxychains script or binary.
|
||||
2) ./proxychains.conf
|
||||
3) $(HOME)/.proxychains/proxychains.conf
|
||||
4) /etc/proxychains.conf **
|
||||
4) $(sysconfdir)/proxychains.conf **
|
||||
|
||||
**see more in /etc/proxychains.conf
|
||||
** usually /etc/proxychains.conf
|
||||
|
||||
Usage Example:
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user