"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Les utilisateurs non administrateurs peuvent-ils démarrer les services Windows sans compromettre la sécurité du système ?

Les utilisateurs non administrateurs peuvent-ils démarrer les services Windows sans compromettre la sécurité du système ?

Publié le 2024-11-18
Parcourir:455

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

Démarrage des services Windows à partir d'applications sans privilèges d'administrateur

De nombreux scénarios impliquent le démarrage ou l'arrêt des services Windows à partir d'applications distinctes. Cependant, cela peut sembler limité pour les utilisateurs non-administrateurs en raison de problèmes de sécurité. Comment pouvons-nous surmonter cette limitation et donner aux utilisateurs un contrôle granulaire sur la gestion des services sans compromettre la stabilité du système ?

La solution : modifier les autorisations de service

La clé de ce problème réside en modifiant les autorisations de l'objet de service. En accordant les droits appropriés aux utilisateurs non administrateurs, nous pouvons leur permettre d'interagir avec les services de manière contrôlée.

L'extrait de code suivant montre comment définir le descripteur de sécurité d'un service pour inclure les autorisations requises :

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();
}

Ce descripteur de sécurité spécifique accorde les autorisations suivantes :

  • Autorisations par défaut pour le système local : Accorde un contrôle total au compte système local.
  • Autorisations par défaut pour les administrateurs : Accorde l'accès aux administrateurs.
  • Autorisations par défaut pour les utilisateurs authentifiés : Accorde un accès limité à tous les utilisateurs authentifiés.
  • Autorisations par défaut pour les utilisateurs expérimentés : Accorde un contrôle total aux utilisateurs expérimentés.
  • Ajouté autorisation pour les utilisateurs interactifs : Accorde l'autorisation de démarrer le service pour les utilisateurs interactifs.

La chaîne de descripteur de sécurité (SDDL) peut être personnalisée pour ajoutez ou supprimez des autorisations spécifiques en fonction du niveau d'accès souhaité pour différents groupes d'utilisateurs. Par exemple, si vous souhaitez que les utilisateurs non administrateurs puissent arrêter le service, le SDDL suivant peut être utilisé :

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

Cela ajouterait le droit WP (WRITE_PROPERTY), permettant aux utilisateurs interactifs de démarrer et d'arrêter le service.

En définissant soigneusement les autorisations, les utilisateurs non-administrateurs peuvent effectuer des tâches essentielles de gestion de service sans compromettre la sécurité du système.

Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3