AliReza26
Active Member
iritn - پوشش دادن يا پنهان كردن يك وب سرور شامل از بين بردن جزئيات هويتي اي است كه هكرها مي توانند براي كشف سيستم عامل و وب سرور نصب شده روي آن مورد استفاده قرار دهند. اين اطلاعات در حالي كه هيچ استفاده اي براي بهره برداران مشروع ندارد ، اغلب نقطه شروعي براي هكرها مي باشد.
دراين مقاله به بررسي برخي راهكارهايي كه مي توانيم با بكارگيري آنها خطر شناسايي را به حداقل برسانيم ، مي پردازد. بيشتر مثالها مربوط به IIS ميكروسافت مي باشد . زيرا بخاطر آسيب پذيري زيادش به طور وسيعي مورد توجه نفوذگران قرار گرفته است. همچنين يك سري از اقدامات پيشگيرانه شناسايي براي آپاچي سرور نيز ذكر خواهد شد. غير قابل شناسايي كردن سرور وظيفه همه كساني است كه مسئوليت اجرايي وب سرور را بر عهده دارند.
نفوذگران از اينجا شروع مي كنند ، چرا شما از اين نقطه شروع نمي كنيد ؟
بگذاريد از نقطه نظر مهاجمين نگاه كنيم. آسيب پذيريهاي امنيتي اتكا بر ورژن و نوع نرم افزار دارند.
يك نفوذ گر براي نفوذ به يك وب سرور بايد بداند وب سرور از چه نوعي و داراي چه ورژني مي باشد. دانستن جزئيات يك وب سرور كارآمدي هرگونه تهاجمي را به مقدار زياد افزايش مي دهد.
Server Header ها همه چيز را مي گويند:
بسياري از وب سرورها خودشان و سيستم عاملي را كه بر روي آن نصب هستند به هر كسي كه بخواهد معرفي مي نمايند. با استفاده از ابزارهای بررسي شبکه مانندSam Spade يا Header Check مي توانيد http هدرهاي سرور را تشخيص دهيد. تنها كافيست Home Page وب سايت را درخواست نموده وhttp هدرهاي حاصله يا بنرهايي كه توسط سرور ارسال گرديده را مورد بررسي قرار دهيد. در ميان آنها احتمالا چيزي شبيه به Server : Microsoft – IIS/5.0 پيدا خواهيد كرد.
آپاچي سرور نيز به صورت پيش فرض همه مشخصات را اعلام می کند.
Server : Apache/2.0.41-dev(unix)
كاربران آپاچي سرور 2.x داراي مدول Mod Header هستند . این کاربران مي توانند به سادگي فايل httpd.conf را به صورت زير اديت نمایند :
Header Set Server "New Server Name"
متاسفانه در نسخه هاي پيشين آپاچي سرور نمي توان سرور هدرها را تغيير داد.
كاربران IISنیز مي توانند Lock Down را نصب نموده و براي برداشتن وجايگزين كردن هدرها از فايل پيكره بنديURLScans استفاده نمايند. در صورتي كه از سرور Cold Fusion استفاده مي نماييد و مي خواهيد URLScans را به كار بريد بسيار محتاط باشيد. زيرا روشي كه در حال حاضر هدرها را جايگزين
مي نمايد باعث خسارات سنگيني به صفحات CFM مي گردد. در اين حالت تنها راه ممكن برداشتن هدرهاست.
پسوند فايلها :
نمايش پسوند فايلها مانند .ASP يا .ASPX به طور مشخص نشان دهنده آن است كه شما از يك سرور
ميكرو سافت استفاده مي كنيد. به طور كلي پنهان كردن پسوند فايلها كار مفيدي است. در طراحي سايتها سعي كنيد ازHTML و Java استفاده كنيد. پسوند فايلهاي طراحي شده توسط اين زبانها نشان دهنده نوع وب سرور نمي باشد.
در مورد آپاچي سرور به مدول mod negotiation توجه خاصي داشته باشيد. بوسيله اين مدول مي توانيد پسوند فايلها را مخفي كنيد. همچنين توسط mod header مي توان پسوند فايلها را تعويض نمود.
كاربران IIS نيز مي توانند از برنامه PageXChanger براي پنهان ساختن پسوند فايلها استفاده نمايند.
ASP Session ID Cookie:
اين كوكي ها وظيفه حفظ وضعيت سرويس گيرنده را بر عهده دارند و به سادگي سيستم عامل و وب سرور نصب شده بر روي آن را مشخص مي كنند.
Set –Cookie:ASPESSIONIDQGQGGWFC=MGMLNKMDENPEOPIJHPOPEPPB;
شما مي توانيد ASP Session State را از كار بيندازيد. همچنين مي توانيد براي تغيير اسامي كوكي ها از يك فيلتر ISAPI استفاده نماييد. از طرفي ASP Session ها باعث محدود شدن منابع سيستم مي گردند. از كار انداختن آن به بهبود اجرايي ASP كمك مي كند و باعث گمنام ماندن سرور شما نيز مي گردد.
WebDAV:
راه ديگر شناسايي سرورهاي ويندوزي WebDAV مي باشد. WebDAV منحصر به ميكروسافت يا IIS نمي باشد ، بلكه يك استاندارد پيشنهادي (RFC 2518) با گروه كاري IETF است. سرور ويندوزي در حالت پشتيباني WebDAV اطلاعات زيادي را به هدر مي افزايد كه مي تواند مورد استفاده هكرها قرارگيرد. در صورتيكه از WebDAV براي پشتيباني Web Folders , Outlook Web Access يا ... استفاده
نمي نماييد، مي توانيد با استفاده ازIISLockDown يا تغيير در رجيستري آن را از كار بيندازيد.
هدرهاي ديگر:
برخي از سرورهاي وب به وسيله نمايش هدرهاي خاص در پاسخهاي HTTP هويت خود را فاش
مي سازند. هدرهاي X-Powered-By و X-ASPNET-Version علائم بارزي هستند كه نشان دهنده استفاده از ASP.NET و بنابراين ميزباني IIS مي باشند. همچنين به ياد داشته هدرهاي
Microsoft Office Web Server را بايد مخفي كنيد.
Windows Authentication:
كاربران IIS نبايد Windows Authentication را به عنوان راهي براي پنهان نمودن اطلاعات بر روي سرور مورد استفاده قرار دهند. زيرا اين شيوه اطلاعات زيادي را در مورد سرور بر ملا مي سازد. يك هكر
مي تواند با توجه به هدرهاي Authentication WW- نوع وب سرور را مشخص نمايد. زماني كه يك فايل يا فلدر توسط پروسه Authentication ويندوز محافظت مي شود، درهدرهاي فرستاده شده از طرف سرور String NTLM وجود دارد كه مي تواند مورد بهره برداري هكر قرار گيرد.
پيام هاي پيش فرض:
پيامها ، صفحات و اسكريپتهاي پيش فرض نيز باعث شناسايي وب سرور مي گردد. اغلب نرم افزارهاي پشتيباني كننده وب سرور داراي پيغامهاي پيش فرض هستند كه بايد به گونه اي مناسب تغيير پيدا كند. همچنين تمام Administration Pages ، اسكريپتها وDocument هايي كه همراه با وب سرور نصب مي شوند بايد مخفي يا پاك شوند.
ديگر سرويسها:
بسياري از کامپیوترهایی كه با عنوان وب سرور استفاده مي شوند ، جدا از خدمات HTTP خدمات ديگري مانند SMTP و FTP را ارائه مي دهند. به عنوان يك قانون امنيتي سعي كنيد چنين سرويسهايي را در وب سرور خود راه اندازي نكنيد. به ويژه از سرويسهاي پيش فرض FTP و SMTP در ميكرو سافت IIS اجتناب كنيد. زماني كه يك ارتباط با سرويس SMTP برقرار مي گردد. يك پيغام خوشامد گويي براي Client فرستاده مي شود. اين پيغام هيچ تاثيري در سرويس ايميل ندارد. اما مشابه هدرهاي HTTP اطلاعاتي را در مورد وب سرور بر ملا مي سازند. سرويس پيش فرض SMTP ويندوز چنين اطلاعاتي را نمايان مي سازد . همچنين سرور پيش فرض IIS FTP يك بنر شناخته شده را ارائه مي دهد . از آنجايي كه اصلاح اين بنر از اصلاح بنر SMTP پروسه پيچيده تري است بهترين راه جايگزيني آن با يك FTP سرور ديگر مانند RhinoSoft's Serv-U FTP Serverاست . كه بتوان هرگونه پيغامي را در بنر FTP نمايش داد. همچنين اين FTP سرور داراي امتيازات ديگري نيز از نظر ايمني مي باشد.
ورودهاي غير مجاز :
بسياري از Exploits ها از يك URL پيچيده براي گرفتن شل (Shell ) يا كنترل يك CGI Program استفاده ميكنند كه هكر بوسيله آنها مي تواند ليستي از فايلها سيستم عامل را بدست آورد. بهترين روش براي مقابله با اينگونه حملات استفاده از يك فيلتر داده مي باشد كه كاراكترهاي غير قابل قبول مثل متا كاراكترها را از اطلاعاتی که توسط كاربر وارد می شود حذف نمايد. براي IIS استاندارد جاري IISLockDown/URL Scan است. نسل جديدي از Firewall ها نيز قابليت پشتيباني از لايه هاي كاربردي Web Server را دارا هستند.
پشته ها:
حتي زمانيكه علائم افشاگرانه از روي لايه كاربردي وب سرور حذف شد ، بر روي لايه هاي پايين تر شبكه نقاط ضعف آشكارسازي باقي مي ماند. هر سروري با يك اتصال شبكه داراي يك Network Protocol است كه قابل اسكن و شناسايي مي باشد ، بهترين اسكنرهاي پشته مانند NMAP مي تواند با استفاده از تكنيكهاي مختلف سيستم عامل را شناسايي كند. همچنين پشته IP مربوط به هر سيستم عامل نيز در مقابل شناسايي از طريق پروتوكل ICMP آسيپ پذير است. اولين راه مقابله با اين نوع آسيب پذيري ها استفاده از يك فايروال مي باشد. به اين نكته توجه داشته باشيد كه با وجود فايروال ، يك تحليل شبكه اي دقيق هنوز هم مي تواند نوع وب سرور را مشخص سازد.
Netcraft:
در سايت Netcraft با وارد نمودن URL هر وب سايت مي توان به اطلاعاتي در مورد سيستم عامل و وب سرور آن سايت بدست آورد. با تغيير دادن HTTP هدرها مي توان كاري كرد كه گزارش Netcraft اشتباه شود. همچنين با حذف HTTP هدرها ، Netcraftگزارش ناشناس بودن وب سرور را ارائه خواهد كرد.
پیش فرضهای :TCP/IP
احتمالاً هنوز سيستم عامل شما حتي از پشت يك ديوار آهنين نيز مورد شناسائي قرار خواهد گرفت. براي آنكه بتوان يك سيستم عامل را به طور كامل ناشناس كرد بايد برخي از پيش فرض هاي محيط IP/TCP مانند (Receive Window size) RWIN ، (Maximum Transmission Units) MTU ، MSS (Maximums Segment Size) ، (Time-to-Live) TTL دستكاري شود . در زمان تغيير دادن اين پيش فرض ها بسيار محتاط باشيد زيرا مي تواند تاثير معكوس بر روي وب سرور داشته و يا سيستم عامل را به طور كامل فلج سازد.
به خاطر داشته باشيد :
براي آنكه وب سرور شما كاملاً ناشناخته بماند بايد تمام مواردي كه در بالا ذكر شده است را بصورت تركيبي به كار بريد. هميشه به ياد داشته باشيد اين اقدامات پيشگيرانه تنها مي تواند باعث شكست اكثر نفوذ گران گردد نه همه آنها. يك نفوذگر ماهر و مصمم مي تواند از تمامي اين سدها عبور كند... هرگونه سوال و پیشنهادی داشتید با من تماس بگیرید.
موفق باشید
دراين مقاله به بررسي برخي راهكارهايي كه مي توانيم با بكارگيري آنها خطر شناسايي را به حداقل برسانيم ، مي پردازد. بيشتر مثالها مربوط به IIS ميكروسافت مي باشد . زيرا بخاطر آسيب پذيري زيادش به طور وسيعي مورد توجه نفوذگران قرار گرفته است. همچنين يك سري از اقدامات پيشگيرانه شناسايي براي آپاچي سرور نيز ذكر خواهد شد. غير قابل شناسايي كردن سرور وظيفه همه كساني است كه مسئوليت اجرايي وب سرور را بر عهده دارند.
نفوذگران از اينجا شروع مي كنند ، چرا شما از اين نقطه شروع نمي كنيد ؟
بگذاريد از نقطه نظر مهاجمين نگاه كنيم. آسيب پذيريهاي امنيتي اتكا بر ورژن و نوع نرم افزار دارند.
يك نفوذ گر براي نفوذ به يك وب سرور بايد بداند وب سرور از چه نوعي و داراي چه ورژني مي باشد. دانستن جزئيات يك وب سرور كارآمدي هرگونه تهاجمي را به مقدار زياد افزايش مي دهد.
Server Header ها همه چيز را مي گويند:
بسياري از وب سرورها خودشان و سيستم عاملي را كه بر روي آن نصب هستند به هر كسي كه بخواهد معرفي مي نمايند. با استفاده از ابزارهای بررسي شبکه مانندSam Spade يا Header Check مي توانيد http هدرهاي سرور را تشخيص دهيد. تنها كافيست Home Page وب سايت را درخواست نموده وhttp هدرهاي حاصله يا بنرهايي كه توسط سرور ارسال گرديده را مورد بررسي قرار دهيد. در ميان آنها احتمالا چيزي شبيه به Server : Microsoft – IIS/5.0 پيدا خواهيد كرد.
آپاچي سرور نيز به صورت پيش فرض همه مشخصات را اعلام می کند.
Server : Apache/2.0.41-dev(unix)
كاربران آپاچي سرور 2.x داراي مدول Mod Header هستند . این کاربران مي توانند به سادگي فايل httpd.conf را به صورت زير اديت نمایند :
Header Set Server "New Server Name"
متاسفانه در نسخه هاي پيشين آپاچي سرور نمي توان سرور هدرها را تغيير داد.
كاربران IISنیز مي توانند Lock Down را نصب نموده و براي برداشتن وجايگزين كردن هدرها از فايل پيكره بنديURLScans استفاده نمايند. در صورتي كه از سرور Cold Fusion استفاده مي نماييد و مي خواهيد URLScans را به كار بريد بسيار محتاط باشيد. زيرا روشي كه در حال حاضر هدرها را جايگزين
مي نمايد باعث خسارات سنگيني به صفحات CFM مي گردد. در اين حالت تنها راه ممكن برداشتن هدرهاست.
پسوند فايلها :
نمايش پسوند فايلها مانند .ASP يا .ASPX به طور مشخص نشان دهنده آن است كه شما از يك سرور
ميكرو سافت استفاده مي كنيد. به طور كلي پنهان كردن پسوند فايلها كار مفيدي است. در طراحي سايتها سعي كنيد ازHTML و Java استفاده كنيد. پسوند فايلهاي طراحي شده توسط اين زبانها نشان دهنده نوع وب سرور نمي باشد.
در مورد آپاچي سرور به مدول mod negotiation توجه خاصي داشته باشيد. بوسيله اين مدول مي توانيد پسوند فايلها را مخفي كنيد. همچنين توسط mod header مي توان پسوند فايلها را تعويض نمود.
كاربران IIS نيز مي توانند از برنامه PageXChanger براي پنهان ساختن پسوند فايلها استفاده نمايند.
ASP Session ID Cookie:
اين كوكي ها وظيفه حفظ وضعيت سرويس گيرنده را بر عهده دارند و به سادگي سيستم عامل و وب سرور نصب شده بر روي آن را مشخص مي كنند.
Set –Cookie:ASPESSIONIDQGQGGWFC=MGMLNKMDENPEOPIJHPOPEPPB;
شما مي توانيد ASP Session State را از كار بيندازيد. همچنين مي توانيد براي تغيير اسامي كوكي ها از يك فيلتر ISAPI استفاده نماييد. از طرفي ASP Session ها باعث محدود شدن منابع سيستم مي گردند. از كار انداختن آن به بهبود اجرايي ASP كمك مي كند و باعث گمنام ماندن سرور شما نيز مي گردد.
WebDAV:
راه ديگر شناسايي سرورهاي ويندوزي WebDAV مي باشد. WebDAV منحصر به ميكروسافت يا IIS نمي باشد ، بلكه يك استاندارد پيشنهادي (RFC 2518) با گروه كاري IETF است. سرور ويندوزي در حالت پشتيباني WebDAV اطلاعات زيادي را به هدر مي افزايد كه مي تواند مورد استفاده هكرها قرارگيرد. در صورتيكه از WebDAV براي پشتيباني Web Folders , Outlook Web Access يا ... استفاده
نمي نماييد، مي توانيد با استفاده ازIISLockDown يا تغيير در رجيستري آن را از كار بيندازيد.
هدرهاي ديگر:
برخي از سرورهاي وب به وسيله نمايش هدرهاي خاص در پاسخهاي HTTP هويت خود را فاش
مي سازند. هدرهاي X-Powered-By و X-ASPNET-Version علائم بارزي هستند كه نشان دهنده استفاده از ASP.NET و بنابراين ميزباني IIS مي باشند. همچنين به ياد داشته هدرهاي
Microsoft Office Web Server را بايد مخفي كنيد.
Windows Authentication:
كاربران IIS نبايد Windows Authentication را به عنوان راهي براي پنهان نمودن اطلاعات بر روي سرور مورد استفاده قرار دهند. زيرا اين شيوه اطلاعات زيادي را در مورد سرور بر ملا مي سازد. يك هكر
مي تواند با توجه به هدرهاي Authentication WW- نوع وب سرور را مشخص نمايد. زماني كه يك فايل يا فلدر توسط پروسه Authentication ويندوز محافظت مي شود، درهدرهاي فرستاده شده از طرف سرور String NTLM وجود دارد كه مي تواند مورد بهره برداري هكر قرار گيرد.
پيام هاي پيش فرض:
پيامها ، صفحات و اسكريپتهاي پيش فرض نيز باعث شناسايي وب سرور مي گردد. اغلب نرم افزارهاي پشتيباني كننده وب سرور داراي پيغامهاي پيش فرض هستند كه بايد به گونه اي مناسب تغيير پيدا كند. همچنين تمام Administration Pages ، اسكريپتها وDocument هايي كه همراه با وب سرور نصب مي شوند بايد مخفي يا پاك شوند.
ديگر سرويسها:
بسياري از کامپیوترهایی كه با عنوان وب سرور استفاده مي شوند ، جدا از خدمات HTTP خدمات ديگري مانند SMTP و FTP را ارائه مي دهند. به عنوان يك قانون امنيتي سعي كنيد چنين سرويسهايي را در وب سرور خود راه اندازي نكنيد. به ويژه از سرويسهاي پيش فرض FTP و SMTP در ميكرو سافت IIS اجتناب كنيد. زماني كه يك ارتباط با سرويس SMTP برقرار مي گردد. يك پيغام خوشامد گويي براي Client فرستاده مي شود. اين پيغام هيچ تاثيري در سرويس ايميل ندارد. اما مشابه هدرهاي HTTP اطلاعاتي را در مورد وب سرور بر ملا مي سازند. سرويس پيش فرض SMTP ويندوز چنين اطلاعاتي را نمايان مي سازد . همچنين سرور پيش فرض IIS FTP يك بنر شناخته شده را ارائه مي دهد . از آنجايي كه اصلاح اين بنر از اصلاح بنر SMTP پروسه پيچيده تري است بهترين راه جايگزيني آن با يك FTP سرور ديگر مانند RhinoSoft's Serv-U FTP Serverاست . كه بتوان هرگونه پيغامي را در بنر FTP نمايش داد. همچنين اين FTP سرور داراي امتيازات ديگري نيز از نظر ايمني مي باشد.
ورودهاي غير مجاز :
بسياري از Exploits ها از يك URL پيچيده براي گرفتن شل (Shell ) يا كنترل يك CGI Program استفاده ميكنند كه هكر بوسيله آنها مي تواند ليستي از فايلها سيستم عامل را بدست آورد. بهترين روش براي مقابله با اينگونه حملات استفاده از يك فيلتر داده مي باشد كه كاراكترهاي غير قابل قبول مثل متا كاراكترها را از اطلاعاتی که توسط كاربر وارد می شود حذف نمايد. براي IIS استاندارد جاري IISLockDown/URL Scan است. نسل جديدي از Firewall ها نيز قابليت پشتيباني از لايه هاي كاربردي Web Server را دارا هستند.
پشته ها:
حتي زمانيكه علائم افشاگرانه از روي لايه كاربردي وب سرور حذف شد ، بر روي لايه هاي پايين تر شبكه نقاط ضعف آشكارسازي باقي مي ماند. هر سروري با يك اتصال شبكه داراي يك Network Protocol است كه قابل اسكن و شناسايي مي باشد ، بهترين اسكنرهاي پشته مانند NMAP مي تواند با استفاده از تكنيكهاي مختلف سيستم عامل را شناسايي كند. همچنين پشته IP مربوط به هر سيستم عامل نيز در مقابل شناسايي از طريق پروتوكل ICMP آسيپ پذير است. اولين راه مقابله با اين نوع آسيب پذيري ها استفاده از يك فايروال مي باشد. به اين نكته توجه داشته باشيد كه با وجود فايروال ، يك تحليل شبكه اي دقيق هنوز هم مي تواند نوع وب سرور را مشخص سازد.
Netcraft:
در سايت Netcraft با وارد نمودن URL هر وب سايت مي توان به اطلاعاتي در مورد سيستم عامل و وب سرور آن سايت بدست آورد. با تغيير دادن HTTP هدرها مي توان كاري كرد كه گزارش Netcraft اشتباه شود. همچنين با حذف HTTP هدرها ، Netcraftگزارش ناشناس بودن وب سرور را ارائه خواهد كرد.
پیش فرضهای :TCP/IP
احتمالاً هنوز سيستم عامل شما حتي از پشت يك ديوار آهنين نيز مورد شناسائي قرار خواهد گرفت. براي آنكه بتوان يك سيستم عامل را به طور كامل ناشناس كرد بايد برخي از پيش فرض هاي محيط IP/TCP مانند (Receive Window size) RWIN ، (Maximum Transmission Units) MTU ، MSS (Maximums Segment Size) ، (Time-to-Live) TTL دستكاري شود . در زمان تغيير دادن اين پيش فرض ها بسيار محتاط باشيد زيرا مي تواند تاثير معكوس بر روي وب سرور داشته و يا سيستم عامل را به طور كامل فلج سازد.
به خاطر داشته باشيد :
براي آنكه وب سرور شما كاملاً ناشناخته بماند بايد تمام مواردي كه در بالا ذكر شده است را بصورت تركيبي به كار بريد. هميشه به ياد داشته باشيد اين اقدامات پيشگيرانه تنها مي تواند باعث شكست اكثر نفوذ گران گردد نه همه آنها. يك نفوذگر ماهر و مصمم مي تواند از تمامي اين سدها عبور كند... هرگونه سوال و پیشنهادی داشتید با من تماس بگیرید.
موفق باشید