关于gssapi-abuse
gssapi-abuse是一款针对GSSAPI滥用的安全检测工具,在该工具的帮助下,广大研究人员可以直接在目标活动目录网络环境中检测存在GSSAPI滥用风险的主机。
功能介绍
当前版本的gssapi-abuse具备以下两个功能:
1、枚举加入了活动目录中的非Windows主机,且这些主机能够通过SSH提供GSSAPI身份验证; 2、针对没有正确的正向/反向查找DNS条目的GSSAPI可用主机执行动态DNS更新。在匹配服务主体时,基于GSSAPI的身份验证是严格的,因此DNS条目应通过主机名和IP地址与服务主体名称匹配;
一级标题
gssapi-abuse的正确运行需要一个有效的krb5栈(拥有正确配置的krb5.conf)。
工具安装
由于该工具基于Python 3开发,因此我们首先需要在本地设备上安装并配置好Python 3环境。
接下来,广大研究人员可以使用下列命令将该项目源码克隆至本地:
git clone https://github.com/CCob/gssapi-abuse.git
在Windows主机中,需要单独安装MIT Kerberos软件。Windows krb5.conf可以在“C:\ProgramData\MIT\Kerberos5\krb5.conf”路径下找到。
Linux主机中,需要在安装工具依赖组件之前安装好libkrb5-dev包。
完成上述配置之后,我们就可以使用pip/pip3工具和项目提供的requirements.txt文件安装该工具所需的其他依赖组件了:
cd gssapi-abuse
pip install -r requirements.txt
工具使用
在枚举模式下,gssapi-abuse会连接到目标活动目录,并执行LDAP搜索以查询出所有Operating System属性中不包含单词“Windows”的主机。
获取到非Windows主机列表之后,gssapi-abuse将尝试通过SSH连接列表中的每一台主机,以判断是否支持基于GSSAPI的身份验证。
使用样例
python .\gssapi-abuse.py -d ad.ginge.com enum -u john.doe -p SuperSecret!
[=] Found 2 non Windows machines registered within AD
[!] Host ubuntu.ad.ginge.com does not have GSSAPI enabled over SSH, ignoring
[+] Host centos.ad.ginge.com has GSSAPI enabled over SSH
DNS模式支持使用Kerberos和dnspython并通过端口53和DNS-TSIG协议执行经过身份验证的DNS更新。目前,DNS模式依赖于一个针对特定域控制器的工作krb5配置(包含有效的TGT或DNS服务凭证),例如dns/dc1.victim.local。
使用样例
针对ahost.ad.ginge.com主机添加一个DNS A记录:
python .\gssapi-abuse.py -d ad.ginge.com dns -t ahost -a add --type A --data 192.168.128.50
[+] Successfully authenticated to DNS server win-af8ki8e5414.ad.ginge.com
[=] Adding A record for target ahost using data 192.168.128.50
[+] Applied 1 updates successfully
针对ahost.ad.ginge.com主机添加一个反向PTR记录:
python .\gssapi-abuse.py -d ad.ginge.com dns --zone 128.168.192.in-addr.arpa -t 50 -a add --type PTR --data ahost.ad.ginge.com.
[+] Successfully authenticated to DNS server win-af8ki8e5414.ad.ginge.com
[=] Adding PTR record for target 50 using data ahost.ad.ginge.com.
[+] Applied 1 updates successfully
执行后的正向和反向DNS查询结果如下:
nslookup ahost.ad.ginge.com
Server: WIN-AF8KI8E5414.ad.ginge.com
Address: 192.168.128.1
Name: ahost.ad.ginge.com
Address: 192.168.128.50
nslookup 192.168.128.50
Server: WIN-AF8KI8E5414.ad.ginge.com
Address: 192.168.128.1
Name: ahost.ad.ginge.com
Address: 192.168.128.50
项目地址
gssapi-abuse:
https://github.com/CCob/gssapi-abuse