渗透工具之TOR(洋葱头)之Linux篇

    技术教程 Dr.V 588次浏览 0个评论

    简介

    TOR或许不是网络匿名访问的唯一手段,但毫无疑问它是目前最流行、最受开发者欢迎的。这个免费、开源的程序可以给网络流量进行三重加密,并将用户流量在世界各地的电脑终端里跳跃传递,这样就很难去追踪它的来源。

    原理

    Tor(The Onion Router,洋葱路由器)由已经安装了Tor软件的电脑连接网络而成。它之所以被称为onion,是因为它的结构就跟洋葱相同,你只能看出它的外表,而想要看到核心,就必须把它层层的剥开。即每个路由器间的传输都经过点对点密钥(symmetric key)来加密,形成有层次的结构。它中间所经过的各节点,都好像洋葱的一层皮,把客户端包在里面,算是保护信息来源的一种方式。

    流程图:

    这里写图片描述

    安装

    说明:目前国内必须要挂vpn才能进入tor匿名网络。具体的原因,你懂得。

    VPN

    此处以openvpn安装为例。

    apt-get install network-manager-openvpn
    apt-get install network-manager-openvpn-gnome

    很多小伙伴经常问我那个vpn比较好用?

    就目前我已经用过的vpn来说;如果是土豪的话,可以自己买一个香港的服务器搭建;如果没钱的话,我推荐云梯vpn,因为比较稳定;我这里提供给大家一个推荐链接云梯 VPN,可以少10元,如果你购买成功,我也可以赚10元哈,但是此处真心不是广告,确实很稳定,速度也比较快。

    Privoxy

    sudo apt-get install privoxy

    使用说明,请查看使用手册

    这里写图片描述

    Tor

    apt-get install tor

    这里写图片描述

    启动服务

    service tor start

    这里写图片描述

    配置Privoxy 指向Tor

    使用Privoxy 和 Tor组合最主要的原因就是DNS。如果我想控制本地的dns请求,以便我所有的dns请求都不泄露我的信息,我可以不停的换用一些公用dns服务器(比如8.8.8.8)。但是Privoxy还提供了一些附加功能用来阻断请求,而且它还会阻止那些有可能会暴露我们IP的请求。

    这配置其实非常简单。在Linux里,只需要简单的配置下Privoxy让它链接到Tor,那么Privoxy就会将所有的DNS和HTTP请求转发到Tor网络里。
    要让Tor帮你转发请求,只需在Privoxy里这样配置:
    forward-socks5 / 127.0.0.1:9050

    下面是privoxy 的完整配置文件(没有注释)。从里面可以很清楚的看到它并没有监听所有的端口,而是直接把请求转发给了Tor。

    这里写图片描述

    这里写图片描述

    启动服务

    service privoxy start

    通过代理上网

    检查服务是否开启

    这里写图片描述

    配置环境变量(http_proxy, https_proxy, ftp_proxy)和命令行工具,以便通过代理上网。

    export http_proxy=127.0.0.1:8118
    wget -nc -nd http://www.google.com

    这里写图片描述

    用-http-proxy选项来开启安卓虚拟机

    通过一个安卓虚拟机安装一些app来进行渗透测试是一个不错的方法,当你在虚拟机里输入命令时,多半会用到 “-http-proxy ipaddr:port”。
    确保你先运行了privoxy 。如果虚拟机不能访问privoxy 的本地端口,那么这些设置会失效。还会以图解的方式出现警告。

    emulator -avd IceCreamSandwich -partition-size 256 -qemu -http-proxy 127.0.0.1:8118

    现在,所有虚拟机里的数据包都会通过privoxy转发到Tor网络里。

    不得忽视的一点是:在虚拟机启动前,必须先开启privoxy ,并确保本地端口监听是正常的。如果虚拟机在启动了之后不能连接到privoxy 的端口,那么它就会忽略这些代理选项,而且虚拟机还会直接使用本地网络来与外界通信,这无疑会暴露我们的源IP。

    配置一个应用程序(或者设备)来使用代理。

    此处以AutoProxy代理为例。

    这里写图片描述

    这里写图片描述

    通过 iptables 规则来分配数据包。

    4)如果你的应用程序不使用命令行代理环境变量,而且你也不能通过配置一个应用程序来连接代理,你还可以通过配置iptables 来使用NAT转换数据包到代理上。
    常用的bash脚本:

    #!/bin/bash
    ## CHECK FOR ROOT
    wai=`whoami`
    if [[ "$wai" != "root" ]]
    then
     echo "
    You need to be uid 0. Re-run as:
    sudo $0
    "
     exit
    fi
    ## SET SYSTEM TO PREROUTING IP PACKETS
    echo "1" > /proc/sys/net/ipv4/ip_forward
    ## HTTP TRAFFIC
    iptables -t nat -A PREROUTING -p tcp --destination-port 80 -j REDIRECT --to-port 8118
    ## HTTPS TRAFFIC
    iptables -t nat -A PREROUTING -p tcp --destination-port 443 -j REDIRECT --to-port 8118
    ## CHECK FOR BURP
    pgrep -fl privoxy 2>&1 > /dev/null || echo "Are you sure privoxy is running?\\nOr maybe you intend to use something else I didn't check for."

    测试:

    wget http://www.google.com

    然后用tcpdump抓包看了下。

    tcpdump -Xnnv -i eth0 port 80 or port 443 or port 53

    因为如果我的代理工作正常的话,我在本地用tcpdump应该是抓不到任何数据包的。

    另一种上网模式

    使用proxychains指向Tor

    上网命令:

    proxychains iceweasel
    Proxychains msfconsole

    Proxychains 强制任何TCP客户端发起的TCP连接通过代理传输,支持SOCKS4 5 和http连接代理服务。

    配置文件: /etc/proxychains.conf

    不推荐使用动态代理。

    使用:在配置文件的末尾把新代理填进去 。

    proxy_type host port [user pass]

     

    文/忆蓉之心(简书作者)
    原文链接:http://www.jianshu.com/p/7632b1529ad8

    anyShare分享到:

    VPN信息网 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明-VPN信息网-渗透工具之TOR(洋葱头)之Linux篇
    喜欢 (2)
    发表我的评论
    取消评论

    表情 贴图 加粗 删除线 居中 斜体 签到

    Hi,您需要填写昵称和邮箱!

    • 昵称 (必填)
    • 邮箱 (必填)
    • 网址