.. | ||
abuse-seloaddriverprivilege.md | ||
README.md |
滥用令牌
☁️ HackTricks 云 ☁️ -🐦 推特 🐦 - 🎙️ Twitch 🎙️ - 🎥 YouTube 🎥
- 你在一家网络安全公司工作吗?想要在 HackTricks 中看到你的公司广告吗?或者你想要获取最新版本的 PEASS 或下载 HackTricks 的 PDF吗?请查看订阅计划!
- 发现我们的独家NFTs收藏品——The PEASS Family
- 获取官方 PEASS & HackTricks 商品
- 加入💬 Discord 群组 或 Telegram 群组,或者关注我在Twitter上的🐦@carlospolopm。
- 通过向hacktricks 仓库和hacktricks-cloud 仓库提交 PR 来分享你的黑客技巧。
令牌
如果你不知道什么是 Windows 访问令牌,请在继续之前阅读本页面:
{% content-ref url="../access-tokens.md" %} access-tokens.md {% endcontent-ref %}
也许你可以通过滥用你已有的令牌来提升权限
SeImpersonatePrivilege (3.1.1)
任何持有此权限的进程都可以模拟(但不能创建)其能够获取句柄的任何令牌。你可以通过使Windows 服务(DCOM)对漏洞执行NTLM 认证,然后以SYSTEM身份执行进程,从中获取一个特权令牌。使用 juicy-potato、RogueWinRM(需要禁用 winrm)、SweetPotato、PrintSpoofer 来利用它:
{% content-ref url="../roguepotato-and-printspoofer.md" %} roguepotato-and-printspoofer.md {% endcontent-ref %}
{% content-ref url="../juicypotato.md" %} juicypotato.md {% endcontent-ref %}
SeAssignPrimaryPrivilege (3.1.2)
它与SeImpersonatePrivilege非常相似,它将使用相同的方法来获取特权令牌。
然后,此权限允许为新的/挂起的进程分配主令牌。使用特权模拟令牌,你可以派生一个主令牌(DuplicateTokenEx)。
有了令牌,你可以使用 'CreateProcessAsUser' 创建一个新进程,或者创建一个挂起的进程并设置令牌(通常情况下,你不能修改正在运行的进程的主令牌)。
SeTcbPrivilege (3.1.3)
如果你启用了此令牌,你可以使用KERB_S4U_LOGON来获取任何其他用户的模拟令牌,而无需知道凭据,将一个任意组(管理员)添加到令牌中,将令牌的完整性级别设置为“中等”,并将此令牌分配给当前线程(SetThreadToken)。
SeBackupPrivilege (3.1.4)
此权限会导致系统授予对任何文件的所有读取访问权限(仅限读取)。
使用它可以从注册表中读取本地管理员帐户的密码哈希,然后使用哈希(PTH)使用“psexec”或“wmicexec”。
如果本地管理员被禁用,或者配置为远程连接时本地管理员不是管理员,则此攻击将无效。
你可以使用以下方法滥用此权限:
- https://github.com/Hackplayers/PsCabesha-tools/blob/master/Privesc/Acl-FullControl.ps1
- https://github.com/giuliano108/SeBackupPrivilege/tree/master/SeBackupPrivilegeCmdLets/bin/Debug
- 在https://www.youtube.com/watch?v=IfCysW0Od8w&t=2610&ab_channel=IppSec中关注IppSec
- 或者按照以下链接中的使用备份操作员升级权限部分的说明:
{% content-ref url="../../active-directory-methodology/privileged-groups-and-token-privileges.md" %} privileged-groups-and-token-privileges.md {% endcontent-ref %}
SeRestorePrivilege (3.1.5)
具有写访问权限,可以控制系统上的任何文件,而不考虑文件的访问控制列表(ACL)。
您可以修改服务、DLL劫持、设置调试器(Image File Execution Options)... 有很多升级选项。
SeCreateTokenPrivilege (3.1.6)
如果用户可以模拟令牌(即使没有SeImpersonatePrivilege),则此令牌可以用作EoP方法仅限于。
在可能的情况下,如果令牌是为同一用户并且完整性级别小于或等于当前进程的完整性级别,则用户可以模拟该令牌。
在这种情况下,用户可以创建一个模拟令牌并向其添加一个特权组SID。
SeLoadDriverPrivilege (3.1.7)
加载和卸载设备驱动程序。
您需要在注册表中创建一个条目,并为ImagePath和Type设置值。
由于无法写入HKLM,您必须使用HKCU。但是对于内核来说,HKCU没有任何意义,指导内核在此处使用预期的驱动程序配置路径的方法是使用路径:"\Registry\User\S-1-5-21-582075628-3447520101-2530640108-1003\System\CurrentControlSet\Services\DriverName"(ID是当前用户的RID)。
因此,您必须在HKCU中创建所有这些路径并设置ImagePath(要执行的二进制文件的路径)和Type(SERVICE_KERNEL_DRIVER 0x00000001)。
{% content-ref url="abuse-seloaddriverprivilege.md" %} abuse-seloaddriverprivilege.md {% endcontent-ref %}
SeTakeOwnershipPrivilege (3.1.8)
此特权与SeRestorePrivilege非常相似。
它允许进程通过授予WRITE_OWNER访问权限来“接管对象的所有权,而无需被授予自主访问权限”。
首先,您必须接管要写入的注册表键,并修改DACL以便您可以对其进行写入。
takeown /f 'C:\some\file.txt' #Now the file is owned by you
icacls 'C:\some\file.txt' /grant <your_username>:F #Now you have full access
# Use this with files that might contain credentials such as
%WINDIR%\repair\sam
%WINDIR%\repair\system
%WINDIR%\repair\software
%WINDIR%\repair\security
%WINDIR%\system32\config\security.sav
%WINDIR%\system32\config\software.sav
%WINDIR%\system32\config\system.sav
%WINDIR%\system32\config\SecEvent.Evt
%WINDIR%\system32\config\default.sav
c:\inetpub\wwwwroot\web.config
SeDebugPrivilege (3.1.9)
它允许持有者调试另一个进程,包括读取和写入该进程的内存。
有很多不同的内存注入策略可以利用这个权限,逃避大多数 AV/HIPS 解决方案。
转储内存
滥用这个权限的一个例子是运行 ProcDump 来自 SysInternals 来转储进程内存。例如,**本地安全子系统服务(LSASS)**进程,在用户登录系统后存储用户凭据。
然后,您可以加载此转储文件到 mimikatz 中以获取密码:
mimikatz.exe
mimikatz # log
mimikatz # sekurlsa::minidump lsass.dmp
mimikatz # sekurlsa::logonpasswords
RCE
如果你想获取一个 NT SYSTEM
shell,你可以使用:
# Get the PID of a process running as NT SYSTEM
import-module psgetsys.ps1; [MyProcess]::CreateProcessFromParent(<system_pid>,<command_to_execute>)
检查权限
To escalate privileges on a Windows system, it is important to first check the current privileges of the user. This can be done using various methods:
1. Whoami
The whoami
command can be used to display the current user and group information, including the privileges associated with the user.
whoami /priv
2. Systeminfo
The systeminfo
command provides detailed information about the system, including the privileges of the current user.
systeminfo
3. PowerShell
PowerShell can also be used to check the privileges of the current user. The following command can be used:
(Get-Process -id $pid).StartInfo.EnvironmentVariables
4. AccessChk
AccessChk is a command-line tool that can be used to check the privileges of a user or process. It provides detailed information about the access rights and privileges associated with a user or process.
accesschk.exe -a <username>
By checking the privileges of the current user, you can identify potential vulnerabilities and determine the appropriate privilege escalation techniques to use.
whoami /priv
出现为“已禁用”的令牌可以被启用,实际上可以滥用“已启用”和“已禁用”令牌。
启用所有令牌
您可以使用脚本EnableAllTokenPrivs.ps1来启用所有令牌:
.\EnableAllTokenPrivs.ps1
whoami /priv
或者在这个帖子中嵌入的脚本。
表格
完整的令牌权限速查表请参考https://github.com/gtworek/Priv2Admin,下面的摘要仅列出了直接利用权限以获取管理员会话或读取敏感文件的方法。
权限 | 影响 | 工具 | 执行路径 | 备注 |
---|---|---|---|---|
SeAssignPrimaryToken |
管理员 | 第三方工具 | "它允许用户模拟令牌并使用诸如potato.exe、rottenpotato.exe和juicypotato.exe之类的工具进行提权到nt系统" | 感谢Aurélien Chalot的更新。我将尽快尝试将其重新表达为更像是配方的东西。 |
SeBackup |
威胁 | 内置命令 | 使用robocopy /b 读取敏感文件 |
- 如果您可以读取%WINDIR%\MEMORY.DMP,则可能更有趣 |
SeCreateToken |
管理员 | 第三方工具 | 使用NtCreateToken 创建任意令牌,包括本地管理员权限。 |
|
SeDebug |
管理员 | PowerShell | 复制lsass.exe 令牌。 |
脚本可在FuzzySecurity找到。 |
SeLoadDriver |
管理员 | 第三方工具 | 1. 加载有漏洞的内核驱动程序,例如 |
1. |
SeRestore |
管理员 | PowerShell | 1. 使用具有SeRestore权限的PowerShell/ISE启动。 |
某些AV软件可能会检测到此攻击。 替代方法依赖于使用相同权限替换存储在“Program Files”中的服务二进制文件 |
SeTakeOwnership |
管理员 | 内置命令 | 1. |
某些AV软件可能会检测到此攻击。 替代方法依赖于使用相同权限替换存储在“Program Files”中的服务二进制文件。 |
SeTcb |
管理员 | 第三方工具 | 操纵令牌以包含本地管理员权限。可能需要SeImpersonate。 待验证。 |
参考资料
- 查看定义Windows令牌的表格:https://github.com/gtworek/Priv2Admin
- 阅读关于使用令牌进行权限提升的这篇论文。
☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥
- 您在一家网络安全公司工作吗?您想在HackTricks中为您的公司做广告吗?或者您想获得最新版本的PEASS或下载PDF格式的HackTricks吗?请查看订阅计划!
- 发现我们的独家NFTs收藏品——The PEASS Family
- 获取官方PEASS和HackTricks周边产品
- 加入💬 Discord群组或电报群组,或在Twitter上关注我🐦@carlospolopm。
- 通过向hacktricks repo和hacktricks-cloud repo提交PR来分享您的黑客技巧。