"Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"
Página delantera > Programación > ¿Pueden los usuarios no administradores iniciar los servicios de Windows sin comprometer la seguridad del sistema?

¿Pueden los usuarios no administradores iniciar los servicios de Windows sin comprometer la seguridad del sistema?

Publicado el 2024-11-18
Navegar:169

Can Non-Admin Users Start Windows Services Without Compromising System Security?

Iniciar servicios de Windows desde aplicaciones sin privilegios de administrador

Muchos escenarios implican iniciar o detener servicios de Windows desde aplicaciones independientes. Sin embargo, esto puede parecer restringido para usuarios que no sean administradores debido a problemas de seguridad. ¿Cómo podemos superar esta limitación y brindar a los usuarios un control granular sobre la gestión de servicios sin comprometer la estabilidad del sistema?

La solución: modificar los permisos de servicio

La clave de este problema reside en la modificación de los permisos del objeto de servicio. Al otorgar los derechos adecuados a los usuarios no administrativos, podemos permitirles interactuar con los servicios de manera controlada.

El siguiente fragmento de código demuestra cómo configurar el descriptor de seguridad de un servicio para incluir los permisos necesarios:

wchar_t sddl[] = L"D:"
  L"(A;;CCLCSWRPWPDTLOCRRC;;;SY)"           
  L"(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)"   
  L"(A;;CCLCSWLOCRRC;;;AU)"                 
  L"(A;;CCLCSWRPWPDTLOCRRC;;;PU)"           
  L"(A;;RP;;;IU)"                         
;

PSECURITY_DESCRIPTOR sd;

if (!ConvertStringSecurityDescriptorToSecurityDescriptor(sddl, SDDL_REVISION_1, &sd, NULL))
{
   fail();
}

if (!SetServiceObjectSecurity(service, DACL_SECURITY_INFORMATION, sd))
{
   fail();
}

Este descriptor de seguridad específico otorga los siguientes permisos:

  • Permisos predeterminados para el sistema local: Otorga control total a la cuenta del sistema local.
  • Permisos predeterminados para administradores: Otorga acceso a administradores.
  • Permisos predeterminados para usuarios autenticados: Otorga acceso limitado a todos los usuarios autenticados.
  • Permisos predeterminados para usuarios avanzados: Otorga control total para usuarios avanzados.
  • Permiso agregado para usuarios interactivos: Otorga permiso para iniciar el servicio para usuarios interactivos.

La cadena del descriptor de seguridad (SDDL) se puede personalizar para agregar o eliminar permisos específicos según el nivel de acceso deseado para varios grupos de usuarios. Por ejemplo, si desea que los usuarios que no son administradores puedan detener el servicio, se puede utilizar el siguiente SDDL:

L"(A;;RPWP;;;IU)" 

Esto agregaría el derecho WP (WRITE_PROPERTY), permitiendo a los usuarios interactivos iniciar y detener el servicio.

Al configurar cuidadosamente los permisos, los usuarios que no son administradores pueden realizar tareas esenciales de administración de servicios sin comprometer la seguridad del sistema.

Último tutorial Más>

Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.

Copyright© 2022 湘ICP备2022001581号-3