در حال آماده‌سازی باند فرود برای شما هستیم...

اجرای یک برنامه خاص با دسترسی ادمین برای یک یوزر محدود با runas

چطوری یک برنامه را با دسترسی Administrator برای کاربران معمولی اجرا کنیم؟ runas

در بسیاری از سازمان‌ها، کاربران روزمره با حساب کاربری معمولی (Standard User) وارد ویندوز می‌شوند تا امنیت سیستم افزایش پیدا کند. اما گاهی لازم است یک نرم‌افزار خاص با سطح دسترسی Administrator اجرا شود، بدون اینکه کاربر از حساب خود خارج شود یا رمز عبور ادمین سیستم را هر بار وارد کند. یکی از ابزارهای داخلی ویندوز برای انجام این کار RunAs است که در این مطلب یاد می‌گیریم چطوری یک برنامه خاص را با دسترسی ادمین برای کاربران معمولی اجرا کنیم. این یکی از رایج‌ترین سناریوها در هر شبکه‌ای هست مخصوصا در سازمان‌هایی که از نرم‌افزارهای مالی استفاده می‌کنند.

RunAs چیست؟ آموزش اجرای نرم‌افزار با دسترسی Administrator در ویندوز

runas یک ابزار داخلی ویندوز برای اجرای یک برنامه خاص با یک حساب کاربری دیگری هست. به جای اینکه کاربر از ویندوز Sign out کند، برنامه فقط با اعتبار کاربر دیگری اجرا می‌شود. دقیقا یکی از مشکلاتی که در هر شبکه می‌باشد همین هست که نرم‌افزار مالی برای اجرای برخی از تغییرات نیاز به دسترسی ادمین دارد اما شما بعنوان مدیر شبکه نمی‌توانید یوزر و پسورد ادمین را در اختیار یک یوزر دیگر قرار دهید، حتی ساختن یک ادمین لوکال و در اختیار گذاشتن آن برای دیگر یوزرهای عادی شبکه (حتی مدیرعامل سازمان) کار بسیار اشتباه و خطرناکی هست. این ابزار کوچک در این مسیر ویندوز قرار دارد.

C:\Windows\System32\runas.exe

این دستور به صورت کلی به فرمت زیر اجرا می‌شود:

runas /user:ComputerName\Username /savecred "program path\test.exe"

فرض کنید نام کامپیوتر ما Financial هست و نام یوزری که به صورت لوکال ادمین داریم FN-admin هست و سپس یک نرم افزار در درایو D با نام shell.exe رو میخواهیم به صورت ادمین اجرا کنیم. فرمت کلی دستور به شکل زیر در خواهد آمد:

runas /user:financial\FN-admin /savecred "D:\shell.exe"

savecred مهمترین بخش دستور هست این گزینه باعث می‌شود اولین بار ویندوز رمز عبور یوزر ادمینی که وارد کردید را از شما بپرسد و بعد از وارد کردن رمز صحیح، اطلاعات ورود داخل Windows Credential Manager ذخیره شود و برای دفعات بعد دیگر نیازی به وارد کردن پسورد نیست.

Windows Credential Manager

دستور Runas رو چطوری اجرا کنیم که همیشه در دسترس کاربر باشد؟

برای اینکه هر بار نیازی نباشد این دستور را در CMD وارد کنیم از یک شورتکات در ویندوز استفاده می‌کنیم. طبق دستور زیر یک Shortcut روی دسکتاپ یا هر جای دیگری که مدنظر هست می‌سازیم:

ایجاد شورتکات در ویندوز

در مرحله دوم طبق سناریویی که داشتیم دستور را به شکل زیر وارد میکنیم:

پرکردن شورتکات در ویندوز

در نهایت یک اسم دلخواه می‌دهیم و شورتکات را هم ذخیره می‌کنیم:

نام شورتکات در ویندوز

حتی می‌توان با Properties گرفتن از این شورتکات یک آیکن هم برای آن در نظر گرفت. بار اول رو باید این شورتکات را خود شما که ادمین هستید اجرا کنید چون باید رمز یوزری که ادمین هست را باید وارد کنید. برای دفعات بعدی نیازی به وارد کردن مجدد دستور نیست.

مزایای استفاده از Runas ویندوز

استفاده از RunAs مزایای زیادی دارد:

  1. کاربر نیاز به عضویت در گروه Administrators ندارد.
  2. برنامه فقط با دسترسی Administrator اجرا می‌شود.
  3. نیاز به Sign Out یا Switch User نیست.
  4. پیاده‌سازی بسیار ساده است.
  5. مناسب برای نرم‌افزارهای مدیریتی خاص.

معایب استفاده از Runas ویندوز

مهمترین نکته‌ای که باید به آن توجه کنید این هست که پسورد را در سیستم ذخیره می‌کند و اگر شخصی به همان حساب کاربری ویندوز دسترسی داشته باشد، می‌تواند همان دستور را اجرا کند و بدون دانستن رمز، برنامه را با آن حساب اجرا کند. امکان سواستفاده از این روش وجود دارد فرض کنید اولین بار این دستور اجرا شده باشد و پسورد روی ویندوز ذخیره شده باشد و بعدا کاربر می‌تواند دستور زیر را اجرا کند.

runas /savecred /user:Financial\FN-admin cmd.exe

اگر محدودیتی وجود نداشته باشد، ممکن است یک Command Prompt با همان حساب اجرا شود. به همین دلیل استفاده از /savecred روی سیستم‌های اشتراکی یا برای حساب‌های با دسترسی بالا، ریسک امنیتی قابل توجهی دارد. مایکروسافت استفاده از savecred را برای حساب‌های حساس یا Administrator توصیه نمی‌کند، مگر اینکه نیاز آن کاملاً بررسی شده باشد و ریسک آن پذیرفته شود.

جمع‌بندی و پایان

RunAs یکی از ابزارهای کاربردی ویندوز برای اجرای برنامه‌ها با حساب کاربری متفاوت است و در محیط‌های سازمانی کاربرد فراوانی دارد. با این حال، گزینه /savecred اگرچه استفاده روزمره را آسان می‌کند، اما با ذخیره کردن اعتبارنامه در سیستم می‌تواند سطح حمله را افزایش دهد. بنابراین، پیش از استفاده از آن باید مزایا و ریسک‌های امنیتی آن به‌دقت بررسی شوند. در محیط‌های سازمانی، اگر هدف اجرای یک نرم‌افزار خاص با دسترسی مدیریتی است، معمولاً استفاده از روش‌هایی مانند Task Scheduler، Group Policy (Software Restriction Policies یا AppLocker)، سرویس‌های مدیریت دسترسی ممتاز (PAM/PIM) یا ابزارهای مدیریت Endpoint، از نظر امنیتی گزینه‌های مناسب‌تری نسبت به RunAs /savecred هستند

منبع: آکادمی بامادون

این مقاله براتون مفید بود؟

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

11 + پنج =