Linux下Tor网络作任意应用代理

本文总阅读量
  1 min to read  

  • 为何要使用Tor

在安全审计中,匿名性的重要无庸置疑,开源项目Tor自然而然成为了大多数安全人员保护自己的工具。虽然它不能保证100%匿名不可追踪,但相比之下它是最好的选择。

  • 什么是Socks5代理

Socks协议是一个代理协议。最常见的Socks代理就是网上的代理服务器,通过代理服务器更改自己请求网站时的IP。本文使用的是$$R(You Know)

  • 为何需要前置代理

在国内,Tor网络被封,只能依靠Tor的网桥,但速度极慢。通过配置前置代理,可以越过GFW。


Tor Browser

Tor Browser是Tor与Filefox结合的产物,使用简单,可直接配置前置Socks5代理。

使用时打开$$R并且配置Socks5代理后即可连接Tor网络

本文重点是接下来的部分



利用ProxyChains

Tor Browser有局限性,仅限于浏览器的流量。在安全审计时,我们需要使用SqlMap,需要使用W3af,需要使用MSF,所以我们需要利用Proxychains来为任意应用配置Tor代理。

  • 首先安装Proxychains

sudo apt-get install proxychains

  • 安装Tor

sudo apt-get install tor

  • 下载$$R

git clone https://github.com/ssrbackup/shadowsocksr

解压并进入目录,配置config.json,修改服务器IP:端口,密码,混淆协议等内容


安装完成,开始配置

cd /etc/proxychains.conf

修改[Proxy List]为socks4 127.0.0.1 9050,9050是Tor服务的监听端口,不同于Tor Browser的9150

vim /etc/tor/torrc

添加Socks5Proxy 127.0.0.1:1080,1080是$$R的监听端口,视本机情况修改


测试

./shadowsocksr/shadowsocks/local.py -c ./shadowsocksr/config.json

./etc/init.d/tor start

proxyresolv google.com

回显:

启动火狐proxychains firefox,访问百度,测试本机IP。看到IP为利比里亚,证明连接Tor网络成功,访问网页很快,证明前置Socks5配置成功(如无前置代理基本请求不到)


后话

由于最初把重点放在配置Proxychains上,想直接利用它配置双层代理,但访问网络是一直timeout

socks5 127.0.0.1 1080
socks4 127.0.0.1 9050

之后看了Tor说明doc,修改了/etc/tor/torrc


Tor连接有时候会莫名丢包,访问延迟极高,原因不详,需要service tor restart几次。在正常情况下访问速度基本与直接Tor浏览器速度相当。在使用其他应用时只需要proxychains sqlmap -u www.test.com --level 3等,参见Proxychains文档。