Access Tokens
Last updated
Last updated
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
每个登录到系统的用户持有一个包含安全信息的访问令牌,用于该登录会话。用户登录时,系统会创建一个访问令牌。每个代表用户执行的进程都有一个访问令牌的副本。该令牌标识用户、用户的组和用户的权限。令牌还包含一个登录SID(安全标识符),用于标识当前的登录会话。
您可以通过执行 whoami /all
查看此信息。
或使用来自 Sysinternals 的 Process Explorer(选择进程并访问“安全”选项卡):
当本地管理员登录时,会创建两个访问令牌:一个具有管理员权限,另一个具有普通权限。默认情况下,当该用户执行进程时,将使用具有常规(非管理员)权限的令牌。当该用户尝试以管理员身份执行任何操作(例如“以管理员身份运行”)时,UAC 将被用来请求权限。 如果您想要了解更多关于 UAC 的信息,请阅读此页面。
如果您拥有任何其他用户的有效凭据,您可以使用这些凭据创建一个新的登录会话:
访问令牌还具有LSASS内部登录会话的引用,这在进程需要访问网络的一些对象时非常有用。 您可以使用以下命令启动一个使用不同凭据访问网络服务的进程:
这是有用的,如果您拥有访问网络中对象的有效凭据,但这些凭据在当前主机内无效,因为它们仅将在网络中使用(在当前主机中将使用您当前用户的权限)。
可用的令牌有两种类型:
主令牌:它作为进程安全凭据的表示。主令牌的创建和与进程的关联是需要提升权限的操作,强调了权限分离的原则。通常,身份验证服务负责令牌的创建,而登录服务处理其与用户操作系统外壳的关联。值得注意的是,进程在创建时会继承其父进程的主令牌。
模拟令牌:使服务器应用程序能够暂时采用客户端的身份以访问安全对象。该机制分为四个操作级别:
匿名:授予服务器与未识别用户相似的访问权限。
识别:允许服务器验证客户端的身份,而不利用其进行对象访问。
模拟:使服务器能够在客户端身份下操作。
委托:类似于模拟,但包括将此身份假设扩展到服务器交互的远程系统的能力,以确保凭据的保留。
使用 metasploit 的 incognito 模块,如果您拥有足够的权限,您可以轻松地 列出 和 模拟 其他 令牌。这可能有助于执行 作为其他用户的操作。您还可以使用此技术 提升权限。
了解哪些 令牌权限可以被滥用以提升权限:
Abusing Tokens在这些教程中了解更多关于令牌的信息:https://medium.com/@seemant.bisht24/understanding-and-abusing-process-tokens-part-i-ee51671f2cfa 和 https://medium.com/@seemant.bisht24/understanding-and-abusing-access-tokens-part-ii-b9069f432962
学习和实践 AWS 黑客技术:HackTricks 培训 AWS 红队专家 (ARTE) 学习和实践 GCP 黑客技术:HackTricks 培训 GCP 红队专家 (GRTE)