"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > هل يمكن للمستخدمين غير الإداريين بدء تشغيل خدمات Windows دون المساس بأمان النظام؟

هل يمكن للمستخدمين غير الإداريين بدء تشغيل خدمات Windows دون المساس بأمان النظام؟

تم النشر بتاريخ 2024-11-18
تصفح:649

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

بدء تشغيل خدمات Windows من التطبيقات دون امتيازات المسؤول

تتضمن العديد من السيناريوهات بدء أو إيقاف خدمات Windows من تطبيقات منفصلة. ومع ذلك، قد يبدو هذا مقيدًا للمستخدمين غير المسؤولين بسبب مخاوف أمنية. كيف يمكننا التغلب على هذا القيد وتمكين المستخدمين من التحكم الدقيق في إدارة الخدمة دون المساس باستقرار النظام؟

الحل: تعديل أذونات الخدمة

يكمن مفتاح هذه المشكلة في تعديل أذونات كائن الخدمة. من خلال منح الحقوق المناسبة للمستخدمين غير الإداريين، يمكننا السماح لهم بالتفاعل مع الخدمات بطريقة خاضعة للرقابة.

يوضح مقتطف التعليمات البرمجية التالي كيفية تعيين واصف الأمان لخدمة ما ليشمل الأذونات المطلوبة:

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();
}
يمنح واصف الأمان المحدد هذا الأذونات التالية:

    الأذونات الافتراضية للنظام المحلي:
  • يمنح التحكم الكامل في حساب النظام المحلي.
  • الأذونات الافتراضية للمسؤولين:
  • يمنح الوصول للمسؤولين.
  • الأذونات الافتراضية للمصادقة المستخدمون:
  • يمنح وصولاً محدودًا لجميع المستخدمين المصادق عليهم.الأذونات الافتراضية لمستخدمي الطاقة:
  • يمنح التحكم الكامل لمستخدمي الطاقة.
  • تمت إضافة إذن لـ المستخدمون التفاعليون:
  • يمنح الإذن لبدء الخدمة للمستخدمين التفاعليين.
  • يمكن تخصيص سلسلة واصف الأمان (SDDL) لإضافة أو إزالة محددة الأذونات بناءً على مستوى الوصول المطلوب لمجموعات المستخدمين المختلفة. على سبيل المثال، إذا كنت تريد أن يتمكن المستخدمون غير الإداريين من إيقاف الخدمة، فيمكن استخدام SDDL التالي:
  • L"(A;;RPWP;;;IU)"

سيؤدي هذا إلى إضافة حق WP (WRITE_PROPERTY)، مما يسمح للمستخدمين التفاعليين ببدء الخدمة وإيقافها.

L"(A;;RPWP;;;IU)" 
أحدث البرنامج التعليمي أكثر>

تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.

Copyright© 2022 湘ICP备2022001581号-3