En Windows el usuario System
se muestra con el símbolo del grupo:
.
(El uso de la API interna Win32 LookupAccountSid también revela que parece ser un grupo SidTypeGroup ).
Por otro lado, los procesos pueden ejecutarse de forma system context
similar en a user context
. También los documentos de Microsoft lo describen como "usuario del sistema" o "cuenta del sistema", y no como "grupo del sistema".
¿Es un usuario que se muestra como grupo para fines heredados?
(¿O es algo en lo que Werner Heisenberg habría estado interesado?)
Nota: ¿Qué es el usuario NT AUTHORITY \ SYSTEM? es similar pero no responde la pregunta de por qué se muestra como grupo y se comporta como un usuario.
windows
user-accounts
local-groups
meneo de pantano
fuente
fuente
Respuestas:
Primero, el token de acceso contiene mucho más que el identificador de seguridad (SID) . Uno solo tiene que "Ejecutar como administrador" un programa para ver en el Administrador de tareas que su usuario es uno mismo y no Administrador, y este milagro se logra simplemente modificando el token de acceso, no reemplazando el SID.
En segundo lugar, NT-AUTHORITY y SYSTEM no son cuentas ni grupos, a pesar de lo que dicen otras fuentes (incluso dentro de Microsoft). Un SID generalmente tiene un nombre que se muestra cuando es necesario. Una cuenta de usuario contribuirá con su SID como SID principal al token de acceso, que también determinará el nombre que muestran varias utilidades. Pero el token de acceso puede contener SID adicionales, por ejemplo, para todos los grupos a los que pertenece esa cuenta de usuario. Al verificar los permisos, Windows buscará cualquier SID en el token de acceso que tenga ese permiso.
Algunos SID de Windows conocidos tendrán nombres informados por Windows, aunque en realidad no pertenecen a ninguna cuenta.
Wikipedia define un identificador de seguridad como:
El SID ni siquiera necesita definir una cuenta de usuario o un grupo. Simplemente define un conjunto de permisos. El artículo de Wikipedia anterior agrega:
El SID de
NT-AUTHORITY\SYSTEM
se puede agregar a otras cuentas. Por ejemplo, esto se dice sobre la cuenta LocalSystem :Ya se puede ver en el texto anterior la confusión que reina incluso en la documentación de Microsoft con respecto a los SID del sistema, que no son exactamente cuentas ni grupos, que son solo un conjunto de permisos. Esta confusión se extiende aún más a otras utilidades y artículos, por lo que cualquier información devuelta debe ser cuidadosamente examinada.
El artículo de Microsoft Los identificadores de seguridad conocidos en los sistemas operativos Windows detallan todos los SID del sistema, algunos de los cuales incluyo a continuación:
Conclusión : NT-AUTHORITY \ SYSTEM es el nombre de un ID de seguridad, que no es un grupo ni una cuenta. Se muestra en el Administrador de tareas como SISTEMA cuando es el SID principal de un programa. Lo máximo que lo llamaría es "una pseudo cuenta".
fuente
- which are just a set of permissions
: ¿el que se refiere a las ID del sistema o a las cuentas o grupos ?En mi humilde opinión, su observación es correcta.
NT-AUTHORITY\SYSTEM
es un grupo, por lo que podría referirse a él como el grupo del sistema . Este grupo existe desde Windows NT 4 al menos y ya ha sido un grupo allí:También hay una cuenta llamada LocalSystem que
así que podría llamar a esto el usuario del sistema que es miembro del grupo SYSTEM.
SysInternals PsGetSid apoya la teoría de grupo para SYSTEM:
Con respecto al inicio de un proceso como grupo:
Para administrar la seguridad, un proceso obtiene un token de acceso . El token de acceso contiene solo SID. No estoy seguro de si hay una comprobación de si el SID del usuario es realmente un usuario o un grupo. En principio no importaría: el SID define a qué se puede acceder. Quizás el artículo de CodeProject pueda ayudar con la implementación
fuente