集权攻击-无权限条件下AD域凭据获取与利用分析

前言

对AD域攻击的前期,在没有任何域内据点或域用户凭据时,攻击者往往会使用用户名枚举、密码爆破、密码喷洒、Roasting等手段进行域用户凭据的窃取,本篇文章将针对AD域攻击时无权限环境下对域用户的信息收集及凭据窃取进行分析。

用户名枚举&密码爆破/喷洒

在 Kerberos 协议认证的 AS-REQ 阶段,cname 的值是用户名。当用户不存在时,返回包提示错误。当用户名存在,密码正确和密码错误时,AS-REP的响应内容不一样。所以可以利用这点,对域内进行域用户枚举和密码喷洒等攻击。

用户枚举

正常域用户登录主机,我们可以通过 net user /domain来列举出域内的用户。但是当我们用非域用户进行登录时,是不能使用 net user /domain这条命令的。而当主机不在域内但是能与域控通信时,我们可以通过域内用户枚举来探测域内的用户。

在AS-REQ阶段客户端向KDC发送用户名,KDC对用户名进行验证,用户存在和不存在返回的数据包不一样。

当用户名存在,密码错误:返回KRB5DC_ERR_PREAUTH_REQUIRED,并携带e-data数据。

当用户名不存在:返回KRB5DC_ERR_C_PRINCIPAL_UNKNOWN,不携带e-data数据。

密码喷洒/密码爆破

在大多数域内会使用密码策略,密码错误尝试次数超过指定次数后会导致账号被锁定,因此在实战环境中密码爆破应用较少,我们在此不展开做过多的介绍。

密码喷洒顾名思义是用一个密码去碰撞很多账号,此方法能有效的避免账号被锁定的问题,因此可以通过用户名枚举获取到域内用户后,使用通用密码进行喷洒攻击。

在确认用户存在后,客户端又会发送一个AS-REQ请求,如果密码正确,则返回AS-REP。否则返回 KRB5KDC_ERP_PREAUTH_FAILED

密码正确:

密码错误:

kerberoasting

我们简单回顾服务票据的请求流程,当域内用户去请求域内某个服务资源时,先会通过AS-REQ进行身份认证,通过后会返回TGT给用户,用户使用TGT发起TGS请求,KDC会返回一个用对应服务账户的Hash加密的服务票据。那么如果我们有一个域用户

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值