使用PowerShell获取Trustedinstaller权限的问题

目录
  • 准备工作:
  • 安装所需模块
  • 获取Trustedinstaller权限

准备工作:

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 权限,就可以通过一些命令来修改系统文件了。

参考链接:https://www.onlinedown.net/article/10017267.htm

到此这篇关于使用PowerShell获取Trustedinstaller权限的文章就介绍到这了,更多相关PowerShell获取Trustedinstaller权限内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • 从迷你todo 命令行入门Rust示例详解

    目录 一个迷你 todo 应用 需要安装的依赖 文件目录组织 主文件 读取文件 状态处理工厂函数 Trait(特征) Create trait Get trait Delete trait Edit trait 导出 trait 为 struct 实现 trait Pending Done 导出 struct Process 输入处理 最后 一个迷你 todo 应用 该文章将使用 Rust 从零去做一个入门级别的 TODO 命令行应用 你将学会什么? 基本的命令行操作 文件读写和文件结构组织 我

  • Rust个人学习小结之Rust的循环

    今天主要了解了Rust语言的3种循环方法: loop.while.for. 首先聊聊loop,loop的主要作用是循环某段代码段,使用方法如下 fn main() { loop { println!("loop test"); } } 其中打印loop test这条代码会无限循环,运行结果如下 loop testloop testloop testloop testloop testloop testloop testloop testloop testloop testloop te

  • Rust 所有权机制原理深入剖析

    目录 what's ownership? Scope (作用域) ownership transfer(所有权转移) move clone copy References and Borrowing(引用和借用) Mutable References(可变引用) Dangling References(悬垂引用) what's ownership? 常见的高级语言都有自己的 Garbage Collection(GC)机制来管理程序运行的内存,例如 Java.Go 等.而 Rust 引入了一种全

  • rust引用和借用的使用小结

    目录 引用和借用 引用的使用 可变引用与不可变引用 NLL 总结 引用和借用 如果每次都发生所有权的转移,程序的编写就会变得异常复杂.因此rust和其它编程语言类似,提供了引用的方式来操作.获取变量的引用,称为借用.类似于你借别人的东西来使用,但是这个东西的所有者不是你.引用不会发生所有权的转移. 引用的使用 在rust中,引用的语法非常简单.通过&来取引用,通过*来解引用.例如: fn main() { let s1: String = "Hello".to_string()

  • 使用PowerShell获取Trustedinstaller权限的问题

    目录 准备工作: 安装所需模块 获取Trustedinstaller权限 准备工作: Windows Powershell 版本为 5.0 以上以管理员身份运行Windows Powershell(在这里可能会遇到运行X64版本而导致后续有些命令无法使用, 所以可以运行X86版本) 安装所需模块 首先在C盘(系统盘)根目录,新建名为 token 的文件夹接着在Windows Powershell输入以下命令下载模块: Save-Module -Name NtObjectManager -Path

  • PowerShell获取当前进程PID的小技巧

    本文介绍如何在PowerShell中获取当前PowerShell进程的PID,然后用它来做一些有趣的事情. 有没有试过在powershell命令行窗口中输入"$pid"?试试看. 复制代码 代码如下: PS C:\Users\zhanghong> $pid 4404 对于PID,我们貌似不陌生.是的,它就是一个进程的进程ID.那这里的"$pid"是谁的进程ID呢?是当前powershell这个命令行窗口的powershell进程的进程ID.注意,小编在先打开一

  • Android系统中使用shareuserid获取系统权限的教程

    Android会为每个apk进程分配一个单独的空间(比如只能访问/data/data/自己包名下面的文件),一般情况下apk之间是禁止相互访问数据的.通过Shared User id,拥有同一个User id的多个APK可以配置成运行在同一个进程中.所以默认就是可以互相访问任意数据. 也可以配置成运行成不同的进程, 同时可以访问其他APK的数据目录下的数据库和文件.就像访问本程序的数据一样(使用IPC机制,不同进程之间,比如AIDL). 一.使用同一个shareuserid,多个apk运行到同一

  • PowerShell获取系统环境变量的方法

    本文介绍在PowerShell中,如何获取环境变量的值.可以列出所有的环境变量,也可以指定通过变量名称来获取环境变量的值. 在开发过程中,经常需要用到环境变量(比如当前计算机名.登录的用户名.Path环境变量等),那么在PowerShell中如何知道有哪些环境变量呢?又该如何获取指定环境变量的值呢? PowerShell通过环境变量提供者(Environment Provider)让我们可以访问环境变量.默认情况下,PowerShell创建了一个驱动器(名称为env)来与Environment

  • APK程序获取system权限的方法

    本文实例讲述了APK程序获取system权限的方法.分享给大家供大家参考.具体如下: 最近项目需要,用NDK编程,遇到了些问题,在访问底层的设备时,没有权限,后来就在网上查找了资料,一开始还以为有root权限,找来找去,弄来弄去,程序都获取不到root权限,后来找到原来用system权限就可以访问设备了.网上找到2种方法,一是在源码中编译,二是修改密钥.刚开始弄android的,对源码不了解,就选择了第二种方法. 下面是操作步骤: 1.在代码中,AndroidManifest.xml文件的man

  • Android获取ROOT权限的实例代码

    获取Android的ROOT权限其实很简单,只要在Runtime下执行命令"su"就可以了. 复制代码 代码如下: // 获取ROOT权限public void get_root(){ if (is_root()){        Toast.makeText(mCtx, "已经具有ROOT权限!", Toast.LENGTH_LONG).show();    }    else{        try{            progress_dialog = P

  • Android手机获取root权限并实现关机重启功能的方法

    本文实例讲述了Android手机获取root权限并实现关机重启功能的方法,是Android程序设计中非常常见的重要功能.现分享给大家,供大家在Android程序开发中参考之用. 具体功能代码如下: /* * 执行命令 * @param command * 1.获取root权限 "chmod 777 "+getPackageCodePath() * 2.关机 reboot -p * 3.重启 reboot */ public static boolean execCmd(String c

  • Android 获取 usb 权限的两种方法

    前言: 最近工作上遇到几个USB模块在android平台上适配使用的情况,所以要用到USB权限获取问题 ##USB权限获取有以下2种方式: 一.直接在AndroidManifest.xml文件中进行如下配置: <activity android:name=".DemoCustomAndroidUSBActivity" android:label="@string/app_name"> <intent-filter> <action an

  • Android6.0获取GPS定位和获取位置权限和位置信息的方法

    1.添加权限--6.0之后要动态获取,下面会说 <uses-permission android:name= "android.permission.ACCESS_FINE_LOCATION"/> 2.直接上代码,不多说,代码中注释很详细. private static final int BAIDU_READ_PHONE_STATE = 100;//定位权限请求 private static final int PRIVATE_CODE = 1315;//开启GPS权限

  • Android普通应用升级为系统应用并获取系统权限的操作

    有时候使用某些api需要使用系统权限,如调用PackageInstaller的相关接口,需要android.permission.INSTALL_PACKAGES权限,该权限系统只会授权给系统应用,此时可以考虑将我们的应用升级为系统应用,升级为系统应用有两种方法: 1.将apk放到/system/app目录下,重启手机即可,此方法比较粗暴,而且需要修改/system目录的读写权限,因此需要root,而且随着Android系统版本对权限管理越来越严,root和修改读写权限更繁琐和复杂 2.添加sh

随机推荐