Ligolo-ng工具中SMB端口转发的技术分析与解决方案
背景介绍
Ligolo-ng是一款功能强大的隧道工具,广泛应用于渗透测试和内网横向移动场景。在实际使用过程中,用户经常需要通过该工具转发SMB(445端口)流量,以实施PetitPotam、Coercer、Responder等攻击手法。然而,许多安全研究人员在使用过程中遇到了SMB端口转发失败的问题。
问题现象分析
在典型的攻击场景中,攻击者通常拥有以下设备:
- 攻击机(Kali Linux)
- 跳板机(已植入Ligolo agent的Linux主机)
- 目标域控制器
当尝试通过Ligolo建立SMB端口转发时,常见的错误表现为:
- Ligolo代理端显示"connection refused"错误
- 虽然代理程序显示已在445端口监听,但实际连接无法建立
- 使用netcat等工具测试时连接被拒绝
根本原因
经过深入分析,发现该问题主要由以下几个因素导致:
-
目标服务监听配置不当:许多SMB相关工具(如Responder)默认监听在特定接口(如tun0)而非本地回环地址(127.0.0.1)
-
端口转发规则配置错误:用户经常混淆"监听地址"(--addr)和"目标地址"(--to)参数的配置逻辑
-
IPv4/IPv6兼容性问题:在某些Linux系统上,服务可能仅监听IPv6地址,导致IPv4连接失败
解决方案与实践验证
正确配置端口转发规则
经过多次测试验证,正确的转发规则配置应遵循以下原则:
- 确保目标服务(如Responder或smbserver)确实在指定地址和端口上监听
- 使用netcat等工具预先测试连接可达性
- 在Ligolo中配置转发规则时,--to参数必须指向实际监听的服务地址
例如,当Responder监听在tun0接口(10.10.16.53)时,正确的转发命令应为:
listener_add --addr 0.0.0.0:445 --to 10.10.16.53:445
替代方案验证
当某些工具无法正常工作时,可考虑使用替代方案:
- 使用Impacket的smbserver.py:经测试验证,该工具能够与Ligolo良好配合
python smbserver.py -smb2support share /tmp
- 明确指定监听接口:对于Responder等工具,明确指定监听接口而非依赖默认配置
技术建议与最佳实践
-
预先连接测试:在配置Ligolo转发前,务必使用netcat等工具测试目标服务的可达性
-
权限检查:确保Ligolo agent以root权限运行,以便绑定特权端口(如445)
-
网络配置审查:检查系统防火墙规则和SELinux策略,确保不会阻止端口转发
-
日志分析:充分利用Ligolo的verbose模式获取详细错误信息
-
IPv4/IPv6兼容性:对于仅监听IPv6的服务,考虑添加IPv4监听或使用兼容性配置
通过以上分析和解决方案,安全研究人员可以更有效地利用Ligolo-ng工具实现SMB协议相关攻击手法的隧道转发,提升内网渗透测试的效率。
atomcodeClaude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed. Get StartedRust0133- DDeepSeek-V4-ProDeepSeek-V4-Pro(总参数 1.6 万亿,激活 49B)面向复杂推理和高级编程任务,在代码竞赛、数学推理、Agent 工作流等场景表现优异,性能接近国际前沿闭源模型。Python00
GLM-5.1GLM-5.1是智谱迄今最智能的旗舰模型,也是目前全球最强的开源模型。GLM-5.1大大提高了代码能力,在完成长程任务方面提升尤为显著。和此前分钟级交互的模型不同,它能够在一次任务中独立、持续工作超过8小时,期间自主规划、执行、自我进化,最终交付完整的工程级成果。Jinja00
MiniCPM-V-4.6这是 MiniCPM-V 系列有史以来效率与性能平衡最佳的模型。它以仅 1.3B 的参数规模,实现了性能与效率的双重突破,在全球同尺寸模型中登顶,全面超越了阿里 Qwen3.5-0.8B 与谷歌 Gemma4-E2B-it。Jinja00
MiniMax-M2.7MiniMax-M2.7 是我们首个深度参与自身进化过程的模型。M2.7 具备构建复杂智能体应用框架的能力,能够借助智能体团队、复杂技能以及动态工具搜索,完成高度精细的生产力任务。Python00
MusicFreeDesktop插件化、定制化、无广告的免费音乐播放器TypeScript00