مرور کلی ابزار SubInACL.exe ، استفاده از موارد و مجوزها
SubInACL ابزاری قدرتمند برای خط فرمان است که در کیت منبع سرور مایکروسافت ویندوز 2000 و کیت منبع مایکروسافت ویندوز NT سرور 4.0 موجود است. SubInACL به شما امکان می دهد اطلاعات امنیتی هر شیء را به طور مستقیم ویرایش کنید. این شامل مدیریت مجوزها ، مالکیت یا اطلاعات ممیزی در مورد انواع بسیار زیادی از اشیاء می باشد.
SubInACL ابزاری برای کار با لیست های کنترل دسترسی (ACLs) است که بخش اساسی در نحوه کنترل مجوزها و دسترسی های کاربر است. در ویندوز اگر در مفهوم ACL ها تازه کار هستید ، قبل از کار از طریق این راهنما ، مستندات مایکروسافت را در مورد ACL بخوانید.
دوره آموزشی ویدیویی PowerShell و Active Directory Essentials
را دریافت کنید. من این را هم برای کاربران PowerShell جدید و هم پیشرفته توصیه می کنم. . ساختن ابزار AD یک تجربه یادگیری عالی است.
ارزش اصلی SubInACL ، برای مدیران شبکه ، این است که به آنها اجازه می دهد سطح بسیار بیشتری کنترل در مجوزهای دسترسی به اشیاء شبکه را کنترل کنند. شما می توانید از SubInACL برای تغییر اطلاعات در پرونده ها ، دایرکتوری ها ، اشتراک پرونده ها و اشتراک های چاپگر ، بلکه برای کنترل مجوزها بر روی کلیدهای رجیستری ، خدمات سیستم و Microsoft IIS Metabase استفاده کنید.
در این مقاله خواهیم دید که SubInACL ، و نحوه استفاده از آن است. ما پوشش خواهیم داد:
بررسی سریع: SubInACL چیست؟
SubInACL ابزاری برای خط فرمان است که مدیران شبکه و سیستم را قادر می سازد تا اطلاعات امنیتی درباره پرونده ها ، کلیدهای رجیستری را بدست آورند. و خدمات سپس می توانید از ابزارهایی برای انتقال این اطلاعات از کاربر به کاربر ، از گروه محلی یا جهانی به گروه و از دامنه به دامنه دیگر استفاده کنید.
رایج ترین کاربردی که بیشتر سرپرستها برای SubInACL خواهند داشت ، برای مهاجرت کاربران از یک دامنه است. به دیگری. به عنوان مثال ، اگر کاربر از یک دامنه (DomainA) به دامنه دیگر (DomainB) منتقل شده است ، مدیر می تواند اطلاعات امنیتی موجود در پرونده های این کاربر را جایگزین DomainA User با DomainB کاربر کند. این امر دسترسی کاربر را به همان پرونده ها از دامنه جدید می دهد.
SubInACL همچنین به مدیران امکان می دهد تا بسیاری از کارهای مرتبط دیگر را انجام دهند. مفیدترین و رایج ترین این موارد عبارتند از:
- اطلاعات امنیتی مرتبط با پرونده ها ، کلیدهای رجیستری یا خدمات را نمایش دهید. این اطلاعات شامل مالک ، گروه ، لیست کنترل دسترسی مجوز (ACL) ، ACL اختیاری (DACL) و سیستم ACL (SACL) است.
- صاحب یک شی را تغییر دهید.
- اطلاعات امنیتی را برای یک شناسه جایگزین کنید (حساب ، گروه امنیتی شناخته شده امنیتی (SID) با شناسه دیگر.
- اطلاعات امنیتی درباره اشیاء را مهاجرت کنید. این امر مفید است اگر دامنه های شبکه را مجدداً سازماندهی کرده باشید و نیاز به انتقال اطلاعات امنیتی پرونده ها از یک دامنه به دامنه دیگر داشته باشید.
مورد نیاز سیستم
شما می توانید SubInACL را از صفحه پشتیبانی مایکروسافت در اینجا نصب کنید. این ابزار در طیف گسترده ای از سیستم عامل ها و سیستم عامل های ویندوز پشتیبانی می شود. شما می توانید SubInACL.exe را روی هر یک از سیستم عامل های زیر بارگیری و نصب کنید:
- Windows 2000 Professional
- Windows 2000 Server
- Windows 2000 Advanced Server
- Windows 2000 Datacenter Server
- Windows XP Professional
- ] ویندوز سرور 2003 ، نسخه وب
- ویندوز سرور 2003 ، نسخه استاندارد
- ویندوز سرور 2003 ، نسخه Enterprise
- ویندوز سرور 2003 ، نسخه دیتاسنتر
نحوه نصب SubInACL
برای نصب SubInACL بر روی یک استاندارد سیستم ویندوز:
- ابتدا به صفحه بارگیری مایکروسافت در اینجا بروید. برای شروع بارگیری ، روی دکمه بارگیری کلیک کنید.
- در کادر گفتگوی File Download ، ذخیره این برنامه را روی دیسک انتخاب کنید.
- برای ذخیره فایل ، مکانی را روی رایانه خود انتخاب کنید ، و سپس روی ذخیره کلیک کنید.
- در ویندوز اکسپلورر ، به محلی که فایل بارگیری شده را ذخیره کرده اید ، برای شروع مراحل نصب ، روی فایل دوبار کلیک کرده و دستورالعمل ها را دنبال کنید.
- پرونده بارگیری شده یک پرونده نرم افزاری Microsoft Installer (.msi) است. با اجرای پرونده ، ابزار و اسناد را بر روی رایانه خود نصب می کنید.
از آنجا که ابزار را نصب می کنید ، از شما خواسته می شود که یک دایرکتوری نصب را انتخاب کنید. اگر ویندوز سرور 2003 منبع کیت نصب شده است ، ابزار خود را در دایرکتوری Resource Kit نصب کنید تا از یک سیستم بیش از حد بزرگ جلوگیری کنید و از به روزرسانی های مطمئن تری اطمینان حاصل کنید هنگام نصب کیت منبع ، فهرست راهنما توصیه می شود C: Program Files Kits Resource Windows Tools.
SubInACL.exe Use Cases
SubInACL می تواند برای انجام بسیاری از کارهای متداول مورد نیاز سیستم و مدیران شبکه مورد استفاده قرار گیرد. با این وجود ، قدرت اصلی دسترسی به سیستم شما و به طور کلی امنیت اشیاء در اختیار شماست. این ابزار بخش مهمی از جلوگیری از انتشار مجوز و همچنین به طور کلی نگاه داشتن ساختار تأیید هویت شما است.
در این بخش ، ما موارد کاربردی SubInACL را مرور می کنیم و به شما نشان می دهیم که چگونه این موارد متداول را تکمیل کنید. وظایف.
1. مشاهده ACL ها
ACL ها اشخاصی هستند که مجوزها را کنترل می کنند. هر ورودی در ACL یک ورودی کنترل دسترسی (ACE) نامیده می شود. تصور کنید که مجوزهای مربوط به یک پرونده در یک دامنه ، کنترل کامل را به سرپرستان ، کنترل کامل بر آلیس انجام می دهد و به Bob دسترسی ندارد. در این حالت ، ACL پرونده شامل سه ACE می باشد که دسترسی مدیران ، آلیس و جک را شرح می دهد. برای نمایش ACL یک پرونده در SubInACL ، از این دستور استفاده کنید:
SubInACL / verbose = 1 / پرونده c: testfile.txt / display
جایی که نام فایل testfile.txt است.
خروجی این دستور نام پرونده و سپس نام صاحب پرونده را نشان دهید. در مرحله بعد ، خروجی تعداد ACE های حسابرسی (به عنوان مثال ، aaces) و مجوز ACE ها را نشان می دهد (به عنوان مثال ، اشیاء مجاز یا سرعت) ، سپس اطلاعات مربوط به آن ACE ها را ارائه می دهد.
در Windows 2000 و NT ، شما قادر خواهید بود برای مشخص کردن آنچه باید حسابرسی کنید: به عنوان مثال ، هر وقت آلیس نتواند پرونده را بنویسد یا هر وقت باب نتواند پرونده را بخواند. SubInACL آن اصطلاحات را به عنوان ACE حسابرسی بیان می کند. ACE مجوز مجوزهایی است که به کاربران اجازه می دهد یک پرونده یا فهرست را بررسی یا تغییر دهند.
این مثال شامل سه ACE مجوز است زیرا ACL شامل یک ACE برای سرپرستان ، یکی برای آلیس و دیگری برای باب است. هر یک از سه خط بعدی در مورد ACE اجازه اعمال می شود. مقدار Type مشخص می کند که ACE یک ACE Deny است یا ACE Allow: 0x1 نمایانگر یک رد ACE است و 0x0 یک Allow ACE را نشان می دهد.
مقدار AccessMask مجوزهای ACE را مشخص می کند. برای رمزگشایی مقدار AccessMask در مجوزهای خاص ، می توانید بیت های موجود در مقدار را بررسی کنید یا دستور SubInACL را با گزینه / verbose = 2 اجرا کنید ، که به جای گزینه / verbose = 1 ، مجوز را به عنوان متن نمایش می دهد.
2 . با افزودن ACEs
همچنین می توانید از SubInACL برای تغییر مجوزهای پرونده و فهرست استفاده کنید. دستور زیر ACE را اضافه می کند که اجازه می دهد کاربر جدیدی به نام Larry را در شرکتی به نام مثال بخواند.
SubInACL / پرونده c: testfile.txt / grant = مثال Larry = R
در این دستور ، گزینه / file به SubInACL می گوید که این دستور روی یک پرونده ACE کار خواهد کرد. گزینه های دیگر عبارتند از:
- یک سرویس سیستم (/ خدمات) ،
- یک کلید رجیستری (/ keyreg یا / subkeyreg) ،
- مجموعه ای از پوشه ها و هر زیر پوشه در داخل آنها (/ زیر شاخه) ،
- A پوشه مشترک (/ اشتراک) ،
- یک اشتراک فایل خوشه ای (/ خوشه) ،
- یک موضوع هسته (/ kernelobject) ،
- یا IIS Metabase (/Metabase).لاف19659058 آنهاThe c: testfile پارامتر .txt پرونده ای را که دستور کار خواهد کرد را مشخص می کند. می توانید از نامهای گرافیکی در نام خانوادگی استفاده کنید.
گزینه / کمک مالی به SubInACL می گوید به جای ایجاد یک رد جدید ACE (/ انکار) یا ویرایش ACE موجود (یا جایگزین) ، به SubInACL ایجاد یک Allow ACE جدید ایجاد کند. پارامتر بعدی نام حساب را مشخص می کند ، و شخصیت نهایی مجوز اعطای را مشخص می کند.
SubInACL R (خوانده شده) ، F (کنترل کامل) ، C (تغییر ، که همان اصلاح است) ، P (تغییر مجوزها ) ، O (گرفتن مالکیت) ، X (اجرای) ، E (خواندن و اجرای) ، W (نوشتن) و D (حذف).
توجه کنید که اگرچه SubInACL به شما امکان می دهد فقط مجوزهای سطح پایین را مشاهده کنید ، می توانید اعطا کنید. فقط مجوزهای سطح بالا. پارامتر نمونه / اعطای = مثال Larry = R به SubInACL دستور می دهد ACE ایجاد کند که به خواندن مثال (L) اجازه دهد تا به عنوان مثال Larry اجازه دهد.
برای انکار مجوزها ، از دستور / انکار استفاده کنید. به عنوان مثال ، دستور زیر مانع نوشتن لری به پرونده می شود.
subinacl / file c: testfile.txt / انکار = مثال Larry = W
می توانید چندین ACE مجاز یا ACE را انکار کنید. به عنوان مثال ، برای دسترسی به خواندن و نوشتن به لری ، به سادگی پارامترهای اجازه را کنار هم قرار دهید ، به عنوان مثال Larry = RW. با این حال ، SubInACL نمی تواند هر دو نوع ACE را برای یک شخص کنترل کند – به عنوان مثال ، شما ممکن است لری دسترسی دسترسی داشته باشد اما دسترسی ننوشتن ، اما شما نمی توانید از ترکیبی از Allow و انکار ACE استفاده کنید.
می توانید از کارتهای عادی برای تغییر مجوزها بر روی چندین فایل در یک فهرست استفاده کنید ، اما اگر می خواهید در یک دیسک کل یک درخت یا درخت فهرست را تغییر دهید ، می توانید از گزینه / Subdirectories SubInACL استفاده کنید. به عنوان مثال ، فرض کنید می خواهید به همه کنترل های فرعی و پرونده ها در C: testfolder به آلیس کامل کنترل اعطا کنید. نوع
subinacl / subdirectories c: testfolder * * / grant = مثال Alice = F
توجه كنید كه باید slash و wildcard را بعد از c: testfolder درج كنید ، در غیر این صورت SubInACL اجازه می دهد تا در همه پوشه ها و نه در همه پرونده ها و زیر پوشه های آن پوشه ، پوشه مشخص شده را تنظیم كند. 3 جایگزینی ، حذف و تمیز کردن SID ها
تصور کنید که شما یک پرونده دارید که فقط یک کارمند – لوری – می تواند به آنها دسترسی داشته باشد. سپس لوری شرکت را ترک می کند و جنت جای او را می گیرد. جنت نیاز به دسترسی به تمام آن پرونده ها دارد. حل این مشکل گاهی اوقات دوباره ACLing خوانده می شود زیرا به طور معمول (یعنی بدون SubInACL) مجبور خواهید بود ACL های پرونده ها را یک به یک از GUI ویرایش کنید. این برای همیشه به طول خواهد انجامید.
در عوض ، شما می توانید از SubInACL برای انجام کار فقط در یک خط استفاده کنید:
subinacl / file * / جایگزین = examplelaurie = نمونه janet
این دستور به روش زیر عمل می کند. هر ACE را در هر پرونده موجود در فهرست موجود بررسی می کند و سپس SID لوری را با SID جنت در هر ACE که به لوری جایگزین می شود جایگزین می کند. شما حتی می توانید از SID جایگزین از دامنه دیگر استفاده کنید ، تا زمانی که دامنه های شما به یکدیگر اعتماد کنند.
فرض کنید که به جای جایگزین کردن SID Janet's برای Laurie's SID ، می خواهید تمام ACE های مربوط به لوری را حذف کنید ، زیرا او را ترک کرد. شرکت. می توانید از گزینه / لغو SubInACL استفاده کنید. به عنوان مثال ، برای حذف همه آثار Laurie از C سرور:: درایو ، [
subinacl / subdirectories c را تایپ کنید: * / revoke = مثال laurie
SubInACL همچنین از گزینه ای تقریباً یکسان پشتیبانی می کند ، / سرکوب شده ، که یک ویژگی اضافی نیز دارد. با استفاده از این سوئیچ ، هنگامی که حساب کاربری در حال ابطال مالکیت پرونده است ، SubInACL صاحب پرونده را به گروه همه تغییر می دهد.
آیا تاکنون به لیست مجوزهای پرونده نگاه کرده اید و نماد کاربر معمولی را مشاهده نکرده اید ، نام حساب ناشناخته است؟ این نماد بدان معنی است که حسابی که مجوز را در اختیار داشته باشد حذف شده است. با گذشت زمان ، ACL های سازمان شما می توانند مملو از این باقیمانده شوند. SubInACL می تواند آنها را با گزینه / cleandeletedsidsfrom (که باید دامنه را مشخص کند) پاکسازی کند:
subinacl / subdirectories c: * / cleandeletedsidsfrom = مثال
SubInACL vs iCACLs
SubInACL تنها یکی از ابزارهای موجود برای مدیران ویندوز برای دیدن و تغییر ACLS است. دستور iCACLS ، با وجود نام آن ، به شما اجازه می دهد تا لیست های کنترل دسترسی (ACL) را برای فایل ها و پوشه ها روی سیستم فایل نمایش یا تغییر دهید. سلف برنامه iCACLS.EXE دستور CACLS.EXE است (که در ویندوز XP استفاده شده است).
برای نمایش مجوزهای فعلی NTFS در یک پوشه خاص (به عنوان مثال C: کاربران) ، یک دستور سریع را باز کنید و دستور را اجرا کنید:
icacls c: Users
این دستور لیستی از کلیه کاربران و گروه هایی که مجوزهای لازم به این فهرست را به دست می آورند را باز می گرداند.
اگرچه iCACLS ابزاری مفید برای بررسی سریع و اصلاح مجوز ها است ، طیف گسترده ای از ویژگی های SubInACL را ارائه نمی دهد. به همین دلیل ، بیشتر مدیران سیستم تقریباً به طور انحصاری هنگام کار با ACL ها از SubInACL استفاده می کنند.
نحوه استفاده از SubInACL برای مجوزها
[19659002] یکی از کاربردهای اصلی SubInACL کار با مجوزهای کاربر است. مثالهای استفاده ای که در بالا به آنها اشاره کردیم ، راههای نسبتاً اساسی برای کار با مجوزها را به شما نشان می دهیم ، اما در این بخش به جزئیات بیشتری خواهیم پرداخت. کار با مجوزها با SubInACL: The Basics
SubInACL مشابه ابزار یافتن UNIX است. برای هر شی ، SubInACL:
- توصیف امنیتی شیء ObjectName را بازیابی می کند.
- یک یا چند عمل را اعمال می کند ، که به ترتیبی که در خط فرمان ظاهر می شود ، اجرا می شود.
اگر توصیف کننده امنیتی داشته باشد. تغییر یافته است و سوئیچ / testmode مشخص نشده است ، تغییرات روی جسم اعمال می شوند. می توانید هر تعداد کار را به عنوان دلخواه تعیین کنید ، اما برای هر عملی حداقل باید سه کاراکتر را مشخص کنید. نحو حساس به مورد نیست.
SubInACL به شما اجازه می دهد تا هر قسمت از توصیف امنیتی را تغییر دهید:
- مالک
- گروه اولیه
- لیست کنترل دسترسی سیستم (ACL) و ورودی های کنترل دسترسی (ACEs) (
- اختیاری ACL و ACE (به ترتیب توسط SubInACL به عنوان اجازه ACL و PACE به آنها اشاره شده است)
توصیف کننده امنیتی با استفاده از شناسه امنیتی (SID) به یک گروه کاربر ارجاع می دهد. . SID را می توان به یکی از شکلهای زیر بیان کرد:
- DomainName Account (برای مثال ، DOM Administrator)
- StandaloneServer Group
- Account
- s-1-xxxxxx
Where x is به صورت اعشاری (به عنوان مثال ، S-1-5-21-56248481-1302087933-1644394174-1001).
SubInACL حافظه پنهان محلی SID ها را به حداقل می رساند تا هزینه های ترجمه "نام SID به انسان" برای شبکه به حداقل برسد.
ACE های مجوز زیر (PACE) با پارامترهای / اعطاء و رد / استفاده می شود:
پرونده PACEs
PACE های زیر برای اشیاء پرونده معتبر است:
PACE توضیحات F کنترل کامل C تغییر R بخوانید P تغییر مجوزها O مالکیت X eXecute [196510] E بخوانید eXecute W نوشتن D حذف حذف خوشه به اشتراک گذاری PACEs
PACE های زیر برای اشیاء اشتراک گذاری خوشه ای معتبر هستند:
PACE [19659107] توضیحات F کنترل کامل R بخوانید C تغییر تغییر PACEs
PACE های زیر برای اشیاء چاپگر معتبر است:
PACE [19659107] توضیحات F کنترل کامل م مدیریت اسناد P چاپ PACE های رجیستری
PACE های زیر برای کلیدهای رجیستری و اشیاء فرعی رجیستری معتبر هستند:
PACE توضیحات F کنترل کامل R بخوانید A کنترل مجدد Q Query Value S تنظیم Value C ایجاد SubKey E تعداد زیر صدا Y NotifY L ایجاد لینک D حذف 19659109] نوشتن DAC O نوشتن مالک خدمات PACE
PACE های زیر برای خدمات معتبر است:
PACE توضیحات F کنترل کامل R گ eneric Read W Generic نوشتن X Generic eXecute L بخوانید controL Q پیکربندی خدمات پرس و جو S وضعیت خدمات پرس و جو [19659110] E تعداد خدمات متکی به C پیکربندی تغییر خدمات T خدمات شروع O خدمات متوقف P خدمات مکث / ادامه [19659110] من سرویس بازجویی U دستورات کنترل تعریف شده توسط کاربر Share PACEs
PACE های زیر برای اشیاء اشتراکی معتبر است:
PACE توضیحات F [19659109] کنترل کامل R دفعات بازدید: C تغییر PACEs
Metabase PACE PACE های زیر برای اشیاء متاباجی معتبر است:
PACE توضیحات F [19659109] کنترل کامل R بخوانید – MD_ACR_READ W بنویسید – MD_ACR_WRITE من محدود کردن نوشتن – MD_ACR_RESTRICTED_W RITE U نکات ناخوشایند خوانده شده – MD_ACR_UNSECURE_PROPS_READ E Enum Keys – MD_ACR_ENUM_KEYS D DAC – MD_EE_PERPEE_PERPEE_PERPEE_PERPEE_PERPS اشیاء: PACE توضیحات F کنترل کامل R بخوانید W بنویسید E اجرای SAM Object PACE 19659105] PACE های زیر برای اشیاء مدیر حساب های امنیتی (SAM) معتبر است:
PACE توضیحات F کنترل کامل R بخوانید W بنویسید [19659110] E اجرای نحوه دسترسی به مجوزها با استفاده از SubInACL
برای کار با مجوزها در SubInACL ، ابتدا باید اطمینان حاصل کنید که مجوز تغییر مجوزهای مورد نیاز خود را دارید. اگر نمی توانید به یک مجوز برای یک شی خاص دسترسی پیدا کنید:
- اعلان فرمان یا PowerShell را به عنوان سرپرست
- باز کنید و به دایرکتوری که در آن SubInACL قرار دارد با تایپ کردن "cd C: Files برنامه ها (x86) منبع Windows بروید. کیت ابزار ". محل ممکن است در سیستم خاص شما متفاوت باشد.
- "SubInACL.exe / subdirectories" "SubInACL.exe / subdirectories" را تایپ کنید. "محل سکونت که می خواهید مالکیت خود را " / setowner = مدیر "
- پس از اتمام ، مدیریت سیستم (یا هر کسی که شما صاحب را تنظیم می کنید) باید مالک تمام پرونده های آن فهرست باشد و شما می توانید مجوزهای مورد نظر خود را تغییر دهید.
نحوه تهیه نسخه پشتیبان مجوزها
برای تهیه نسخه پشتیبان از مجوزهای پوشه ، خط زیر را تایپ کنید ، تغییر دهید مکانها و نام پرونده خروجی:
- یک فرمان سریع یا PowerShell را به عنوان سرپرست
- باز کنید:
"C: Files Programs (x86) کیت های منبع ویندوز Tools subinacl.exe" / noverbose / outputlog = "C: LOCATION شما می خواهید THE BACKUP TO GO subinaclsave.log" / subdirectories = Directoryonly "D: LOCATION شما می خواهید BACKUP PERMISSIONS OF *. *" / نمایش
برای تهیه نسخه پشتیبان از مجوزهای تک تک پرونده ها ، پوشه ها و زیر پوشه ها در یک مکان (رایج نیست و واقعا کند است) خط زیر را تایپ کنید ، مکان ها و نام پرونده خروجی را تغییر دهید. [19659012] اعلان فرمان یا PowerShell را به عنوان سرپرست
- تایپ کنید:
"C: Files Program (x86) کیت های منبع Windows Tools subinacl.exe" / noverbose / outputlog = "C: LOCATION YOU W BACKUP TO GO subinaclsave.log "/ subdirectories" D: LOCATION You W BACKUP PERMISSIONS OF *. * "/ نمایش
نحوه بازیابی مجوزها [19659017] برای بازیابی مجوزها از یک فایل پشتیبان قبلی خط زیر را تایپ کنید ، مکان و نام پرونده را تغییر دهید. این مجوزها را به موردی که از آن نسخه پشتیبان تهیه شده است ، باز می گرداند.
- یک فرمان سریع یا PowerShell را به عنوان سرپرست
- باز کنید. نوع:
"C: Files Programs (x86) کیت های منبع Windows Tools subinacl.exe "/ playfile" C: LOCATION THE BACKUP IS AT BackupIDidEarlier.log "
To Clone Permensions
برای کلون کردن مجوزها از یک شی یا مکان به حالت دیگر:
- اول ، نسخه پشتیبان تهیه کنید
- سپس با تغییر مسیر پوشه پرونده به مورد یا محلی که می خواهید کپی کنید ، پرونده log را ویرایش کنید.
- یک فرمان سریع یا PowerShell را باز کنید. به عنوان سرپرست.
- نوع:
"C: Files Program (x86) Kits Resource Windows Tools subinacl.exe" / playfile "C: LOCATION THE BACKUP IS AT BackupIJustEdited.log "
واژه نامه نحو SubInACL
اگر شما یک شبکه یا سیستم عامل مجرب هستید ، نحو SubInACL نسبتاً با سایر دستورات آشنا خواهد بود. با این حال ، در زیر می توانید جدول با متداول ترین دستورات و گزینه های این ابزار را پیدا کنید.
توضیحات نحو زیر با نحوه استفاده از SubInACL گروه بندی می شوند: گرفتن ویژگی های آن ، استفاده از آن در تعاملی در پنجره کنسول ، یا
نحو استاندارد برای یافتن دستورات به شرح زیر است:
SubInACL / help [/full | Keyword]
کلمات کلیدی که SubInACL به عنوان بخشی از این پذیرش می کند. دستور عبارتند از:
[ /noverbose | /verbose | /verbose=1 | /verbose=2 | /testmode | /notestmode | /file | /subdirectories | /onlyfile | /share | /clustershare | /keyreg | /subkeyreg | /service | /printer | /kernelobject | /metabase | /display | /setowner | /replace | /changedomain | /migratetodomain | /findsid | /suppresssid | /confirm | /perm | /audit | /ifchangecontinue | /cleandeletedsidsfrom | /accesscheck | /setprimarygroup | /grant | /deny | /revoke ]
پس از آن تعدادی گزینه وجود دارد که می توان با این دستور استفاده کرد:
گزینه توضیحات / گزینه
اطلاعات مربوط به همه گزینه های SubInACL را نشان می دهد. / اقدام
اطلاعات مربوط به همه اقدامات SubInACL را نشان می دهد. / object_type
اطلاعات در مورد همه Sub_nACL object_types را نشان می دهد. ویژگی ها
اطلاعات مربوط به مجموعه ویژگی ها را نشان می دهد. استفاده
خلاصه ای از نحو SubInACL را نشان می دهد. نحو
نمای کلی مفهومی از نحو SubInACL را نشان می دهد. sids
اطلاعات مربوط به نحوه بیان SID ها و نحوه تلاش SubInACL برای ترجمه SID ها را نشان می دهد. view_mode
اطلاعات مربوط به استفاده از SubInACL را برای مشاهده اطلاعات امنیتی نشان می دهد. test_mode
اطلاعات مربوط به استفاده از یک روش آزمایش را نشان می دهد تا از صحت یک دستور SubInACL استفاده کند. object_type
اطلاعات مربوط به انواع شیئی را که SubInACL می تواند با آن کار کند نشان می دهد. domain_migration
اطلاعات مربوط به انتقال کاربر از یک دامنه به حوزه دیگر را نشان می دهد. server_migration
اطلاعات مربوط به انتقال سیستم فایل یک سرور از یک دامنه به دامنه دیگر را نشان می دهد. editing_features
اطلاعات مربوط به ویژگی های SubInACL را که ویرایشگر توصیف کننده های امنیتی را نشان می دهد ، نشان می دهد. نحو استفاده از SubInACL از یک Command-Line یا Powershell
نحوی اصلی استفاده از SubInACL از یک کنسول یا از PowerShell یک دستور زیر است:
SubInACL [/Option] / object_type object_name [[/Action[=Parameter] ..]
در این ساختار اساسی ، پارامترهای زیادی دارید که می توانید مشخص کنید.
/ Parameters Option
/ گزینه می تواند یکی از موارد زیر باشد:
گزینه توضیحات / outputlog = نام پرونده
خروجی فرمان را به پرونده مشخص شده تغییر می دهد. خروجی شامل خطاها خواهد شد مگر اینکه از گزینه / errorlog استفاده شود ، در این صورت خطاها به پرونده ثبت خطا ارسال می شوند و تمام خروجی دیگر به پرونده ورود به سیستم خروجی ارسال می شود. / errorlog = نام پرونده
کلیه خطاها را در پرونده مشخص شده تغییر مسیر می دهد. / alternatesamserver = نام سرور
اگر اولین تلاش آن با موفقیت انجام شود ، سروری را که SubInACL برای جستجوی SID ها استفاده خواهد کرد ، مشخص می کند. این در برخی از انتقال سرور و دامنه مفید است. / offlinesam = نام پرونده
یک فایل متنی را که نام های کاربر را با SID های آنها مطابقت می دهد ، مشخص می کند و SubInACL را راهنمایی می کند تا SID ها را در این پرونده جستجو کند ، به جای سروری که در آن شیء قرار دارد. اگر دامنه غیرقابل دسترسی باشد یا دیگر موجود نباشد ، این مفید است. / stringreplaceonoutput = String1 = String2
باعث SubInACL می شود تا تمام رخدادهای String1 را در خروجی خود با String2 جایگزین کند. / Expenroundmentsymbols
به SubInACL اجازه می دهد تا از متغیرهای محیط مانند٪ نام کاربری٪ استفاده کند. این مقدار پیش فرض و نقطه مقابل آن است: / noxtanden Environmentvariables
/ noexpanden Environmentmentsymbols
مانع از استفاده از متغيرهاي محيط SubInACL مي شود. این زمانی مفید است که SubInACL روی فایلهای فرمان کار کند. / آمار
آمار را با پایان یافتن پردازش نشان می دهد. این مقدار پیش فرض است. / نوستاتیک
با پایان یافتن پردازش ، نمایش آمار را سرکوب می کند. / dumpcachedsids = نام پرونده
پس از اجرای SubInACL ، می توانید محتویات حافظه پنهان محلی محلی را روی یک پرونده رها کنید. این پرونده می تواند برای اجرای SubInACL در آینده (مشاهده / آفلاین) برای سرعت بخشیدن به فرآیند وضوح SID ها استفاده شود. / جداکننده = شخصیت
کاراکتری را برای SubInACL برای استفاده در جای علامت برابر (=) هنگام تفسیر یک فرمان مشخص می کند. این به شما امکان می دهد رشته ای را که شامل یک علامت برابر در یک فرمان SubInACL است مشخص کنید. / noverbose
باعث می شود SubInACL تولید خروجی كوتاهی داشته باشد كه خواندن افراد راحت تر باشد. خروجی دستور SubInACL در حالت / noverbose می تواند در یک فایل فرمان ذخیره شود و بعداً دوباره پخش شود. / فعل
باعث تولید SubInACL با بازده دقیق می شود. این سطح پیش فرض جزئیات است. / verbose = 1
این حالت نمایش با حالت / فعل یکسان است. / verbose = 2
این حالت نمایش با حالت / فعل یکسان است. / حالت آزمایشی
SubInACL را در حالت تست اجرا می کند تا تغییراتی در توصیف امنیتی شی مشخص شده اعمال نشود. / notestmode
SubInACL را در حالت بروزرسانی اجرا می کند ، به طوری که هرگونه تغییر تعریف شده توسط یک دستور SubInACL اعمال می شود. این مقدار پیش فرض است. / پارامترهای Object_Type
/ object_type می تواند هر یک از موارد زیر باشد:
نوع Object توضیحات / پرونده [=directoriesonly | =filesonly]
مشخص می کند که object_name یک شیء پرونده است. هنگامی که پارامتر / پرونده مشخص شد ، object_name می تواند پرونده ها را با استفاده از قالب کنوانسیون جهانی نامگذاری (UNC) یا با استفاده از نامه و مسیر درایو محلی شناسایی کند. object_name می تواند حاوی شخصیت * / زیر مجموعه ها | / subdirec [=directoriesonly | =filesonly]
مشخص می کند که object_name یک پوشه (فهرست) است و SubInACL از تمام پرونده های موجود در آن و در تمام زیر پوشه های آن استفاده می کند. وقتی پارامتر / subdirectories یا / subdirec مشخص شده باشد ، object_name می تواند پرونده ها را با استفاده از فرمت UNC یا با استفاده از نامه و مسیر درایو محلی شناسایی کند. object_name می تواند شامل شخصیت * wildcard باشد. / فقط پرونده
بدون استفاده از مکانیسم FindFilexxx یک پرونده را باز می کند. مقادیر معتبر برای object_name هنگام مشخص کردن پارامتر / onlyfile به لوله ها یا نامه های نامگذاری شده گفته می شود. / samobject
مشخص می کند که object_name یک مدیر حساب های امنیتی (SAM) است ، مانند یک کاربر ، گروه محلی یا یک گروه جهانی. / اشتراک
مشخص می کند که object_name یک اشتراک پرونده شبکه است. / خوشه
مشخص می کند که object_name یک اشتراک فایل خوشه ای است. / keyreg
مشخص می کند که object_name یک کلید رجیستری است. / subkeyreg
مشخص می کند که object_name یک زیر مجموعه رجیستری است. / خدمات
مشخص می کند که object_name یک سرویس است. / فرآیند
مشخص می کند که object_name یک فرآیند است. / چاپگر
مشخص می کند که object_name یک چاپگر است. / kernelobject
مشخص می کند که object_name یک جسم هسته است. مقادیر معتبر برای object_name می تواند شامل صداهای متن ، بخش یا اشیاء رویداد باشد. / metabase
مشخص می کند که object_name یک ویژگی پایگاه داده AdminACL از پایگاه داده خدمات اطلاعات مایکروسافت مایکروسافت (IIS) است. یادداشت ها:
- این object_type فقط با مسیرهای زیر متاب زیر قابل استفاده است:
- LM MSFTPSVC
- LM MSFTPSVC / n
- LM W3SVC
- این object_type از شمارش
پشتیبانی نمی کند / پارامترهای عمل
/ عمل می تواند هر یک از موارد زیر باشد:
اقدام توضیحات / نمایش [=dacl | =sacl | =owner | =primarygroup | =sdsize | =sddl]
توصیف کننده امنیت شیء مشخص شده را نشان می دهد. این اقدام پیش فرض است. پارامترهای اختیاری به شما امکان می دهد مشخص کنید که قسمت های توصیف کننده امنیتی SubInACL باید جستجو کند. هنگامی که در رابطه با / noverbose استفاده می شود ، / نمایشگر توصیف کننده امنیتی را به شیء مشخص شده پاسخ می دهد. / مجموعه داران
صاحب جسم را تغییر می دهد. با استفاده از / مالک = SID یا / setowner = SID صاحب = DomainName سرپرستان SID سرپرستان را روی سروری که شیء در آن قرار دارد بازیابی می کنند. / مالک = مالک
مالک شیء مشخص شده را تغییر می دهد. مالک یک SID معتبر است که می تواند در چهار قالب مختلف بیان شود. / جایگزین = [DomainName] OldAccount = [DomainName] NewAccount
تمام ورودی های کنترل دسترسی (ACE) (ACE حسابرسی و مجوز ACE ها) را در شی مشخص شده جایگزین می کند. / accountmigration = DomainName OldAccount = DomainName NewAccount
اگر یکی از آنها DomainName OldAccount باشد ، مالک یا گروه اصلی را جایگزین می کند. مثلا: / accountmigration = DOM_MARKETING ChamberMan = NEWDOM NewChairMan
همه ACE های حاوی DOM_MARKETING ChamberMan را با NewChairMan SID کپی می کند از دامنه NEWDOM. برای اطلاعات بیشتر به عمل / جایگزینی مراجعه کنید.
/ changedomain = OldDomainName = NewDomainName
همه ACE ها را با SID از OldDomainName با SID معادل موجود در NewDomainName جایگزین می کند. / migratetodomain = SourceDomain = DestinationDomain
ACE ها را در SourceDomain برای شیء مشخص شده به DestinationDomain اضافه می کند ، ضمن حفظ ACE ها در SourceDomain. / findid = DomainName Account [=stop | =continue]
object_name حاوی مرجع به DomainName Account را در توصیف امنیت نشان می دهد. اگر = stop مشخص شود و Account پیدا شود ، پارامترهای بعدی پرش می شوند و تغییرات اعمال نمی شوند. If =stop is specified and the Account is not found, the next parameters will be executed. If =continue is specified and the Account is found, the next parameters will be executed. If =continue is specified and the Account is not found, the next parameters will be skipped and changes will not be applied. /suppresssid=[DomainName]Account
Suppresses (deletes) all ACEs containing the [DomainName]Account. If the object’s owner is [DomainName]Account, the owner is set to Everyone’s SID. /confirm
If placed inside a set of actions, prompts the user before processing the next action. /perm
Suppresses all existing PACEs. /audit
Suppresses all existing AACEs. /ifchangecontinue
Continues to process the next actions only if changes have been made by the previous actions. /cleandeletedsidsfrom=DomainName [=dacl | =sacl | =owner | =primarygroup | =sdsize]
Deletes all ACEs containing deleted (not valid) SIDs from DomainName. The optional parameters allow you to specify certain parts of the security descriptor in which to search for invalid SIDs. /testmode
Prevents changes from being applied to the object. This allows you to test the modifications that SubInACL will make. /accesscheck=[DomainName]UserName
Displays the access granted to the [DomainName]UserName. This option requires the SeTcbName privilege (Act As Part of the Operating System), and cannot be used with remote objects. /setprimarygroup=[DomainName]Group
Changes the primary group. /grant=[DomainName]UserName[=Access]
Adds a PACE for UserName. Valid values for Access depend on the type of object specified in object_name. If Access is not specified, Full Control access is granted. /deny=[DomainName]UserName[=Access]
Adds a denied PACE for the specified user or group. Valid values for Access depend on the type of object specified in object_name. If Access is not specified, all accesses are denied. /sgrant=[DomainName]UserName[=Access]
Adds a successful AACE for the specified user. If Access is not specified, Full Control access is granted. /sdeny=[DomainName]UserName[=Access]
Adds a failed AACE for the specified user. If Access is not specified, all accesses are denied. /revoke=[DomainName]UserName
Denies all PACEs for the specified user or group. /compactsecuritydescriptor
Compresses security descriptors by removing unused entries. /pathexclude=Pattern
Excludes all containers matching the description of Pattern, and all the objects within those paths. The * wildcard character can be used within Pattern to represent any number of any characters. Syntax for Using SubInACL Within Its Own Scripting Environment
The syntax for using SubInACL from within its own scripting environment is similar to the standard syntax, but there are some differences. Here is the generic command:
SubInACL [/Option ..] /playfile FileName
Parameters
/Option
Any of the SubInACL options defined above.
FileName
The name of the SubInACL command file (script file). You can create the file manually, or by issuing a SubInACL command that uses the /noverbose and /display options.
The syntax of the /playfile command file is the same as the syntax of SubInACL when used in a console window, except that:
- /Option is not used.
- Each /object_type is preceded by a plus symbol (+) rather than a slash (/).
- Each /object_type and object_name pair appear together, on the same line.
- Each action appears on its own line, followed by any applicable parameters.
A Final Word
SubInACL is a powerful tool for working with permissions for system administrators, and in this guide, we’ve shown you how to use the tool. The examples above are just the beginning of what SubInACL can do, though, so use the /help command to explore all the options available to you.
Alternatively, you can check out our guides on advanced uses of PowerShell, and use your new SubInACL skills to explore pentesting or remoting in PowerShell.
