¿Cómo se ejecuta una aplicación como TrustedInstaller o SYSTEM sin utilizar programas externos?

¿Cómo se ejecuta una aplicación como TrustedInstaller o SYSTEM sin utilizar programas externos?

Utilizando sólo el símbolo del sistema y/o PowerShell, pero sin programas o comandos externos, ¿cómo se puede ejecutar una aplicación como TrustedInstaller o SYSTEM?

Respuesta1

AFAIK, no existe una forma sencilla de iniciar sesión comoSISTEMAo comoInstalador de confianzasin utilizar herramientas de terceros como las propias de Microsoft (bueno, en realidad Sysinternals de Russinovich)PsExec, NirsoftNirCmdo de SordumEjecución de energía.

Sin embargo, es fácil utilizar estas herramientas.aparecerser nativo de la GUI de Windows, es decir, como un elemento del menú contextual para ejecutables, con unAjuste de registro que agrega la herramienta particular al menú contextual.

[Incluso con esos privilegios, a veces puede ser imposible realizar tareas simples, como usarRegeditpara modificar una clave propiedad deInstalador de confianza, sin tomar posesión.]

Respuesta2

Dehttps://www.tiraniddo.dev/2017/08/the-art-of-becoming-trustedinstaller.html, estos son los pasos que intento en mi máquina

  1. Abra su powershell (como administrador)
  2. PS> Instalar-Módulo -Nombre NtObjectManager
  3. PS> Inicio-Servicio -Nombre TrustedInstaller
  4. PD> $parent = Get-NtProcess -ServiceName TrustedInstaller
  5. PS> $proc = New-Win32Process cmd.exe -CreationFlags NewConsole -ParentProcess $padre

Notas:
Install-Modulesolo es necesario ejecutarlo una vez para importar el módulo.https://www.powershellgallery.com/packages/NtObjectManager/

Después del paso 5, se abrirá un nuevo símbolo del sistema, allí podemos verificar ejecutando whoamiy mostraránt authority\system

Respuesta3

Por cierto, aquí hay un script .ps1 hecho deComandos de @hasto:

$ConfirmPreference = "None"
$isAdmin = ([Security.Principal.WindowsPrincipal] [Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator)
if (-not $isAdmin) {
    Start-Process powershell -ArgumentList "-NoProfile -File `"$PSCommandPath`"" -Verb RunAs
    exit
}
Set-ExecutionPolicy -ExecutionPolicy bypass
Install-Module -Name NtObjectManager
Start-Service -Name TrustedInstaller
$parent = Get-NtProcess -ServiceName TrustedInstaller
$proc = New-Win32Process cmd.exe -CreationFlags NewConsole -ParentProcess $parent
$ConfirmPreference = "High"

información relacionada