使用PowerShell获取Trustedinstaller权限的问题
<div id="navCategory"><h5 class="catalogue">目录</h5><ul class="first_class_ul"><li><a href="#_label0">准备工作:</a></li><li><a href="#_label1">安装所需模块</a></li><li><a href="#_label2">获取Trustedinstaller权限</a></li></ul></div><p class="maodian"><a name="_label0"></a></p><h2>准备工作:</h2><p>Windows Powershell 版本为 5.0 以上<br />以管理员身份运行Windows Powershell(在这里可能会遇到运行X64版本而导致后续有些命令无法使用, 所以可以运行X86版本)</p>
<p class="maodian"><a name="_label1"></a></p><h2>安装所需模块</h2>
<p>首先在C盘(系统盘)根目录,新建名为 token 的文件夹<br />接着在Windows Powershell输入以下命令<strong>下载模块</strong>:</p>
<blockquote><p>Save-Module -Name NtObjectManager -Path C:\token</p></blockquote>
<p>如果没有设置 -<strong>Path</strong> 参数运行命令也会提示</p>
<div class="jb51code"><pre class="brush:plain;">PS C:\token> Save-Module -Name PowerShellGet 位于命令管道位置 1 的 cmdlet Save-Module
请为以下参数提供值:
Path: .\</pre></div>
<p>完成后会将NtObjectManager完整模块下载到C:\token目录下<br />接着在Windows Powershell输入以下命令<strong>安装模块</strong>:</p>
<blockquote><p>Install-Module -Name NtObjectManager</p></blockquote>
<p>如果提示不受信任的存储库,则选择"是"</p>
<div class="jb51code"><pre class="brush:plain;">PS C:\token> Install-Module -Name NtObjectManager
不受信任的存储库
你正在从不受信任的存储库安装模块。如果你信任该存储库,请通过运行 Set-PSRepository cmdlet 更改其 InstallationPolicy
值。是否确实要从“PSGallery”安装模块?
是(Y) 全是(A) 否(N) 全否(L) 暂停(S)[?] 帮助 (默认值为“N”): y</pre></div>
<p>安装结束后,需要让系统允许使用 Windows Powershell 脚本,输入以下命令:</p>
<blockquote><p>Set-ExecutionPolicy Unrestricted</p></blockquote>
<p>回车执行命令,系统会显示执行策略更改,输入 A 并回车确认;</p>
<div class="jb51code"><pre class="brush:plain;"> PS C:\token> Set-ExecutionPolicy Unrestricted
执行策略更改
执行策略可帮助你防止执行不信任的脚本。更改执行策略可能会产生安全风险,如 https:/go.microsoft.com/fwlink/?LinkID=135170 中的
about_Execution_Policies 帮助主题所述。是否要更改执行策略?
是(Y) 全是(A) 否(N) 全否(L) 暂停(S)[?] 帮助 (默认值为“N”): a</pre></div>
<p>然后<strong>导入模块</strong>, 使用以下命令:</p>
<blockquote><p>Import-Module -Name NtObjectManager</p></blockquote>
<p>这里会自动在系统模块路径中找到NtObjectManager, 但是如果模块路径中存在空格,可能会找不到, 那么可以通过指定模块全路径, 改变后的命令如下(需要先找到本机下载的模块路径, 使用$<strong>env:PSModulePath</strong>可以查看本机的所有模块路径):</p>
<blockquote><p>Import-Module -Name “C:\Program Files (x86)\WindowsPowerShell\Modules\NtObjectManager”</p></blockquote>
<p>完成以上工作之后则正式获取Trustedinstaller权限</p>
<p class="maodian"><a name="_label2"></a></p><h2>获取Trustedinstaller权限</h2>
<p>分别在Windows Powershell 中输入并回车执行以下命令:</p>
<blockquote><p>sc.exe start TrustedInstaller<br />Set-NtTokenPrivilege SeDebugPrivilege<br />$p = Get-NtProcess -Name TrustedInstaller.exe<br />$proc = New-Win32Process cmd.exe -CreationFlags NewConsole -ParentProcess $p</p></blockquote>
<p>命令的执行结果如下:</p>
<div class="jb51code"><pre class="brush:plain;">PS C:\token> sc.exe start TrustedInstaller
SERVICE_NAME: TrustedInstaller
TYPE : 10WIN32_OWN_PROCESS
STATE : 2START_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</pre></div>
<p>命令执行完成之后 系统会打开命令提示符, 该命令提示符具有 Trustedinstaller 权限,可以直接修改系统文件。通过以下命令可以进行测试:</p>
<blockquote><p>whoami /groups /fo list</p></blockquote>
<p style="text-align:center"><img alt="在这里插入图片描述" src="https://img.jbzj.com/file_images/article/202301/2023010514465857.png" /></p>
<p>获取到 Trustedinstaller 权限,就可以通过一些命令来修改系统文件了。</p>
<p><strong>参考链接:</strong><a href="https://www.onlinedown.net/article/10017267.htm" rel="external nofollow" target="_blank">https://www.onlinedown.net/article/10017267.htm</a></p>
頁:
[1]