Loading…

جزیره امنیت اطلاعات و ارتباطات

ارسال کننده: omid sarab
کارشناس شبکه و مدیریت شبکه های مایکروسافتی ، آشنا به مباحث VoIP - Cisco - Mikrotik - Firewall - Linux و دارای مدارک بین المللی 2008 MCITP و Vmware Virtualization Fundamental و Computer Network Design علاقمند به مجازی سازی و توسعه شبکه های مجازی مبتنی بر VMware و مباحث امنیتی در حوزه شبکه می باشم، همچنین به صورت پیشرفته در زمینه گرافیک و طراحی پرتره فعالیت دارم.
ارسال پیام خصوصی
امتیازات این مطلب
نکته: آسیب پذیری تغییر پسورد Local User از طریق Group Policy در محیط شبکه
با سلام خدمت تمامی ITPro ها
امروز تصمیم گرفتم براساس سوال یکی از دوستان در سایت ITPro مبنی بر تغییر پسورد لوکال ادمین در شبکه های دامین ، نکته ای امنیتی را متذکر بشم. همانطور که میدانید یکی از کارهای لازم جهت بالا بردن امنیت شبکه تغییر پسورد Local Administrator و یا هر یوزر لوکالی که عصو این گروه می باشد تا کاربران فقط اجازه لاگین از طریق یوزرهای دامینی را داشته باشند. قطعا اولین راهی که به ذهن آدم می رسد استفاده از Group Ploicy می باشد که جناب مهندس شمس آبادی زحمت کشیدن و مطلبی با عنوان تغییر رمز Local Users از طریق Group Policy در شبکه های دامین تهیه نمودن ، ولی اخیرا مایکروسافت مقاله و بسته امنیتی با عنوان MS14-025: Vulnerability in Group Policy Preferences could allow elevation of privilege ارائه نموده و آسیب پذیری این روش را اعلام نموده است ،حتما با خودتان می گویید این حفره امنیتی چگونه باعث ناامن شدن پسووردها می شود.
شما وقتی از طریق GPO اقدام به آپدیت کردن پسورد ادمین می کنید با چنین پیغامی مواجه می شوید که به ما اخطار می دهد این پسوورد در دایرکتوری SYSVOL ذخیره می شود و امکان آشکارسازی آن نیز می باشد(البته با اینکه مایکروسافت برای پسووردها از رمزگزاری AES 256 استفاده می کند ولی باز روشهایی پیدا میشه که این پسوردهای پیچیده رو دیکد می کند)
Image

این فایل در دایرکتوری گروپ پالسی با پسوند XML ذخیره می شود، خوب بیایید یک نگاهی به این فایل بیندازیم همانطور که می بینید تمامی تنظیمات در این فایل ذخیره شده و پسوورد را نیز برایتان با رنگ زرد مشحص کردم ( پسورد استفاده شده ITPro1394 می باشد ولی اینجا به صورت هش شده نمایش داده شده است)
Image

خوب بیایید یک گام جلوتر بریم همانطور که در تصویر زیر می بینید با یک اسکریپت ساده در Powershell به راحتی این پسوورد قابلیت شکسته شدن را دارد(به همین راحتی)
Image

البته هدف از نوشتن این نکته رمزگشایی پسورد نیست بلکه این یک حفره امنیتی است که حتی خود مایکروسافت نیز به آن اشاره کرده و بیشتر جنبه ی افزایش امنیت شبکه را دارد.
این همه توصیح دادم تا به یک روش ایمن جهت تغییر پسووردها برسیم اونم استفاده از ابزار PsTools است که خود مایکروسافت آن را ارائه داده است ، خوب خیلی خلاصه وار نحوه ی عملکرد آن را توصیح می دهم:
بعد از دانلود این ابزار کافیه در پوشه مذکور در یک جای خالی با نگه داشتن Shift و کلیک راست کردن گزینه open command windows here را انتخاب نموده تا وارد محیط CMD بشوید.
Image

قالب عمکرد این ابزار به این شکله:
  [pspasswd [[\\computer[,computer[,..] | @file [-u user [-p psswd]]] Username [NewPassword
برای تغییر پسوورد یک سیستم از این دستور استفاده کنید :
"pspasswd \\computer-name   Local-administrator-account-name   “New-Password
برای چند سیستم :
"pspasswd \\computer1-name , computer2-name , computer3-name  Local-administrator-account-name “New-Password
برای تمام سیستمهای شبکه خود:
"pspasswd \\* Local-administrator-account-name  “New-Password
برای چند سیستم خاص :
"pspasswd \\@ITPro.txt  Local-administrator-account-name  “New-Password
(این فایل ITPro.txt حاوی نام کامپیوترهای مورد نظر می باشد که در هر خط به صورت جدا نوشته شده است)
به عنوان مثال :
pspasswd \\Omid-Notebook administrator ITPro1394

نویسنده : امید سراب
منبع : انجمن تخصصی فناوری اطلاعات ایران ITPro.ir
هرگونه نشر و کپی برداری بدون ذکر منبع و نام نویسنده دارای اشکال اخلاقی می باشد.
دیدگاه ها
  • ارسال توسط:
  • زمان ارسال: 22 ماه قبل
ممنونم خیلی خوب توضیح دادین. یه سوال: حتی اگه از طریق اون پالیسی یوزر Administrators رو که برای تغییر رمز اضافه کردم delete کنم هنوز هم توی فایل xml مربوط به گروپ پالیسی باقی می مونه یا حذف میشه؟

یه پیشنهاد هم برای اینکه زحمتتون امتیاز بیشتری بگیره که فکر می کنم اصولی هم هست اینه که قسمتی رو که ابزار رو توضیح می دین به عنوان پست جدید با موضوع معرفی ابزار درج کنید و توی این نکته اون پست رو لینک کنید
  • ارسال توسط:
  • زمان ارسال: 22 ماه قبل
دوست عزیز اگر منظورت از delete کردن یعنی پاک کردن این پالسی در GPO هست بله این فایل نیز پاک می شود ولی اگر منظورت از طریق Action بیاییم پالسی خود را delete کنیم کماکان این فایل باقی می ماند و باید به صورت دستی حذف گردد.بابت پیشنهادتون هم ممنون چون این اولین مطلبم در این سایت بود و زیاد با قوانین آشنا نبودم ولی انشالا در مطالبی بعدیم لحاظ میکنم.
  • ارسال توسط:
  • زمان ارسال: 22 ماه قبل
منظورم نه حذف پالیسی هست و نه از طریق action منظورم اینه که من توی قسمت local users and group پالیسی یوزر administrator رو قبلا add کرده بودم و دستور update برای تغییر رمز رو روی اون ست کردم حالا بیام یوزر administrator رو کلیک راست و گزینه delete رو بزنم . از منوی action منظورم نیست. یعنی دیگه یوزر administrator توی لیست local users and groups این پالیسی نباشه باز هم رمز که قبلا توی فایل xml پالیسی نوشته میشه باقی می مونه یا overwrite میشه؟
...............
در مورد اون پیشنهاد هم الان هم می تونید ویرایش کنید مشکلی نداره باز هم هر جور دوست دارید ولی از نظر دسترسی و دسته بندی دقیق تر در انجمن هم فکر می کنم مناسب تر باشه این کار رو انجام بدین چون پست شما هم شامل یک نکته هست و هم شامل معرفی ابزار .
  • ارسال توسط:
  • زمان ارسال: 22 ماه قبل
بله دقیقا منم منظورتون متوجه شدم برای همین دو برداشتمو از سوال پاسخ دادم، منظوره منم از پاک کردن پالسی همون کلیک راست بروی admin در قسمت local and user group می باشد، که با پاک کردنش فایل مذکور نیز پاک می شود، که نباید از عبارت پاک کردن پالسی استفاده می کردم چون این نیز خودش یک برداشت سومی هم میرسونه یعنی پاک کردن پالسی از زیرشاخه دامین در قسمت GPO که اگر از این طریق پاک کنید کماکان فایل باقی می ماند(جالب بود)
چشم در اولین فرصت تفکیک میکنم
  • ارسال توسط:
  • زمان ارسال: 22 ماه قبل
باسلام

با تشکر از مطلب بسیار مفید شما من مشکلی دارم می خواهم ببیبنم آیا این مشکل همانند پسورد امینتی می باشد


من در اعمال تغییر رمز admin local دچار مشکل شودم

تغییر رمز از طریق Group Policy بر روی تمامی سیستم های شبکه را می خواهم اعمال کنم field مربوط به پسورد disable می باشد من از صفحه snapshot گرفتم برای شما ارسال کردم


Image


در ضمن از این مسیر این پالیسی را اعمال می کنم

Computer Configuration -- Preferences -- Control panel -- settings Local user And Groups

من در پوشه Sysvol این پالیسی را مشاهده می کنم آیا با پاک کردن این پوشه دچار مشکلی میشم یا خیر ؟


من دیروز به یک مثلا برخوردم که Policy غیر فعال شده است

عکس گرفتم بی زحمت شما ببنید مشکل چی هست

Image


در ضمن در سایت Microsoft هم بررسی کردم یک لینک بود که اسکریپت قرار داده بود خاصتم شما بررسی کنید مشکل از کجا هست

https:support.microsoft.comen-uskb2962486
  • ارسال توسط:
  • زمان ارسال: 22 ماه قبل
دوست عزیز تو این مقاله ای که در بالا توصیحشو دادم MS14-025 مایکروسافت اعلام نموده تعدادی از تنظیمات Group Policy که می تواند پسوورد رو ذخیره کند آسیب پذیر هست، این پالسی ها شامل موارد زیر می باشد:
1- Drive Maps
2- Local Users and Groups
3- Scheduled Tasks
4- Services
5- Data Sources
این پالسی ها که در Group Policy ست می شوند در یک سری از تب های خود دارای پسوورد می باشند که به این پسووردها cpassword گفته میشود و فوق العاده آسیب پذیر و ناامن محسوب می شوند(در بالا توصیح دادم که در پوشه ی SYSVOL ذخیره می شوند و با یک اسکریپت ساده، از طریق پاور شل این پسوردد های هش شده قابلیت آشکار شدن را دارد) برای همین مایکروسافت در مقاله ای که ارائه داده این حفره امنیتی GPO را توصیح داده است. پس اگر این بسته (Patch) امنیتی را در سیستم خود به صورت دستی نصب و یا از طریق آپدیت ویندوز آن را دریافت نموده اید دیگر دسترسی برای تغییر پسوورد این 5 پالسی را نخواهید داشت و به شما اخطار می دهد که این پالسی حاوی cpassword می باشد وبرای آن راه حلی امن از طریق یک اسکریپت ایجاد کرده است وحتما پیشنهاد میکنم این اسکریپت هارو فقط از سایت خودش دریافت کنید تا یک وقت دستکاری نشده باشند(اسکریپت جالبی هست میشه ازش کلی مطلب یاد گرفت)
طریفه استفاده از آن هم به این شکله:
ابتدا به این مقاله از مایکروسافت مراجعه کرده: MS14-025
در این صفجه شما دوتا اسکریپت می بینید اولیشو کامل کپی کنید و در Notepad با این نام ذخیره کنید : Invoke-PasswordRoll.ps1 هرجا که ذخیره کردین در همان جا پاورشل رو اجرا کنید و قبل از اجرای اسکریپت شما باید این دستور رابزنید: Set-ExecutionPolicy -ExecutionPolicy Unrestricted و سپس دستور مقابل رو بزنید: Invoke-PasswordRoll.ps1 \.
با استفاده از اسکریپت دوم هم شما می توانید پالسی هایی که از cpassword استفاده شده اند را ببینید،مثل مراحل قبلی ولی این بار با نام Get-SettingsWithCPassword.ps1 ذخیره کنید وبرای اجرای آن در پاورشل این دستور را بزنید : Get-SettingsWithCPassword.ps1 –path “C:\Windows\SYSVOL\domain” | Format-List\.
مثل این عکس که در 4 جای مختلف cpassword استفاده شده است
Image

ویا اگر این لیست را تمایل دارید درجایی ذخیره کنید این دستور را بزنید:
Get-SettingsWithCPassword.ps1 –path “C:\Windows\SYSVOL\domain” | ConvertTo-Html > gpps.html\.
وبرای پاک کردن این پالسی های حاوی cpassword شما باید به مکان این پالسی ها در GPO رفته و مد action آن را به delete یا update تغییر بدهید ، وقتی که از اعمال شدن پالسی مطمئن شدید می توانید آن را پاک کنید
امیدوارم تمامه گفتنی هارو گفته باشم و نکته ای از قلم نیفتاده باشه
شاد و پیروز باشید. (واینو بدونین که There is no place like 127.0.0.1)
  • ارسال توسط:
  • زمان ارسال: 22 ماه قبل
با تشکر فراوان از توضیحات بسیار عالی شما
  • ارسال توسط:
  • زمان ارسال: 22 ماه قبل
با عرض پوزش

یکی از دوستانم از طریق گروپ پالسی بر روی سیستم ها EFS را فعال نموده در هنگام فعال سازی متاسفانه تمامی فایل های my document به صورت سبز شده یا همان Encryp شده است
کارهای من انجام دادم

User administrator را به عنوان Agent قرار دادم یک Certificate ساختم روی Policy در قسمت Certificateقرار دادم روی کل شبکه Force کردم فعلا همه فایل های موجود در my document برای کابران باز می شود ولی اگر فایل ها در درایور دیگری کنم دیگر فایل های که در My document بوده است کارنمی کند

ولی :

من می خواهم EFS را کلا حذف کنم زیرا این Certiticate تا سال 2016 اعتبار دارد و این که تمامی فایل های PST مربوط به Outlook کاربران شبکه روی my document می باشد

لطفا من راهنمایی کنید که بتوانم EFS را حذف کنم بدم آسیب دیدن فایل ها
  • ارسال توسط:
  • زمان ارسال: 22 ماه قبل
با سلام خدمت شما دوست عزیز
از آنجا که سوال شما مرتبط با این نکته نیست ممنون میشم اگر این سوالتون رو در قالب یک پست جدید مطرح کنید تا همه ی دوستان بتونن آن را پاسخ دهند و از طرفی با این کار امکان سرچ و سرعت پاسخ دهی به سواتون هم بالا میرود

  • ارسال توسط:
  • زمان ارسال: 18 ماه قبل
در این صفجه شما دوتا اسکریپت می بینید اولیشو کامل کپی کنید و در Notepad با این نام ذخیره کنید : Invoke-PasswordRoll.ps1 هرجا که ذخیره کردین در همان جا پاورشل رو اجرا کنید و قبل از اجرای اسکریپت شما باید این دستور رابزنید: Set-ExecutionPolicy -ExecutionPolicy Unrestricted و سپس دستور مقابل رو بزنید: Invoke-PasswordRoll.ps1 \.
با استفاده از اسکریپت دوم هم شما می توانید پالسی هایی که از cpassword استفاده شده اند را ببینید،مثل مراحل قبلی ولی این بار با نام Get-SettingsWithCPassword.ps1 ذخیره کنید وبرای اجرای آن در پاورشل این دستور را بزنید : Get-SettingsWithCPassword.ps1 –path “C:\Windows\SYSVOL\domain” | Format-List\.
مثل این عکس که در 4 جای مختلف cpassword استفاده شده است


بی زحمت توضیح بیشتر میدهید من با این روش شما اجرا کردم ولی اتفاقی نیافتاد و چیزی هم نمایش نداد بعد کجا ذخیره کنم ، با اینکار فعال میشه ؟!
برای ارسال نظر وارد شوید.