登录
首页 >  文章 >  软件教程

Tokenvator与WindowsTokens轻松提权攻略

时间:2025-05-14 10:51:15 191浏览 收藏

Tokenvator是一款基于.NET开发的Windows系统提权工具,旨在通过操作Windows认证令牌实现权限提升。该工具支持交互式终端运行,并通过命令行参数执行各种命令,如Steal_Token、GetSystem和GetTrustedInstaller,帮助用户获取SYSTEM或TRUSTEDINSTALLER权限。此外,Tokenvator还提供了List_Privileges和Set_Privilege功能,用于管理进程权限,并支持UAC绕过技术,适用于需要访问特权进程的场景。工具的详细使用方法和下载链接可在GitHub上找到。

今天我们将为大家介绍一款名为Tokenvator的工具,这是一款基于.NET开发的Windows系统提权工具。

工具下载地址:https://github.com/0xbadjuju/Tokenvator

基本使用方法Tokenvator可以在交互式终端中直接运行,具体的执行命令可以通过命令行参数提供。在交互模式下,可以使用tab键进行命令补全,或双击tab键获取帮助信息。

如何使用Tokenvator和Windows Tokens实现提权以下大部分截图展示了在交互模式下运行命令的情况:

如何使用Tokenvator和Windows Tokens实现提权Steal_Token从最基本的功能来看,Tokenvator可以用来访问并修改Windows认证令牌。为了获取特定进程的令牌,我们需要结合目标进程的PID来运行Steal_Token命令。

如何使用Tokenvator和Windows Tokens实现提权我们也可以通过添加额外的命令选项来使用新的访问令牌。

如何使用Tokenvator和Windows Tokens实现提权如何使用Tokenvator和Windows Tokens实现提权GetSystem通常,我们经常需要窃取的是NT AUTHORITY\SYSTEM账号,而GetSystem命令可以帮助我们自动搜索并访问SYSTEM令牌。它的使用语句与Steal_Token类似:

如何使用Tokenvator和Windows Tokens实现提权如何使用Tokenvator和Windows Tokens实现提权在某些情况下,如果没有提升到SYSTEM权限,我们可能无法直接访问特定进程的令牌,比如NT SERVICE账号(本地SQL服务进程)。

如何使用Tokenvator和Windows Tokens实现提权GetTrustedInstaller还有一种常见情况,即SYSTEM32目录或部分注册表内容属于TRUSTEDINSTALLER组。为了修改这些位置的数据,我们要么获取数据的所有权,要么获取TRUSTEDINSTALLER组成员的访问令牌。与GetSystem类似,GetTrustedInstaller也是Steal_Token的一个封装,它可以启动TrustedInstaller服务并获取相应的令牌。

如何使用Tokenvator和Windows Tokens实现提权List_Privileges和Set_Privilege有时候,我们的进程不一定拥有完成任务所需的权限。例如,为了访问当前用户无法访问的进程,我们就需要SeDebugPrivilege的帮助。下图展示了在一个高度完整的进程中对令牌的切分(UAC Elevated – TokenElevationTypeFull)。

如何使用Tokenvator和Windows Tokens实现提权接下来,我们尝试以管理员身份运行notepad.exe,并查看其访问令牌:

如何使用Tokenvator和Windows Tokens实现提权测试完notepad.exe的令牌后,我们可以尝试增加SeLoadDriverPrivilege,看看会发生什么。注意:权限名称是大小写敏感的。

如何使用Tokenvator和Windows Tokens实现提权显然,notepad.exe现在可以加载驱动程序了,而且我们还可以做更多的事情,我们将在未来增加权限移除的功能,请期待。

UAC绕过实现UAC绕过有许多方法,但最有趣的一种是修改令牌。FuzzySecurity在利用Windows令牌实现UAC绕过方面做了很多研究,感兴趣的同学可以查看其GitHub代码库【传送门】,Tokenvator也包含了FuzzySecurity实现的技术。在下面的测试中,我们为提权的令牌可以用来访问当前用户拥有的特权进程,并生成特权Shell。

如何使用Tokenvator和Windows Tokens实现提权这种方法以后很可能不会被修复,因为这更像是一种功能。

查找用户进程首先,我们需要查看系统注册的会话信息:

如何使用Tokenvator和Windows Tokens实现提权下面是List_Processes命令实现的内容,即获取用户进程的概览:

如何使用Tokenvator和Windows Tokens实现提权List_Processes利用的是主机的原生API,在列举进程和用户方面速度非常快。由于在某些情况下如果没有实现提权的话,某些功能还是无法正常运行的,因此List_Processes_WMI便应运而生。显然,它的功能是通过WMI实现的,所以它的速度肯定没有List_Processes快,但是它可以在非提权场景下正常运行。

如何使用Tokenvator和Windows Tokens实现提权我们还可以直接列举出特定用户场景下所有运行的进程信息:

如何使用Tokenvator和Windows Tokens实现提权与List_Processes机制类似,它也能够在非特权场景下通过WMI完成相同的工作:

如何使用Tokenvator和Windows Tokens实现提权总结这款工具是我与NetSPI团队共同开发的,希望能为大家提供帮助。如果大家在使用过程中发现了问题,可以在GitHub上留言。

  • 参考来源:netspi,FB小编Alpha_h4ck编译,转载请注明来自FreeBuf.COM

终于介绍完啦!小伙伴们,这篇关于《Tokenvator与WindowsTokens轻松提权攻略》的介绍应该让你收获多多了吧!欢迎大家收藏或分享给更多需要学习的朋友吧~golang学习网公众号也会发布文章相关知识,快来关注吧!

相关阅读
更多>
最新阅读
更多>
课程推荐
更多>