Foro de elhacker.net

Programación => Scripting => Mensaje iniciado por: d3xf4ult en 7 Abril 2014, 21:58 pm



Título: No puedo elevar privilegios con runas para ejecutar: MSC y CPL
Publicado por: d3xf4ult en 7 Abril 2014, 21:58 pm
Lenguaje:
Batch Processing


Problema:
Hola,

Tengo un problemilla con esto, en un pasado el siguiente script se me ejecutaba correctamente permitiéndome elevar privilegios para ejecutar las consolas de Microsoft msc. Y ahora no sé es por que y que yo sepa o recuerde no tocara nada esto dejo de hacer lo que le pedía.
Lo que conseguía con esto, como seguro podeis llegar a ver, es que desde un usuario raso sin privilegios, poder ejecutar un runas facilmente si meter el todo el "chorizo" de comandos para elevar privilegios a OTRO usuario que tengo en el equipo con permisos más altos.

Es curioso que el comando tal cual me funcione, sin embargo dentro de script no. Que estoy haciendo mal??
Ya probé en cambiar el path de %systemroot% a %windir% (que es lo mismo...) y de ponerlo con ruta absoluta (c:\Windows\...) por si los % se me estaban interpretando dentro del script como una variable pero aún así nada.


Código:
Código
  1.    @echo off
  2.    :menu
  3.    cls
  4.    echo =============================
  5.    echo  [1] MSC (Microsoft Console)
  6.    echo  [2] CPL (Control Panel)
  7.    echo  [3] Exit
  8.    echo =============================
  9.  
  10.    set/p opc=
  11.    if %opc%==1 goto msc
  12.    if %opc%==2 goto cpl
  13.    if %opc%==3 goto salir
  14.  
  15.    :msc
  16.    set /p vmsc=
  17.    runas /user:EQUIPO\USUARIO "mmc %systemroot%\system32\%vmsc%"
  18.  
  19.    :cpl
  20.    set /p vcpl=
  21.    runas /user:EQUIPO\USUARIO "control %vcpl%"
  22.  
  23.    :salir
  24.    exit



Error:
No sale ningún error visible, simplemente después de elegir la opción del menú msc o cpl y escribir usuario y contraseña al pulsar Enter no sale nada, salta a la siguiente linea y se queda ahí sin ninguna acción.


Otras Observaciones:
EQUIPO\USUARIO, sería el nombre de mi equipo y usuario local con privilegios para ejecutar los msc o cpl.
Lo estoy probando en un: Windows 7 Enterprise x64 SP1


Título: Re: No puedo elevar privilegios con runas para ejecutar: MSC y CPL
Publicado por: Eleкtro en 7 Abril 2014, 23:35 pm
Error:
No sale ningún error visible, simplemente después de elegir la opción del menú msc o cpl y escribir usuario y contraseña al pulsar Enter no sale nada, salta a la siguiente linea y se queda ahí sin ninguna acción.

¿Sin error de ningín tipo?

Mejora la sintaxis del código encerrando las cadenas con comillas dobles y especificando la ruta absoluta, y añádele un Pause después de la instrucción para ver si muestra algún mensaje de error antes de la pausa:
Código
  1. Set /P "VMSC="
  2. "%systemroot%\system32\RunAs.exe" /NoProfile /User:"EQUIPO\USUARIO" "\"%systemroot%\system32\mmc.exe\" \"%systemroot%\system32\%VMSC%\""

PD: La verdad es que el comando en tu código debería funcionar, pero como alternativa podrías usar la aplicación PSExec.

Saludos


Título: Re: No puedo elevar privilegios con runas para ejecutar: MSC y CPL
Publicado por: d3xf4ult en 8 Abril 2014, 10:31 am
No quería hacer uso de ninguna pstool. Esto antes si me conseguía abrir la ventana msc o cpl con privilegios y ahora no. No hace nada. Introduces los valores pulsas Enter y nada... no hace nada ni muestra nada.

Probé a referenciarlos con comillas y tampoco nada...

Por cierto que hace el /NoProfile ??



Después de probar y probar. Veo que lo que estaba fallando era el comando la sintaxis del Runas, poner la ruta absoluta en eso.
Código:
"%systemroot%\system32\RunAs.exe" /NoProfile
Ya que ahora si me pregunta la password del usuario a elevar permisos.

Gracias @Elektro eres un crack!

Dejo el código batch tal cual como lo tengo ahora y funcionando como debería.

Código:
@echo off
:menu
cls
echo =============================
echo  [1] MSC (Microsoft Console)
echo  [2] CPL (Control Panel)
echo  [3] Exit
echo =============================

set/p "opc="
if %opc%==1 goto msc
if %opc%==2 goto cpl
if %opc%==3 goto salir

:msc
set /p "vmsc="
"%systemroot%\system32\RunAs.exe" /NoProfile /User:"EQUIPO\USUARIO" "mmc %systemroot%\system32\%vmsc%\"

:cpl
set /p "vcpl="
"%systemroot%\system32\RunAs.exe" /NoProfile /User:"EQUIPO\USUARIO" "control %vcpl%"

:salir
exit

Saludos!



[Elektro]: De nada, pero no hagas doble post leñe :P


Título: Re: No puedo elevar privilegios con runas para ejecutar: MSC y CPL
Publicado por: Eleкtro en 8 Abril 2014, 10:56 am
Cita de: RunAs /?
   /noprofile        Especifica que el perfil de usuario no debe cargarse.
                       Esto permite que las aplicaciones se carguen más rápidamente, pero puede ocasionar que algunas aplicaciones no se ejecuten correctamente.
( sólamente era por probar si así funcionaba )

un saludo!