在 Windows 各系统版本中,SYSTEM 权限是系统最高权限,拥有此权限你可以为所欲为。在 Windows 7 及其以上版本中,系统中最常用的是普通用户权限(local user),如果右键“以管理员身份运行”,UAC弹框确认后,即可获得管理员权限(Administrator),而获取比 Administrator 更高的系统(SYSTEM)权限,普通的用户操作是没办法得到的。以下介绍一种方式,通过Administrator权限获取SYSTEM权限的方法。
原理思路:
我们用 CreateProcess 函数创建进程时,该函数第六个参数 dwCreationFlags 有一个可选值为 EXTENDED_STARTUPINFO_PRESENT,我们可以在创建进程时,利用此值将子进程属性分配到指定进程作为其父级,这样创建进程的父进程即为我们指定的进程。那么,当我们将父进程指定为系统某个SYSTEM进程时,创建的子进程自然也是SYSTEM进程。
具体代码见:https://zijieke.com/d/205