本文记录 Kali Linux 2018.1 学习使用和渗透测试的详细过程,教程为安全牛课堂里的《Kali Linux 渗透测试》课程
1. 简介
- 通过标准的 HTTP / HTTPS 代理创建隧道的工具
- 通过 HTTP CONNECT 方法封装信息
- 适用于内网使用代理并且防火墙只允许代理服务器上网的场景
- 无法创建 DNS 隧道和 ICMP 隧道
2. 实验一
1. 实验环境
-
m0n0wall
桥接:192.168.1.10 hostonly:1.1.1.1
-
kali
作为外网的代理 桥接:192.168.1.14
-
xubuntu
作为本地代理服务器 仅主机:1.1.1.12 root@lamp:~# apt-get install proxytunnel root@lamp:~# apt-get install squid3 默认 squid3 侦听 3128 端口
修改配置文件 root@lamp:~# vim /etc/squid/squid.conf http_port 1.1.1.12:3128 http_access allow !Safe_ports http_access allow CONNECT !SSL_ports http_access allow all root@lamp:~# /etc/init.d/squid restart root@lamp:~# netstat -tulnp | grep 3128
-
xu64(个人PC)
仅主机:1.1.1.14 防火墙仅允许 xubuntu(1.1.1.12)访问外网的80端口 可以配置浏览器代理 1.1.1.12:3128
访问外网代理(kali 192.168.1.14)
2. 建立隧道
-
xu64(个人PC
# -p:本地代理主机的IP(xubuntu) # -d:外网代理主机的IP(kali) # 取消浏览器代理,否则不成功 root@xu:~# proxytunnel -a 80 -p 1.1.1.12:3128 -d 192.168.1.14:80
3. 实验二
1. 实验环境
-
metasploitable 目标 ssh 服务器
桥接:192.168.1.12 打开 ssh 服务
-
kali (外网代理)
作为外网的代理 桥接:192.168.1.14 # squid3 root@kali:~# apt-get install squid3 root@kali:~# vim /etc/squid/squid.conf http_port 192.168.1.14:80 http_access allow !Safe_ports http_access allow CONNECT !SSL_ports http_access allow all root@kali:~# systemctl start squid.service
# SSH root@kali:~# vim /etc/ssh/sshd_config PermitRootLogin yes root@kali:~# systemctl restart ssh.service
-
xubuntu
作为本地代理服务器 仅主机:1.1.1.12 root@lamp:~# apt-get install proxytunnel root@lamp:~# apt-get install squid3 默认 squid3 侦听 3128 端口
修改配置文件 root@lamp:~# vim /etc/squid/squid.conf http_port 1.1.1.12:3128 http_access allow !Safe_ports http_access allow CONNECT !SSL_ports http_access allow all root@lamp:~# /etc/init.d/squid restart root@lamp:~# netstat -tulnp | grep 3128
-
xu64(个人PC)
仅主机:1.1.1.14
2. 建立隧道
-
测试1:内网PC(xu64)
# -p:内网代理(xubuntu) # -r:外网代理(kali) # -d:目标IP(metasploitable) root@xu:~# proxytunnel -a 2222 -p 1.1.1.12:3128 -r 192.168.1.14:80 -d 192.168.1.12:22
root@xu:~# ssh root@127.0.0.1 -p 2222
-
测试2:内网PC(xu64)
# -p:内网代理(xubuntu) # -r:外网代理(kali) # -d:目标IP(路由器登录页面) root@xu:~# proxytunnel -a 888 -p 1.1.1.12:3128 -r 192.168.1.14:80 -d 192.168.1.1:80
3. 实验三
在以上实验二的基础上,直接配置 ssh 客户端配置文件,可以实现直接创建代理隧道,而不是每次都得手动输入命令。
需要在运行代理命令的终端窗口打开此配置文件
root@xu:~# vim .ssh/config
192.168.1.12
Hostname 192.168.1.14
ProtocolKeepAlives 30
# -p:内网代理(xubuntu)
# -r:外网代理(kali)
# -d:目标IP(metasploitable)
ProxyCommand /usr/bin/proxytunnel -p 1.1.1.12:3128 -r 192.168.1.14:80 -d %h:%p
可以直接执行ssh连接