Saltar al contenido

Ejemplos de uso del comando RUNAS en Windows

Diferentes formas de reparar archivos de Windows corruptos

En el artículo de hoy veremos la sintaxis a emplear y algunos ejemplos / casos de uso del comando runas en servidores y equipos cliente basados en Windows.

RUNAS significa en el argot informático de Windows «ejecutar como» y lleva acompañando a los sistemas operativos de Microsoft un montón de años. Esta utilidad de linea de comandos puede utilizarse desde consola (ya sea CMD o Powershell) o bien desde interfaz gráfica -seguro que esta última opción la has visto alguna vez- si por ejemplo intentamos lanzar un programa como administrador (privilegios elevados).

Windows ejecutar como administrador

¿Para que sirve runas?

Nos permite lanzar programas -tanto propios como del sistema operativo- y archivos por lotes en nombre de otro usuario. Es decir, como usuario «x» lanzaremos un comando como usuario «y» sin necesidad de iniciar sesión en el equipo con «y». Es algo similar a hacer en Linux lo siguiente:

su - <usuario> -c "<comandos>"

Como os podéis imaginar es un comando muy útil para administración de sistemas, dado que en ciertos casos necesitaremos iniciar un programa como otro usuario. Esto ocurre normalmente cuando queremos instalar programas que requieren de elevación. Puedes pensar -no sin razón- que para eso está la GUI (interfaz gráfica) pero también podrías encontrarte con servidores «headless» y versiones Windows Server Core, que carecen de la misma.

¿Como utilizar runas en Windows?

A continuación discutiremos algunos comandos para runas de uso típico, lanzados desde la línea de comandos del sistema operativo.

El comando para lanzar un programa utilizando las credenciales de otro usuario admite diferentes sintaxis.

Lanzar con usuario local

runas /user:nombreusuario <programa>

Lanzar con usuario de dominio

runas /user:nombredominio\usuario <programa>

O bien:

runas /user:usuario@nombredominio <programa>

Siempre se nos solicitará la contraseña del usuario en cuestión.

C:\Users\x102786>runas /user:x102786@#########.### cmd
Escriba la contraseña para x102786@#########.###:
Intentando iniciar cmd como usuario "x102786@#########.###" ...

El resultado que veremos, tomando como ejemplo para programa el CMD de Windows, es el siguiente:

Ejemplos de uso del comando RUNAS en Windows (2)

Veremos como en la ventana que acaba de abrirse aparece cmd (ejecutándose como …), esto quiere decir que el comando ha funcionado correctamente. Usaremos el mismo procedimiento para cualquier programa que queramos abrir desde la consola.

Por ejemplo, para lanzar el Editor de Registro de Windows como administrador:

runas /user:administrator regedit

Lanzar con runas con argumentos adicionales

En este caso la sintaxis sería:

runas /user:usuario "<programa> argumento1 argumento2 ..."

Por ejemplo:

C:\Users\x102786>runas /user:x102786@#########.### "notepad C:\boot.ini"

Ejecutar un archivo por lotes

Si queremos ejecutar un archivo por lotes con otro usuario -por ejemplo, administrador- deberemos especificar la ruta completa del comando en la sintaxis (podemos usar variables de entorno):

runas /user:administrator %userprofile%\del_creds.bat

Tras proporcionar la contraseña ejecutaremos, en nuestro caso, un archivo por lotes que vacía el almacén de credenciales de Windows.

Posibles errores

«La operación solicitada requiere elevación»

Es posible que nos encontremos con errores si, por ejemplo, el ejecutable requiere privilegios de administrador para usarse (texto resaltado).

runas windows

Para resolver el problema haremos como en el anterior ejemplo, utilizando runas con una cuenta de administrador local o de dominio. Evidentemente, necesitaremos conocer la contraseña de dicha cuenta o no podremos usarlo.

«Este programa está bloqueado por una política de grupo. Para más información contacte con el administrador del sistema»

Esto puede pasar si el administrador de sistemas ha desactivado el inicio de sesión desde el símbolo de sistema. El ajuste responsable se sitúa en el siguiente apartado del Editor de Políticas de Grupo:

Denegar inicio de sesión como proceso por lotes SeDenyBatchLogonRight

gpedit.png

Relacionado10 políticas de grupo para mejorar la seguridad en Windows

Si contamos con derechos de administrador podremos entonces desactivar la directiva. En caso contrario, tendremos que implorar al sysadmin 🙂

«ERROR RUNAS: no se puede ejecutar»

Puede darse también el caso de que encontremos el siguiente mensaje:

ERROR RUNAS: no se puede ejecutar – cmd start .
1327: Error de inicio de sesión: restricción en la cuenta de usuario. Las posibles causas son que no se permite dejar contraseñas en blanco, restricciones en la hora de inicio de sesión, o una restricción de directiva exigida.

  1. Cuenta inexistente o deshabilitada: es lo primero que debes comprobar. Lo más normal es que no exista una cuenta con el nombre que estás escribiendo. Si quieres ejecutar algo como administrador y tu cuenta tiene permisos, pon tu nombre de cuenta «pepito» en su lugar.
  2. Contraseña: no has introducido la contraseña.
  3. Directivas: como ya comenté, es posible que en tu equipo se hayan cargado directivas que impiden usar esta función.

Ejecutar programa como otro usuario desde la interfaz gráfica

Antes de despedir el artículo de hoy me gustaría recordar un sencillo truco para ejecutar cualquier programa desde el GUI de Windows como otro usuario. Para conseguirlo, solo tenemos que mantener pulsada la tecla SHIFT y hacer clic con el botón derecho del ratón sobre el ejecutable.

Ejecutar como en Windows.png

Espero que os resulte útil esta información. De ser así, os invito a compartir el artículo con vuestros amigos.

Alejandro Ver todo

Trabajo como consultor de ciberseguridad y me gusta lo que hago. Aficionado a la informática / tecnología en general, me gusta compartir con la gente lo poco que sé. También soy aficionado al deporte y los videojuegos.

6 comentarios sobre “Ejemplos de uso del comando RUNAS en Windows Deja un comentario

  1. Siempre es interesante recordar estos temas y más de uno seguro que descubre su utilidad.
    A mí, por ejemplo, siempre se me olvida el uso de la tecla Mayúscular a la hora de ejcutar el menú contextual.
    Salu2

    Le gusta a 1 persona

  2. Tengo el problema del error 740, pero me ocurre al ejecutar una aplicación aún cuando se usa una cuenta de administrador.
    Ejecutar el cmd como administrador no resuelve el problema porque lo que necesito es crear un acceso directo con el comando: runas /user:usuarioconprivilegios /savecred comando y al digitar la contraseña me indica que se requiere elevación, aún cuando uso una cuenta de administrador.

    Me gusta

    • Para ejecutar como administrador, usando «sudo», para ejecutar como otro usuario bien puedes cambiarte a ese usuario con su o bien puedes emplear los sticky bits (suid) pero esto último debe evitarse a no ser que sepas bien lo que haces, porque puedes generar ajugeros de seguridad en las listas de permisos de acceso del sistema.

      Me gusta

Deja tu comentario (puedes hacerlo de forma anónima)

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Salir /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Salir /  Cambiar )

Conectando a %s

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

A %d blogueros les gusta esto: