假冒令牌可以假冒一个网络中的另一个用户进行各种操作。令牌包括登录会话的安全信息,如用户身份识别、用户组和用户权限。
当一个用户登录Windows系统时,它被给定一个访问令牌作为它认证会话的一部分。例如,一个入侵用户可能需要以域管理员处理一个特定任务,当它使用令牌便可假冒域管理员进行工作。
Windows安全相关概念
Login Session:不同帐号登录产生不同的登录Session,代表不同的帐号权限。
Tokens简介
·与进程相关联,进程创建时根据LoginSession分配对应Token,含有该进程用户帐号、组信息、权限信息等
·用户每次登录,产生LoginSession分配对应Token
·访问资源时提交Token进行身份验证,类似于Web Cookie
·Delegate Token:交互登录会话( 例如本地用户直接登录、远程桌面登录 )
·Impersonate Token:非交互登录会话( 利用net use访问共享文件夹 )
两种令牌都是在重启后才会消除,具有Delegation token的用户在注销后,该Token将变成Impersonation token,依旧有效
第一种方法:Incognito伪装
·独立软件,被集成到到msf的meterpreter中
·不用获取帐号密码窃取token将自己伪装成合法用户
·适用于域环境下提权渗透多操作系统
meterpreter> load incognito
输入?或者help弹出帮助信息

list_tokens查看用户在以前登录该机器时保留的token信息


红框圈住的是token信息,一个是普通用户的,一个是域管理员的
通过获取到的域管理员的Token伪装成域管理员,调用impersonate_token

再次查看uid就可以看到已经是EA域下的域管理账户了

第二种方法:利用steal_token从进程窃取令牌
利用用户启动的进程来窃取令牌登录,这里随便选用pid 4316进行测试,这是TEST/test1启动的
执行命令steal_token 4316

进程可通过ps命令进行查看,用户在登录使用的过程中都会在进程中留下token信息。 从而进程窃取令牌成功 。
返回原来的用户:输入rev2self
或者drop_token