令牌窃取及防范

什么是令牌

令牌(Token)是指系统中的临时密钥,相当于账户和密码,用于决定是否允许当前请求及判断当前请求是属于哪个账户的。获得了令牌,就可以在不提供密码或其他凭证的情况下访问网络和系统资源。令牌会持续存在于系统内部,除非操作系统重新启动。

令牌最大的特点是随机性和不可预测性。一般的攻击者或软件都无法将令牌猜测出来。访问令牌(Access Token)代表访问控制操作主题的系统对象。密保令牌(Security Token)也叫作认证令牌或硬件令牌,是一种用于实现计算机身份校验的物理设备。会话令牌(Session Token)是交互会话的唯一身份标识符。

伪造令牌原理

伪造令牌的核心协议是Kerberos协议。kerberos是一种网络认证协议,其设计目标是通过密钥系统为客户机/服务器应用程序提供强大的认证服务。这里有一篇文章详细地介绍了kerberos认证流程 Kerberos协议认证,这里我简单叙述一下客户端请求证书的过程
在这里插入图片描述

  1. 客户端向认证服务器发送请求,要求得到证书
  2. 认证服务器收到请求后,将包含客户端密钥的加密证书发送给客户端。该证书包含服务器Ticket(由服务器密钥加密的客户机身份和一份会话密钥)和一个临时加密密钥(Session Key)。当然,认证服务器也会向服务器发送一份证书,使服务器能够验证登录的客户端的身份。
  3. 客户端将Ticket传送给服务器。如果服务器确认该客户端的身份,就允许它登录服务器。
  4. 客户端登陆服务器后,攻击者就能通过入侵服务器来窃取客户端的身份了。

令牌窃取

倘若我们已经拿到了域普通用户的其中一个权限,但是我们无法获取到更高的权限和管理员的令牌
在这里插入图片描述
在这里插入图片描述
我们使用local_exploit_suggester模块对操作系统进行漏洞扫描,获取到了许多的漏洞信息
在这里插入图片描述
倘若我们获取到了管理员的权限,我们能看到以下的令牌
在这里插入图片描述

然后我们使用bypassuac_dotnet_profiler模块对其进行提权,获取到了目标系统的system权限
在这里插入图片描述
然后我们列出系统的所有相关令牌
在这里插入图片描述

这里解释一下,令牌的种类有两种,一种是Delegation Tokens(授权令牌),它支持交互式登录;另一种是Impersonation Tokens(模拟令牌),它支持非交互式登录。令牌的数量取决于我们获取到的shell的权限级别,权限越高,获取到的令牌数量就越多。如果攻击者伪造管理员的令牌,便可以拥有与它同等的权限。

接下来我们要进行令牌的窃取,我们要窃取的令牌是域管理员的令牌,我们输入以下命令impersonate_token HACKE\\Administrator,注意这里要加两个斜杠,否则会操作失败的
在这里插入图片描述

添加域管理员

如果我们已经获取到了目标系统的System权限,并且网络中设置了域管理进程,我们可以把进程进行迁移到域管理员进程上
在这里插入图片描述
在这里插入图片描述
我们使用如下命令在域内添加一个域管理员用户

net user shuteer xy@china110 /ad /domain
net group "domain admins" shuteer /ad /domain
net group "domain admins" /domain

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
同样,我们也可以使用另一种方式,在我们进行进程迁移到域管上后,我们可以直接在meterpreter shell上执行添加域管理员的操作,因为meterpreter它是在内存上进行访问的,因此这种方式不会留下日志痕迹,这种方式更优

add_user shuteer xy@china110 -h 域控的IP地址
add_group_user "Domain Admins" shuteer -h 域控IP地址

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

Empire下的令牌窃取

我们使用Empire工具时,可以直接使用mimikatz工具获取系统密码。可以看到我们抓取了域内两个用户的明文密码和对应的hash值
在这里插入图片描述
这里的CredID就是对应的ID值,我们使用相应的命令就能窃取到Administrator的身份令牌了

在这里插入图片描述
我们可以查看到对应的PID值
在这里插入图片描述
进程的相关信息
在这里插入图片描述
恢复令牌的权限
在这里插入图片描述

防范对策

  • 及时安装微软推送的补丁
  • 对来路不明的或者有危险的软件,既不要在系统中使用,也不要在虚拟机中使用
  • 对令牌的时效性进行限制,以防止散列值被破解后泄露有效的令牌信息。越敏感的数据,其令牌时效应该越短。如果每个操作都使用独立的令牌,就可以比较容易定位泄露令牌的操作或环节
  • 对于令牌,应采取加密存储及多重验证保护
  • 使用加密链路SSL/TLS传输令牌,以防止中间人窃听
  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

平凡的学者

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值