Linux Active Directory
Last updated
Last updated
学习和实践 AWS 黑客技术:HackTricks 培训 AWS 红队专家 (ARTE) 学习和实践 GCP 黑客技术:HackTricks 培训 GCP 红队专家 (GRTE)
在 Active Directory 环境中也可以存在一台 Linux 机器。
在 AD 中的 Linux 机器可能会在文件中存储不同的 CCACHE 票证。这些票证可以像其他任何 Kerberos 票证一样被使用和滥用。要读取这些票证,您需要是票证的用户所有者或root用户。
如果您在 Linux(或 Windows 的 bash)中访问 AD,您可以尝试 https://github.com/lefayjey/linWinPwn 来枚举 AD。
您还可以查看以下页面以了解从 Linux 枚举 AD 的其他方法:
FreeIPA 是一个开源的替代 Microsoft Windows Active Directory 的解决方案,主要用于Unix 环境。它结合了一个完整的LDAP 目录和一个 MIT Kerberos 密钥分发中心,管理方式类似于 Active Directory。利用 Dogtag 证书系统进行 CA 和 RA 证书管理,支持多因素身份验证,包括智能卡。集成了 SSSD 以支持 Unix 身份验证过程。了解更多信息:
在此页面中,您将找到不同的地方,您可以在 Linux 主机中找到 Kerberos 票证,在以下页面中,您可以学习如何将这些 CCache 票证格式转换为 Kirbi(您在 Windows 中需要使用的格式),以及如何执行 PTT 攻击:
CCACHE 文件是用于存储 Kerberos 凭据的二进制格式,通常以 600 权限存储在 /tmp
中。这些文件可以通过其**名称格式 krb5cc_%{uid}
**来识别,与用户的 UID 相关联。要验证身份验证票证,环境变量 KRB5CCNAME
应设置为所需票证文件的路径,以便重用。
使用 env | grep KRB5CCNAME
列出当前用于身份验证的票证。该格式是可移植的,票证可以通过使用 export KRB5CCNAME=/tmp/ticket.ccache
设置环境变量来重用。Kerberos 票证名称格式为 krb5cc_%{uid}
,其中 uid 是用户 UID。
存储在进程内存中的 Kerberos 票证可以被提取,特别是在机器的 ptrace 保护被禁用时(/proc/sys/kernel/yama/ptrace_scope
)。一个有用的工具可以在 https://github.com/TarlogicSecurity/tickey 找到,它通过注入会话并将票证转储到 /tmp
来方便提取。
要配置和使用此工具,请按照以下步骤进行:
此过程将尝试注入到各种会话中,通过将提取的票证存储在 /tmp
中,命名约定为 __krb_UID.ccache
来指示成功。
SSSD在路径 /var/lib/sss/secrets/secrets.ldb
处维护数据库的副本。相应的密钥存储为隐藏文件,路径为 /var/lib/sss/secrets/.secrets.mkey
。默认情况下,只有在您具有 root 权限时,才能读取该密钥。
使用 SSSDKCMExtractor
调用 --database 和 --key 参数将解析数据库并 解密秘密。
凭证缓存 Kerberos blob 可以转换为可用的 Kerberos CCache 文件,可以传递给 Mimikatz/Rubeus。
服务账户密钥,对于以 root 权限运行的服务至关重要,安全地存储在 /etc/krb5.keytab
文件中。这些密钥类似于服务的密码,要求严格保密。
要检查 keytab 文件的内容,可以使用 klist
。该工具旨在显示密钥详细信息,包括用户身份验证的 NT Hash,特别是当密钥类型被识别为 23 时。
对于Linux用户,KeyTabExtract
提供了提取RC4 HMAC哈希的功能,这可以用于NTLM哈希重用。
在 macOS 上,bifrost
作为一个工具用于 keytab 文件分析。
利用提取的账户和哈希信息,可以使用工具如 crackmapexec
建立与服务器的连接。
学习和实践 AWS 黑客技术:HackTricks 培训 AWS 红队专家 (ARTE) 学习和实践 GCP 黑客技术:HackTricks 培训 GCP 红队专家 (GRTE)