使用PowerShell获取Trustedinstaller权限的问题
D_daytime 人气:0准备工作:
Windows Powershell 版本为 5.0 以上
以管理员身份运行Windows Powershell(在这里可能会遇到运行X64版本而导致后续有些命令无法使用, 所以可以运行X86版本)
安装所需模块
首先在C盘(系统盘)根目录,新建名为 token 的文件夹
接着在Windows Powershell输入以下命令下载模块:
Save-Module -Name NtObjectManager -Path C:\token
如果没有设置 -Path 参数运行命令也会提示
PS C:\token> Save-Module -Name PowerShellGet 位于命令管道位置 1 的 cmdlet Save-Module 请为以下参数提供值: Path: .\
完成后会将NtObjectManager完整模块下载到C:\token目录下
接着在Windows Powershell输入以下命令安装模块:
Install-Module -Name NtObjectManager
如果提示不受信任的存储库,则选择"是"
PS C:\token> Install-Module -Name NtObjectManager 不受信任的存储库 你正在从不受信任的存储库安装模块。如果你信任该存储库,请通过运行 Set-PSRepository cmdlet 更改其 InstallationPolicy 值。是否确实要从“PSGallery”安装模块? [Y] 是(Y) [A] 全是(A) [N] 否(N) [L] 全否(L) [S] 暂停(S) [?] 帮助 (默认值为“N”): y
安装结束后,需要让系统允许使用 Windows Powershell 脚本,输入以下命令:
Set-ExecutionPolicy Unrestricted
回车执行命令,系统会显示执行策略更改,输入 A 并回车确认;
PS C:\token> Set-ExecutionPolicy Unrestricted 执行策略更改 执行策略可帮助你防止执行不信任的脚本。更改执行策略可能会产生安全风险,如 https:/go.microsoft.com/fwlink/?LinkID=135170 中的 about_Execution_Policies 帮助主题所述。是否要更改执行策略? [Y] 是(Y) [A] 全是(A) [N] 否(N) [L] 全否(L) [S] 暂停(S) [?] 帮助 (默认值为“N”): a
然后导入模块, 使用以下命令:
Import-Module -Name NtObjectManager
这里会自动在系统模块路径中找到NtObjectManager, 但是如果模块路径中存在空格,可能会找不到, 那么可以通过指定模块全路径, 改变后的命令如下(需要先找到本机下载的模块路径, 使用$env:PSModulePath可以查看本机的所有模块路径):
Import-Module -Name “C:\Program Files (x86)\WindowsPowerShell\Modules\NtObjectManager”
完成以上工作之后则正式获取Trustedinstaller权限
获取Trustedinstaller权限
分别在Windows Powershell 中输入并回车执行以下命令:
sc.exe start TrustedInstaller
Set-NtTokenPrivilege SeDebugPrivilege
$p = Get-NtProcess -Name TrustedInstaller.exe
$proc = New-Win32Process cmd.exe -CreationFlags NewConsole -ParentProcess $p
命令的执行结果如下:
PS C:\token> sc.exe start TrustedInstaller SERVICE_NAME: TrustedInstaller TYPE : 10 WIN32_OWN_PROCESS STATE : 2 START_PENDING (NOT_STOPPABLE, NOT_PAUSABLE, IGNORES_SHUTDOWN) WIN32_EXIT_CODE : 0 (0x0) SERVICE_EXIT_CODE : 0 (0x0) CHECKPOINT : 0x0 WAIT_HINT : 0x7d0 PID : 14272 FLAGS : PS C:\token> Set-NtTokenPrivilege SeDebugPrivilege PS C:\token> $p = Get-NtProcess -Name TrustedInstaller.exe PS C:\token> $proc = New-Win32Process cmd.exe -CreationFlags NewConsole -ParentProcess $p
命令执行完成之后 系统会打开命令提示符, 该命令提示符具有 Trustedinstaller 权限,可以直接修改系统文件。通过以下命令可以进行测试:
whoami /groups /fo list
获取到 Trustedinstaller 权限,就可以通过一些命令来修改系统文件了。
加载全部内容