صفحه اول > مقالات

 

 

چک‌ليست کشف نفوذ در سيستم‌عامل Windows NT
 
(قسمت دوم)

در قسمت قبل تعدادي از موارد مهم که کاربران و مديران شبکه بايد براي داشتن بستر ارتباطي امن درنظر بگيرند مطرح شد. در اين قسمت تعداد ديگري از توصيه‌هاي مهم در اين  زمينه ارائه مي‌گردد.

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

اسب‌هاي تروا فايل‌هاي با اندازه و برچسب‌هاي زماني مشابه نسخه‌هاي اصلي ايجاد مي‌کنند. بنابراين تنها مقايسه اندازه و برچسب‌هاي زماني فايل‌ براي دريافتن اصالت آن‌ها کافي نيست. به جاي اين کار بايد از MD5، Tripwire و ساير ابزارهاي رمزنگاري Checksum فايل‌ها براي آشکارسازي اسب‌هاي تروا استفاده کنيد. حتما از اصالت اين ابزارها اطمينان حاصل کنيد و مطمئن شويد که با امنيت نگه‌داري شده و امکان تحريف آنها توسط نفوذگران وجود نداشته است. مي‌توانيد براي امضاي خروجي‌هاي توليد شده توسط MD5 و Tripwire از نرم‌افزارهايي مانند PGP‌ بهره بگيريد تا در ارجاعات بعدي با اطمينان از اين گزارشات استفاده کنيد.

برنامه‌هاي ضدويروس هم مي‌توانند براي مقابله با ويروس‌هاي کامپيوتري، اسب‌هاي تروا و درهاي پشتي به کار گرفته شوند. به خاطر داشته باشيد برنامه‌هاي مخرب همواره توليد مي‌شوند، بنابراين درصورت استفاده از اين برنامه‌ها از به‌روز بودن آنها مطمئن شويد.

۷- پيکربندي‌هاي سيستم محلي و شبکه خود را بررسي کرده، اطلاعات غيرمجاز وارد شده را شناسايي نماييد. مداخل غيرمجاز پيکربندي‌ بخش‌هايي مانند WINS، DNS و IP forwarding را بررسي نماييد. براي اين کار مي‌توانيد از ابزار Network Properties و يا دستور "ipconfig /all" بهره بگيريد.

اطمينان حاصل کنيد که تنها سرويس‌هاي شبکه‌اي که مورد نياز است در حال اجرا بر روي سيستم هستند.

با استفاده از دستور "netstat -an" پورت‌هاي نامعمولي را که براي ارتباط از ساير ميزبان‌ها در حال گوش دادن هستند را چک کنيد. دستورات زير که به صورت يک فايل دسته‌اي قابل اجرا مي‌باشند رفتار همه پورت‌هايي که در حالت گوش دادن هستند را تحليل کرده و سپس مي‌تواند سرويس‌هايي که در حال اجرا بر روي آن پورت‌ها هستند را اعلام مي‌نمايد. براي استفاده از اين فايل شماره پورت‌هاي شناخته شده را از آدرس زير دريافت کنيد:

http://www.iana.org/assignments/port-numbers

ساير شماره پورت‌هايي که توسط محصولات مايکروسافت مورد استفاده قرار مي‌‌گيرند را مي‌توان از مقالات پايگاه دانش مايکروسافت دريافت نمود. به اين ترتيب مي‌توان فايلي با فرمت فوق ساخت که سرويس‌هاي مختلف در حال اجرا بر روي سيستم‌هاي NT‌ را ليست مي‌کند.

Windows NT, Terminal Server, and Microsoft Exchange Services Use TCP/IP Ports http://support.microsoft.com/support/kb/articles/q150/5/43.asp

SMS: Network Ports Used by Remote Helpdesk Functions http://support.microsoft.com/support/kb/articles/q167/1/28.asp

XGEN: TCP Ports and Microsoft Exchange: In-depth Discussion http://support.microsoft.com/support/kb/articles/q176/4/66.asp

How to Configure a Firewall for Windows NT and Trusts http://support.microsoft.com/support/kb/articles/q179/4/42.asp

در فايل دسته‌اي عبارت “TAB”‌ را با يک tab‌ واقعي جايگزين کنيد. اين فايل هيچ يک از فايل‌هاي موجود بر روي سيستم را تغيير نداده و بر روي آنها نمي‌نويسد. براي اجراي اين برنامه نياز به فايلي با نام “port-numbers.txt” داريد که شماره پورت‌ها و سرويس‌هاي ممکن بر روي هر يک از آنها را در خود دارد. شماره‌ پورت‌هاي ارائه گرديده در ليست فوق را مي‌توان در فايلي با اين نام ذخيره کرد.

متن فايل دستوري به صورت زير است:

@echo off
      for /f "tokens=1,2 delims=:" %%I in ( 'netstat -an ^| findstr "0.0.0.0:[1-9]"' 
) do call :CLEAN %%I %%J
   goto :EOF
 
 :CLEAN
     set X=0
     for /f "tokens=1,2,3 delims=TAB " %%A in ( 'findstr /I "\<%3/%1\>" port-
numbers.txt' ) do call :SETUP %%A %%C %3 %1
     if %X% == 0 echo %3/%1 ***UNKNOWN***
   goto :EOF
 
   :SETUP
     echo %3/%4 %1 %2
     set X=1;
   goto :EOF

۸- منابع به اشتراک گذاشته شده در سيستم را بررسي نموده، موارد غير مجاز را شناسايي نماييد. با استفاده از دستور "net share" و يا ابزار Server Manager مي‌توان ليست منابع به اشتراک گذاشته شده را مشاهده نمود. در NT‌ فايل‌هاي اشتراکي پنهان با افزودن يک علامت $‌ به انتهاي نام نمايش داده مي‌شوند. در اين سيستم عامل تعدادي نام اشتراکي پيش‌فرض مانند PRINT$ استفاده مي‌شود. در صورتي که چاپگر اشتراکي در سيستم وجود ندارد بايد چک شود که اين پوشه اشتراکي چرا و چگونه اينجاد شده است. اگر نام اشتراکي عجيبي در ليست سيستم مشاهده ‌شود ابزارهاي موجود مکان واقعي پوشه مورد نظر را بر روي سيستم نشان مي‌دهد. مي‌توان براي يک درايو و يا يک پوشه چندين نام‌ اشتراک گذاشت، و هر يک از اين نام‌ها مشخصات و حقوق دسترسي خاص خود را دارند.

۹- همه وظايف زمان‌بندي شده در سيستم را بررسي نماييد. نفوذگران مي‌توانند درپشتي را از طريق برنامه‌هايي که  براي اجرا در آينده برنامه‌ريزي شده‌اند ايجاد نمايند. علاوه بر اين مطمئن شويد که امکان نوشتن بر روي فايل‌ها و برنامه‌هايي که توسط برنامه زمان‌‌بندي به آنها ارجاع شده است وجود ندارد. براي ديدن ليست وظايف در انتظار مي‌توانيد از دستور "at" استفاده کنيد و يا ابزار WINAT‌ را از NT resource kit اجرا نماييد.

۱۰- فرآيندهاي غيرمعمول در سيستم را شناسايي نماييد. براي جمع‌آوري اطلاعات در مورد فرآيندهاي در حال اجرا بر روي سيستم مي‌توانيد از ابزار Tool Manager يا دستورات Pulist.exe و tlist.exe از NT resource kit استفاده نماييد.

۱۱- سيستم را با هدف يافتن فايل‌هاي مخفي و يا نامتعارف جستجو کنيد. اين فايل‌ها براي مخفي نگه‌داشتن ابزارها و اطلاعات (به عنوان مثال برنامه‌هاي سرقت گذرواژه، فايل‌هاي گذرواژه ساير سيستم‌ها و ...) به کار مي‌رود. فايل‌هاي مخفي را مي‌توان با استفاده از مرورگر NT‌ (در صورتي که در صفحه Options از منوي View گزينه Show all files انتخاب شده باشد) و همينطور با تايپ دستور "dir /ah" مشاهده نمود.

۱۲- فايل‌ها و کليد‌هاي رجيستري را بررسي کنيد که مجوزهاي آنها تغيير نيافته باشند. يکي از قدم‌هاي اساسي در تامين امنيت يک سيستم مبتني بر NT تنظيم صحيح مجوزهاي دسترسي به فايل‌ها و کليدهاي رجيستري است به نحوي که کاربران غيرمجاز نتوانند برنامه‌هاي خود (مانند درهاي پشتي و يا ثبت‌کنندگان فعاليت‌هاي کاربران) را اجرا کرده و يا فايل‌هاي سيستمي را تغيير دهند. با استفاده از برنامه XCACLS.EXE که بخشي از NT Resource Kit مي‌باشد مي‌توان ويژگي‌هاي فايل‌ها را چک کرد. علاوه بر اين مي‌توان از NT Security Configuration Manager هم براي تحليل پيکربندي سيستم استفاده نمود.

۱۳- تغييرات سياست‌هاي کام‍پيوتر و کاربر را بررسي نماييد. سياست‌ها در سيستم‌هاي مبتني بر NT‌ براي تعريف دامنه گسترده‌اي از پيکربندي‌ها به کار مي‌روند و مشخص مي‌سازند که يک کاربر مجاز به انجام چه کارهايي مي‌باشد.

۱۴- مطمئن شويد که سيستم در دامنه‌اي به غير از دامنه پيش‌فرض تعريف نشده است. نفوذگران براي داشتن دسترسي با حقوق مديريت سعي مي‌کنند سيستم را در دامنه‌اي که خود حقوق مورد نياز را در آن دارند عضو نمايند.

۱۵- هنگام جستجو براي يافتن رد‌پاي نفوذگران همه سيستم‌هاي موجود در شبکه محلي را بگرديد. در بيشتر مواقع اگر يک دستگاه در خطر افتاده باشد، امکان اينکه ساير دستگاه‌ها هم مورد هجوم قرار گرفته باشند وجود دارد.

ب. بروز بودن با مراجعه به مراکز اطلاع‌رساني معتبر

براي اين کار مي‌توانيد به سايت‌ مرکز هماهنگي گروه‌هاي امداد امنيت رايانه‌اي (CERT/CC) و يا مرکز امداد امنيت رايانه‌اي ايران (IRCERT) مراجعه نماييد.

ج. استفاده از نرم‌افزارهاي تشخيص نفوذ

تعدادي از نرم‌افزارهاي مجاني و يا مدت‌دار تشخيص نفوذ در آدرس زير قابل دسترسي مي‌باشند:

http://www.cerias.purdue.edu/coast/ids/

تعدادي از نسخه‌هاي نرم‌افزارهاي تشخيص نفوذ که به صورت تجاري ارائه مي‌شوند در زير ارائه شده است:

Kane Security Monitor (KSM)
http://centauri.ods.com/security/products/ksm.shtml

OmniGuard/ITA (OmniGuard/Intruder Alert)
http://www.axent.com/Axent/Products/IntruderAlert

Real Secure
http://solutions.iss.net/products/rsecure/rs.php

CyberCop Monitor
http://solutions.sun.com/catalogs/all/Internet_and_Intranet/Security/42189.html

Intact
http://pedestalsoftware.com/intact/