কম্পিউটার টিউটোরিয়াল

Debug Program Policy সক্ষম থাকলে SeDebugPrivilege প্রাপ্ত করার পদ্ধতি

পূর্বের আর্টিকেলে আমরা বলেছিলাম যে mimikatz-র মতো ইউটিলিটির বিরুদ্ধে প্রতিরক্ষার একটি পদ্ধতি হল Debug Program পলিসি ব্যবহার করে সিস্টেম অ্যাডমিনিস্ট্রেটরদের ডিবাগ প্রিভিলেজ ডিজেবল করা। যাইহোক, gầnে দেখা গেল ডিবাগ প্রিভিলেজ ছাড়া (এটি উইন্ডোজে SeDebugPrivilege) লোকাল সার্ভার অ্যাডমিনিস্ট্রেটর Microsoft SQL Server ইনস্টল বা আপডেট করতে পারেন না। বিষয়টি হল SQL Server ইন্সটলার শুরু হলে চেক করে SeSecurity, SeBackup এবং SeDebug প্রিভিলেজ আছে কিনা। এটিকে SQL Server প্রসেস চালু করে SQL Server সফলভাবে শুরু হয়েছে কিনা সেটির তথ্য পেতে হয়। এটা কেমন দেখায় তা দেখি।

SQL Server ইনস্টলেশনের সময় ইন্সটলার sơতorms চেক করে এবং Setup account privileges-এর সাথে কিছু সমস্যা শনাক্ত করে।

Failed লিঙ্কে ক্লিক করলে নিচের মেসেজ দেখা যায়:

Rule “Setup account privileges” failed.
The account that is running SQL Server Setup does not have one or all of the following rights: the right to back up files and directories, the right to manage auditing and the security log and the right to debug programs. To continue, use an account with both of these rights. For more information, see https://msdn.microsoft.com/en-us/library/ms813696.aspx, https://msdn.microsoft.com/en-us/library/ms813959.aspx and https://msdn.microsoft.com/en-us/library/ms813847.aspx.

এখন SystemConfigurationCheck_Report.htm রিপোর্ট খুলুন।

দেখতে পাচ্ছেন, HasSecurityBackupAndDebugPrivilegesCheck রুল চেক করার সময় ইন্সটলার বর্তমান প্রসেসে নিচের প্রিভিলেজগুলো পায়নি:

  • SeSecurity – অডিট এবং সিকিউরিটি লগ ম্যানেজ করা
  • SeBackup – ফাইল ও ফোল্ডার ব্যাকআপ করার পারমিশন
  • SeDebug — প্রোগ্রাম ডিবাগ করার প্রিভিলেজ

লগে বিস্তারিত তথ্য আছে যা দেখাচ্ছে ইনস্টলেশন প্রসেসে SeDebug ফ্ল্যাগ নেই।

আমি Debug programs পলিসি পরিবর্তন বা ডিজেবল না করে SeDebugPrivilege পাওয়ার ওয়ার্কঅראউন্ড সমাধান খুঁজে বের করতে চেষ্টা করলাম। আশ্চর্যёнকভাবে যদি আপনার সার্ভারে লোকাল অ্যাডমিনিস্ট্রেটর প্রিভিলেজ থাকে, তবে এই পলিসি বাইপাস করার খুব সহজ একটি পদ্ধতি আছে। secedit টুল যা লোকাল সিকিউরিটি পলিসি ম্যানেজ করতে সাহায্য করে, আমাদের কাজে লাগবে।

বর্তমান প্রিভিলেজ চেক করুন:

whoami /priv

দেখতে পাচ্ছেন, বর্তমান ব্যবহারকারীর টোকেনে SeDebugPrivilege নেই।

গ্রুপ পলিসি দিয়ে সেট করা বর্তমান ইউজার রাইটস টেক্সট ফাইলে এক্সপোর্ট করুন:

secedit /export /cfg secpolicy.inf /areas USER_RIGHTS

যেকোনো টেক্সট এডিটরে secpolicy.inf খুলুন এবং [Privilege Rights] সেকশনে একটি স্ট্রিং যোগ করুন যা লোকাল অ্যাডমিনিস্ট্রেটর গ্রুপকে Debug Programs প্রিভিলেজ দেয়।

SeDebugPrivilege = *S-1-5-32-544

নোট। লোকাল অ্যাডমিনিস্ট্রেটর গ্রুপের SID, S-1-5-32-544, যেকোনো অন্য SID-এ পরিবর্তন করা যায়। গ্রুপ বা ব্যবহারকারীর নাম SID-এ কনভার্ট করার জন্য How to Convert SID to UserName and Vice Versa দেখুন।

ফাইল সেভ করুন। এখন নতুন ইউজার রাইটস প্রয়োগ করুন:

secedit /configure /db secedit.sdb /cfg secpolicy.inf /overwrite /areas USER_RIGHTS

নোট। বর্তমান সেটিংস ওভাররাইট করার কনফার্মেশন দিতে হবে।

লগ অফ করে আবার লগ অন করুন এবং secpol.msc ব্যবহার করে নিশ্চিত করুন যে Debug Programs প্রিভিলেজ লোকাল অ্যাডমিনিস্ট্রেটর গ্রুপে অ্যাসাইন হয়েছে। একই whoami /priv কমান্ডের রেজাল্টে দেখাবে:

SeDebugPrivilege Debug programs Enabled

এখন আপনি SQL Server ইনস্টল বা আপডেট চালাতে পারবেন। কিন্তু মনে রাখবেন SeDebugPrivilege অস্থায়ীভাবে অ্যাসাইন করা হয়েছে এবং পরবর্তী GPO আপডেট সাইকেলে (ব্যবহারকারী লগ অফ করলে) এটি রিসেট হয়ে যাবে।

আপনাকে বুঝতে হবে যে Debug programs পলিসি ইনেবল করলে এটি আপনাকে সিডিবাগ প্রিভিলেজ পাওয়া থেকে সম্পূর্ণ রক্ষা করবে না যদি ম্যালিশিয়াস সফটওয়্যার ইতিমধ্যে লোকাল অ্যাডমিনিস্ট্রেটর অধিকারসহ আপনার সার্ভারে প্রবেশ করে, এবং এটি সার্ভারে কাজ করার সকল ব্যবহারকারী/অ্যাডমিনিস্ট্রেটর অ্যাকাউন্ট কমপ্রোমাইজ করতে পারে।

  1. উইন্ডোজ ১০-এ প্রয়োগ করা বা সক্ষম গ্রুপ পলিসি সেটিংস খুঁজে বের করার পদ্ধতি

  2. Discord সার্ভার সেটআপ করার পদ্ধতি

  3. রিমোট Hyper-V Server 2019-এ কানেক্ট করার সমস্যা সমাধান

  4. উইন্ডোজ সার্ভার ২০১৬-এ গ্রুপ পলিসি দিয়ে নেটওয়ার্ক প্রিন্টার ডিপ্লয় করা