kerbeos暴力破解

1. 原理

  • 用户发起登录请求时,客户端会向认证服务器(AS)发送一个包含用户名和密码的认证请求
  • 认证服务器的任务是验证用户名和密码,若验证通过,则返回一个 TGT(票据授予票据)
  • 即使密码错误也会提示用户名是否正确(可以帮助我们爆破出域内的用户)

2. 作用

  • 在无域内账户时,爆破可以帮助我们获取到有效的域内用户

3. 优点

  • 执行攻击不需要用到域帐户,只需连接到 KDC 。
  • 使用Kerberos pre-auth bruteforcing的速度更快
  • Kerberos 预身份验证的错误不会在 Active Directory 中记录为正常登录失败事件(4625),而是记录在 Kerberos 预身份验证失败的特定日志里(4771)。
  • Kerberos 在输入账号时就算密码错误,也会提示用户名是否正确,这样的话我们就不必再去枚举用户名了。
  • 在 Kerberos 暴力破解中,还可以在不需要预身份验证的情况下发现用户帐户,这对于执行 7.AS-REP-Roasting攻击非常有用。

    由于没有域用户的口令,所以无法通过LDAP协议枚举出所有域用户,而且使用LDAP协议进行暴力破解时会产生日志(4625 - An account failed to log on)

4. 攻击流程

直接使用 Kerbrute 工具进行即可Kerberos Brute-Force
需要准备字典 推荐字典 SecLists

5. 防御

  • 启用 Kerberos 预认证(Pre-authentication)
  • 限制失败认证尝试次数
  • 设置强密码
  • 启用多因素认证(MFA)