绕过Cylance防护:Netcat与Nishang ICMP命令控制通道实战

本文详细解析两种绕过Cylance防护的非传统C2通信方法:通过Netcat实现原始反向Shell与利用Nishang框架的ICMP载荷建立隐蔽信道,涵盖技术细节与防御建议。

Netcat反向Shell

第三种未被Cylance检测到的C2通信方式是原始Netcat反向Shell。攻击者将Netcat可执行文件下载到目标主机并执行,同时在C2服务器上配置Netcat监听特定端口。当目标主机连接后,攻击者获得Windows系统Shell权限。

智能攻击者可能使用支持TLS加密的Nmap版Netcat(Ncat),从而增强C2通道的隐蔽性。与之前基于特定协议的C2通道不同,原始Netcat通信缺乏协议规范性。除了通过下载过滤和应用白名单防御外,边界防火墙的应用层代理可检查协议合规性并拦截此类流量。

Nishang ICMP C2通道

最后一种未被检测的非传统C2方式是利用ICMP载荷通信。通过Nishang框架中的Invoke-PowerShellIcmp.ps1脚本,攻击者在目标主机上使用PowerShell ISE(虽原生PowerShell.exe被拦截,但ISE未被限制)加载并执行脚本,建立通过ICMP回显请求传输数据的隐蔽信道。

C2服务器捕获客户端的回调后,获得目标系统的Shell访问权限。组织可通过禁止内部主机向互联网发送ICMP消息来防御此类攻击。需注意,应同等限制cmd.exe和PowerShell_ise.exe的访问权限,因其同样为攻击者提供横向移动能力。

兼容脚本与防御建议

以下PowerShell脚本通过PowerShell ISE可成功执行:

  • DomainPasswordSpray.ps1
  • Invoke-Kerberoast.ps1
  • Invoke-PowerShellICMP.ps1
  • PowerView.ps1
  • PowerUp.ps1

CylancePROTECT仅拦截对原生PowerShell解释器的调用,凸显了深度防御与协议检查的重要性。多层安全控制是弥补单点失效的关键,不存在信息安全领域的“银弹”。

comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计