使用Portspoof进行网络欺骗:增强端口扫描防护

本文详细介绍了如何使用Portspoof工具将未使用的TCP/IP端口伪装成各种服务,有效延长攻击者端口扫描时间,增强网络安全性。通过iptables规则配置和签名文件使用,实现高效的网络欺骗策略。

如何使用Portspoof(网络欺骗)

欢迎观看本视频!今天我们将介绍Portspoof——一款出色的工具,它能将未使用的TCP/IP端口转换为各种服务响应,当攻击者尝试扫描这些端口时会产生误导。本视频是我们Wild West Hackin’ Fest(圣地亚哥和Deadwood站)及Black Hat会议上"主动防御与网络欺骗"课程的组成部分。

我们将使用主动防御先驱发行版(Active Defense Harbinger Distribution)。如需获取该发行版,请访问activecountermeasures.com,进入免费工具栏目下载ADHD虚拟机。所有使用说明均位于虚拟机桌面的ADHD使用文档中。

配置Portspoof

首先进入"Annoyance"菜单,选择Portspoof选项。该工具提供详细网站说明其功能和工作原理。

第一步:配置iptables规则

Portspoof的工作原理是在特定端口(本例为4444)监听,并通过iptables防火墙将所有进入指定端口范围的流量重定向到该端口。执行以下命令:

1
iptables -t nat -A PREROUTING -p tcp -m tcp --dport 1:65535 -j REDIRECT --to-ports 4444

此规则将1-65535端口的所有TCP流量重定向到本地4444端口。

基本功能演示

运行Portspoof后,所有被扫描端口都会返回开放状态(发送SYN/ACK响应)。通过Nmap扫描1-10端口可以看到:

  • 初始状态:所有端口显示关闭(connection refused)
  • 启用Portspoof后:所有端口显示开放

高级功能:签名文件

Portspoof的真正威力在于使用签名文件。不同服务会返回特定标识信息(banner),例如SSH服务器会返回OpenSSH版本信息。通过签名文件,Portspoof能模拟各种服务的响应特征。

启用签名文件:

1
portspoof -c /usr/local/etc/portspoof/signatures

效果验证

执行Nmap版本扫描(-sV)时:

  • 扫描时间显著延长(10端口耗时32秒)
  • 返回随机服务标识:Telnet、Webtam、IMAP等各种虚假服务信息
  • 需要多次扫描和手动验证才能识别真实服务

防御价值

Portspoof通过制造大量噪音显著增加攻击者的侦察时间:

  • 检测时间 + 响应时间 < 攻击者成功入侵时间
  • 65,535端口全面扫描将消耗极长时间
  • 迫使攻击者进行多次验证和手动检查

该工具内置于主动防御先驱发行版,广泛应用于我们的网络欺骗课程。如需深入学习,我们提供为期两天的专题培训课程。

John Strand,每周三欢迎收听Enterprise Security Weekly安全播客


延伸学习

  • SOC核心技能
  • 主动防御与网络欺骗
  • BHIS与MITRE ATT&CK安全入门
  • 渗透测试基础

提供直播/虚拟和点播课程形式

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