روش های کنترل دستیابی
اولین سطح ایمنی در مدل امنیتی IIS ، امکان دستیابی به سرویس دهنده وب بر اساس آدرس های IP و یا Internet Domain Name مربوط به درخواست های سرویس گیرندگان است. در این راستا می توان ، آدرس های IP و یا اسامی ماشین هائی خاص را مشخص ، تا زمینه دستیابی آنان به سرویس دهنده وب فراهم و یا امکان دستیابی از آنان سلب گردد. در زمان دریافت هر یک از بسته های اطلاعاتی ، آدرس IP و یا نام آنان با توجه به پیکربندی انجام شده در بخش "IP address and Domain name Restrictions " ، بررسی و بر اساس سیاست های تعریف شده ، عکس العمل لازم ارائه خواهد شد . ( گزینه فوق در بخش Directory Security Tab مربوط به جعبه محاوره ای خصلت های سرویس www ، وجود دارد ). زمانیکه از آدرس های IP بمنظور کنترل دستیابی استفاده می گردد ، برخی از سرویس گیرندگان وب ، ممکن است از طریق یک سرویس دهنده Proxy و یا فایروال ، به سرویس دهنده وب دستیابی پیدا می نمایند، در چنین شرایطی آدرس های IP بسته های اطلاعاتی دریافتی برای سرویس دهنده Proxy و یا فایروال ، ارسال خواهند شد .
بمنظور پیاده سازی برخی از روش های کنترل دستیابی به سرویس دهنده وب ، می توان از تکنولوژی هائی نظیر SSL)Secure Sockets Layer) و امضاء الکترونیکی ، نیز استفاده کرد . SSL ، یک کانال ارتباطی نقطه به نقطه خصوصی ، یکپارچه و معتبر را ایجاد می نماید . از امضاء الکترونیکی ، بمنظور بررسی هویت یک کاربر و یا یک سرویس دهنده و یا سرویس دهندگان وب و مرورگرها بمنظور معتبر سازی دوسویه ( متقابل ) ، تضمین صحت در ارسال صفحات و یکپارچگی اطلاعات موجود در آنها ، استفاده می گردد .
شناسائی و تائید
بمنظور شناسائی و تائید کاربران ، می توان از چهار گزینه موجود در IIS استفاده کرد .
Anonymouse Access . روش فوق ، متداولترین گزینه برای دستیابی به یک سرویس دهنده وب است. IIS ، بدین منظور account هائی با نام IUSR_Computername و IWAM_Computername را بصورت پیش فرض، ایجاد می نماید. account فوق ، دارای مجوزهای زیر خواهد بود :
Log on locally , access this computer from network and log as a batch job |
کاربران در زمان دستیابی به منابع سرویس دهنده بر روی وب،بصورت اتوماتیک توسط account فوق ، به شبکه وارد خواهند شد. در ادامه کاربران با توجه به مجوزهای تعریف شده در رابطه با account فوق ، قادر به دستیابی منابع موجود خواهند بود. نام account در نظر گرفته شده را می توان با استفاده از گزینه Edit تغییر داد . پیشنهاد می گردد ، مجوزهای Log on as a batch job و access this computer from network ، در رابطه با account فوق حذف گردد ( در صورتیکه ضرورتی به استفاده از آنان وجود ندارد ) .
نکته : زمانیکه سرویس IIS ، متوقف و مجددا" راه اندازی و یا سیستم راه اندازی مجدد (Reboot ) می گردد ، مجوزهای Log on as a batch job و access this computer from the network ، برای accout های IUSR_Computername و IWAM_Computername ، مجددا" در نظر گرفته خواهد شد (Restore ) . در صورتیکه تاکید بر حذف مجوزهای فوق وجود داشته باشد ، می توان یک Local user account جدید را ایجاد و آن را بعنوان account پیش فرض Anonymouse برای سرویس IIS در نظر گرفت .( بخش Anonymouse access and authentication control مربوط به Directory Security Tab سرویس www و یا Account Tab مربوط به سرویس FTP ) . پس از انجام عملیات فوق ، می توان IUSR_Computername ، را حذف کرد.
Basic Authentication ، تقریبا" تمامی مرورگرهای وب موجود ، از روش فوق حمایت می نمایند . در این روش ، نام و رمز عبور کاربر بصورت متن (Clear text ) ، ارسال می گردد . بدیهی است در چنین مواردی امکان تشخیص و کشف اطلاعات ارسالی برای افرادیکه ترافیک موجود در شبکه را مانیتور می نمایند ، وجود خواهد داشت . در صورتیکه تاکید بر استفاده از روش فوق وجود داشته باشد ، پیشنهاد می گردد که بهمراه آن از SSL استفاده گردد . ترکیب SSL با روش Basic Authentication ، امکان رهگیری و کشف اطلاعات ارسالی را کاهش خواهد داد . بدین منظور لازم است مراحل زیر دنبال گردد :
مرحله اول : استفاده از یک Server Certificate
مرحله دوم : استفاده از یک کانال ایمن در زمان دستیابی به منابع
مرحله سوم : فعال نمودن Basic authentication و غیرفعال نمودن Anonymouse و Integrated Windows authentication برای سایت مورد نظر.
Digest Authentication ، روش فوق امکاناتی مشابه Basic Authentication را ارائه ولی از روش متفاوتی بمنظور ارسال اطلاعات حساس و معتبر ، استفاده می نماید . سرویس دهنده ، اطلاعاتی را شامل نام و رمز عبور کاربر بهمراه اطلاعات اضافه دیگر و یک Hash ( محاسبه می گردد ) را برای سرویس گیرنده ارسال می دارد . در ادامه Hash ، بهمراه سایر اطلاعات اضافه برای سرویس دهنده ارسال می گردد . زمانیکه سرویس دهنده اطلاعات را دریافت می نماید ، آنان را با نام و رمز عبور ترکیب و یک Hash را بدست می آورد . در صورتیکه hash های مربوطه با یکدیگر مطابقت نمایند ، کاربر تائید می گردد. در صورتیکه روش فوق فعال و سایر روش ها غیر فعال گردند ، یک pop up box ، نمایش و کاربر می بایست نام و رمز عبور خود را جهت ورود به سایت مشخص نماید . اطلاعات فوق ، بصورت رمزشده و وارونه ذخیره خواهند شد . بمنظور فعال نمودن ویژگی فوق ، مدیران شبکه می بایست یک password policy را در این رابطه تعریف تا امکان استفاده از روش فوق ، فراهم گردد . در صورت عدم تعریف Password policy ، امکان استفاده از روش فوق، وجود نخواهد داشت . بمنظور فعال نمودن Password Policy می بایست :
در ویندوز 2000 ، Computer Configuration|Windows Settings | Security Settings | Account Policies | Password policy را انتخاب و گزینه Store Passwords using reversible encryption for all users in the domain ، فعال گردد. ( گزینه فوق بصورت پیش فرض غیر فعال است ) . پس از فعال شدن سیاست فوق و زمانیکه کاربر رمز عبور و یا نام خود را تغییر و یا یک Account جدید ایجاد گردد ، رمز عبور بصورت رمز شده و وارونه ذخیره می گردد .
Integrated Windows Authentication ، روش فوق از رمزنگاری مبتنی بر Hashing بمنظور تائید رمز عبور استفاده می نماید . نام و رمز عبور واقعی هرگز در شبکه ارسال نخواهد شد ، بنابراین امکان کشف و تشخیص آن توسط یک منبع ناامن و تائید نشده ، وجود نخواهد داشت . تائید کاربران می تواند با استفاده از پروتکل Kerberos V5 و پروتکل Challenge/response صورت پذیرد . روش فوق، گزینه ای مناسب برای استفاده در اکسترانت ها نخواهد بود ، (امکان فعالیت آن از طریق یک سرویس دهنده Proxy و یا سایر برنامه های فایروال وجود نخواهد داشت) . از روش فوق بمنظور برپاسازی اینترانت های ایمن ، استفاده می گردد.
پیکربندی IIS می تواند بگونه ای صورت پذیرد که امکان استفاده از ترکیب روش های تائید اعتبار و Anonymouse در آن پیش بینی گردد . در چنین مواردی ، می توان این امکان را برای یک سایت فراهم آورد که دارای بخش های متفاوت ایمن و غیرحساس باشد . زمانیکه از یک مدل Authentication بهمراه Anonymouse استفاده می گردد ، کاربران همواره و در حالت اولیه با استفاده از IUSR_Computername به سایت Log on خواهند نمود . زمانیکه درخواستی Fail گردد ( با توجه به عدم وجود مجوزهای لازم بمنظور دستیابی به یک منبع ) ، پاسخی برای سرویس گیرنده ارسال که نشاندهنده عدم وجود مجوز لازم برای دستیابی به منبع مورد نظر است . همراه با اطلاعات فوق ، لیستی از مدل های متفاوت تائید اعتبار که توسط سرویس دهنده حمایت می گردد، نیز ارسال خواهد شد . مرورگر سرویس گیرنده در این راستا به کاربر پیامی را نمایش و از وی درخواست نام و رمز عبور را خواهد کرد . در ادامه اطلاعات مورد نظر ( نام و رمز عبور کاربر ) برای سرویس دهنده ارسال خواهد شد ، در صورتیکه کاربر دارای مجوز لازم باشد ، امکان استفاده از منبع مورد نظر برای وی فراهم خواهد شد .
مدیریت فهرست (Directory )
علاوه بر مجوزهای مربوط به فایل و فهرست ها که در سطح سیستم عامل برقرار می گردد ، IIS ، امکانی با نام Application level Permission را ارائه نموده است . در این راستا ، امکان انتخاب گزینه هائی نظیر : Read , Write , Directory Browsing ,Scripts only و Scripts and executables وجود داشته و می توان از آنان بهمراه فهرست های شامل محتویات مربوط به سرویس های www و FTP استفاده کرد .
Read . مجوز فوق ،امکان مشاهده و ارسال محتویات برای مرورگر سرویس گیرنده را فراهم می نماید .
Write . مجوز فوق، به کاربرانی که مرورگرآنان دارای ویژگی PUT ( مربوط به پروتکل استاندارد HTTP 1.1 ) است ، امکان Upload نمودن فایل هائی برای سرویس دهنده و یا تغییر محتویات یک فایل write-enabled را خواهد داد . گزینه فوق ، در اختیار کاربران قرار داده نمی شود و صرفا" مدیریت مربوطه به نوع خاص و محدودی از مجوز فوق ، نیاز خواهد داشت .
Directory Browsing ، مجوز فوق ، به یک سرویس گیرنده امکان مشاهده تمامی فایل های موجود در یک فهرست را خواهد داد . از مجوز فوق صرفا" در رابطه با سرویس دهندگان عمومی FTP استفاده و در سایر موارد ، استفاده ازمجوز فوق ، توصیه نمی گردد .
Scripts . مجوز فوق ، امکان اجراء را در سطح اسکریپت ها محدود خواهد کرد . در مواردیکه از برنامه های CGI و یا ASP استفاده می گردد ، استفاده از مجوز فوق ، لازم خواهد بود. انشعاب فایل های مربوط به اسکریپت ها می بایست قبلا" به برنامه های Scripting مربوطه ، map شده باشد .
Scripts and Executables . مجوز فوق ، امکان اجرای برنامه های EXE و یا DLL را فراهم خواهد کرد( علاوه بر امکان اجرای فایل های ASP و CGI ) . با توجه به حساس بودن مجوز فوق ، استفاده از آن بجزء در موارد خاص و کاملا" کنترل شده ، توصیه نمی گردد .
مجوزهای فوق را می توان همزمان با نمایش جعبه محاوره ای مربوط به خصلت های www و FTP ، تنظیم نمود .
اعمال محدودیت در رابطه با سرویس دهندگان و فهرست های مجازی
سرویس دهندگان مجازی ،این امکان را فراهم می آورند که کامپیوتری که بر روی آن IIS اجراء شده است، قادر به حمایت از چندین Domain Names ( وب سایت ) باشد.در زمان پیکربندی یک سرویس دهنده مجازی برای ایجادسرویس دهنده Primary و هر یک از سرویس دهندگان مجازی ، به اطلاعاتی نظیر:
( Host Header Names(NHN و یا آدرس های IP ، نیاز خواهد بود. بدین ترتیب ، یک سرویس دهنده که بر روی آن IIS نصب و شامل صرفا" یک کارت شبکه است ، قادر به مدیریت سایت های متعدد خواهد بود.
IIS ، امکان تعریف یک نام مستعار برای فهرست های حاوی اطلاعات مورد نیاز برای انتشار بر روی سایت را خواهد داد . نام فوق ، بعنوان یک دایرکتوری مجازی شناخته شده و در آدرس های URL می توان از آنان استفاده کرد. دایرکتوری های مجازی از منظر ملاقات کننده سایت ، فهرست هائی هستند که از دایرکتوری اصلی wwwroot / ، انشعاب شده اند . در رابطه با دایرکتوری های مجازی نیز می توان سیاست های امنیتی خاصی را اعمال نمود. در این راستا می توان از مجوزهای Read,Write,Directory Browsing,Script only و Scripts and executables ، استفاده کرد. مجوز Read ، این امکان را به یک سرویس گیرنده خواهد داد تا فایل های ذخیره شده در یک دایرکتوری مجازی و یا زیرفهرست مربوطه را Download نماید . صرفا" دایرکتوری هائی که شامل اطلاعات مورد نیاز برای نشر و یا Download می باشند ، می بایست دارای مجوز Read باشند . بمنظور ممانعت از Download نمودن فایل ها ی اجرائی و یا اسکریپت ها ، توصیه می گردد که آنان در دایرکتوری های مجزاء بدون در نظرگرفتن مجوز Read ، مستقر گردند، این نوع دایرکتوری ها ی مجازی می بایست دارای مجوز Scripts only و یا Scripts and executables بوده تا سرویس گیرندگان وب قادر به اجرای آنان گردند .
خلاصه
در زمان پیکربندی سرویس دهنده وب ، موارد زیر پیشنهاد می گردد :
در رابطه با نوع دستیابی به سایت ، تصمیم مناسب اتخاذ و متناسب با آن ، محدودیت های لازم بر اساس آدرس های IP و یا Internet Domains ، اعمال گردد .
مشخص نمائید که آیا ضرورتی به استفاده از SSL و Certificates در محیط مورد نظر، وجود دارد .
یک روش موجود را برای " تائید اعتبار " ، کاربران انتخاب نمائید . روش Anonymouse متداولترین گزینه در این زمینه است . در صورتی از Basic authentication استفاده گردد که سایت مورد نظر تکنولوژی SSL را حمایت می نماید .
دایرکتوری هائی را با مجوز Read ( از مجموعه مجوزهای NTFS ) ، برای گروه کاربران عمومی ( Webusers ) ایجاد نمائید. این دایرکتوری ها ، همچنین می بایست دارای مجوز Read only مربوط به IIS در زمان تنظیم سایت های FTP و www باشند . دایرکتوری ها ی فوق ، شامل اطلاعات لازم برای سرویس گیرندگان بمنظور مشاهده و یا Download ، خواهند بود.
یک دایرکتوری با مجوز Read&Execute ( از مجموعه مجوزهای NTFS ) صرفا" در رابطه با گروه کاربران عمومی (Webusers ) ایجاد گردد . این دایرکتوری همچنین می بایست دارای مجوز Script only ( مربوط به مجوزهای IIS ) در زمان پیکربندی سایت www گردد . دایرکتوری فوق ، شامل فایل های اجرائی نظیر اسکریپت ها ، می باشد .
منبع:srco.ir