pretender:一款功能强大的红队MitM安全测试工具

2022-09-14
750

关于pretender

pretender是一款功能强大的红队MitM安全测试工具,该工具专为红队研究人员设计,该工具不仅能够进行MitM和中继攻击,而且还支持执行DHCPv6 DNS接管以及mDNS、LLMNR和NetBIOS-NS欺骗攻击。在该工具的帮助下,广大研究人员可以针对目标网络执行更加全面的网络安全分析和渗透测试了。

pretender主要针对的是Windows主机,旨在执行中继攻击,但该工具也可以部署在Linux、Windows和其他支持Go程序的平台。除此之外,该工具支持使用任意IP应答名称解析查询。

工具下载

广大研究人员可以使用下列命令将该项目源码克隆至本地:

git clone https://github.com/RedTeamPentesting/pretender.git

工具使用

为了获取到本地网络的详细情况,可以通过--dry模式来启动pretender,此时工具只会记录传入的查询,而不会应答任何查询请求:

pretender -i eth0 --dry

pretender -i eth0 --dry --no-ra # without router advertisements

如需通过mDNS、LLMNR和NetBIOS-NS执行本地域名解析欺骗,以及DNCPv6 DNS接管,可以直接运行下列命令:

pretender -i eth0

我们可以使用--no-dhcp-dns、--no-lnr、--no-mdns、--no-llmnr、--no-netbios和--no-ra选项禁用特定的攻击。

如果ntlmrelayx.py运行在不同的主机三,比如说10.0.0.10/fe80::5,那么我们就可以通过下列形式运行pretender:

pretender -i eth0 -4 10.0.0.10 -6 fe80::5

pretender可以设置为只响应指定域(或除特定域之外的所有域)的查询,并且它可以仅对特定主机(或除某些主机之外的所有主机)执行欺骗攻击:

pretender -i eth0 --spoof example.com --dont-spoof-for 10.0.0.3,host1.corp,fe80::f --ignore-nofqdn

如需获取更多信息,可以运行下列信息查看工具帮助信息:

pretender --help

工具构建

我们可以使用下列方式来构建pretender源码:

go build

pretender还支持使用预配置设置来编译代码,此时需要按照下列形式修改ldflags:

-ldflags '-X main.vendorInterface=eth1'

比如说,我们可以使用指定的默认接口来为Windows主机编译pretender,并配置中继IPv4地址(无颜色高亮输出):

GOOS=windows go build -trimpath -ldflags '-X "main.vendorInterface=Ethernet 2" -X main.vendorNoColor=true -X main.vendorRelayIPv4=10.0.0.10'

下面给出的是所有的vendor选项(可以通过defaults.go文件或pretender --help命令查看详细信息):

vendorInterface

vendorRelayIPv4

vendorRelayIPv6

vendorSOAHostname

vendorNoDHCPv6DNSTakeover

vendorNoDHCPv6

vendorNoDNS

vendorNoMDNS

vendorNoNetBIOS

vendorNoLLMNR

vendorNoLocalNameResolution

vendorNoRA

vendorNoIPv6LNR

vendorSpoof

vendorDontSpoof

vendorSpoofFor

vendorDontSpoofFor

vendorSpoofTypes

vendorIgnoreDHCPv6NoFQDN

vendorDryMode

vendorTTL

vendorLeaseLifetime

vendorRARouterLifetime

vendorRAPeriod

vendorStopAfter

vendorVerbose

vendorNoColor

vendorNoTimestamps

vendorLogFileName

vendorNoHostInfo

vendorHideIgnored

vendorRedirectStderr

vendorListInterfaces

许可证协议

本项目的开发与发布遵循MIT开源许可证协议。

项目地址

pretender:【GitHub传送门

参考资料

https://github.com/SecureAuthCorp/impacket

https://github.com/dirkjanm/krbrelayx

https://blog.redteam-pentesting.de/2022/introducing-pretender/

转载时必须以链接形式注明原始出处及本声明

扫描关注公众号