چك لیست تشخیص نفوذ در ویندوز (قسمت اول)

مقدمه

این مقاله گامهایی را برای تشخیص این موضوع كه آیا سیستم ویندوز شما مورد سوء استفاده قرار گرفته است یا خیر مشخص می­كند. مدیران سیستم می­توانند از این اطلاعات برای تشخیص انواع مختلفی از نفوذها استفاده كنند. عبارت «سیستم ویندوز» در این مقاله به سیستمهایی اشاره می­كند كه از ویندوز XP و ویندوز Server 2003 استفاده می­كنند. اگر در برخی موارد بین نسخه های مختلف ویندوز تفاوتی وجود داشته باشد، این مقاله صراحتا به آن اشاره خواهد كرد. این نكته مهم است كه بین لغتهای auditing و مانیتور كردن (monitoring) كه در این مقاله مورد استفاده قرار می­گیرند تفاوت قائل شوید. auditing به عملیات ثبت كردن، گزارش نوشتن و یا جمع آوری اطلاعات گفته می­شود در حالیكه مانیتور كردن، به عملیات بررسی اطلاعات جمع آوری شده برای تشخیص برخی وقایع گفته می­شود. این مقاله با فرض آشنایی كاربر با سیستم عامل های ویندوز نوشته شده است. اطلاعات لازم برای مطالعه این مقاله عبارتند از:
  1. داشتن اطلاعات در مورد چگونگی اجرای دستورات در محیط سیستم محلی LocalSystem
  2. آشنایی با سیستمهای فایل ویندوز (به خصوص NTFS)
  3. آشنایی با رجیستری ویندوز
  4. اطلاعاتی در مورد مدیریت سیستمهای ویندوز
همچنین در این مقاله از كلمات زیر برای اشاره به بخشهای مختلف رجیستری استفاده می­شود:
HKCR HKEY_CLASSES_ROOT
HKLM HKEY_LOCAL_MACHINE
HKU HKEY_USERS
HKCU HKEY_CURRENT_USER
HKCC HKEY_CURRENT_CONFIG

توصیه های عمومی مرتبط با تشخیص نفوذ

ثبت اطلاعات و نظارت پیشگیرانه یك گام لازم در عملیات تشخیص نفوذ است. ثبت اطلاعات در مورد دسترسی به داده هایی كه قبلا در مورد آنها هشدار داده شده است و یا سیستمهایی كه مورد سوء استفاده قرار گرفته اند بی تاثیر است و چنین گزارشهایی باید غیر قابل اعتماد فرض شوند. زمانی كه به دنبال علائمی مبنی بر وقوع نفوذ می­گردید، تمامی سیستمهای شبكه محلی را امتحان كنید. زیرا در بیشتر مواقع اگر یك سیستم مورد سوء استفاده قرار گرفته باشد، سایر سیستمهای روی شبكه نیز مورد سوء استفاده قرار می­گیرند. همچنین با تولیدكنندگان نرم افزارهای خود در مورد اصلاحیه های ارائه شده برای سیستم خود در تماس باشید. 
نكته: تمامی عملیاتی كه در طول تحقیقات انجام می­گیرند باید مطابق با سیاستها و روشهای سازمان شما باشند. 
پیش از شروع به تحلیل سیستمی كه حدس می­زنید مورد سوء استفاده قرار گرفته باشد، گامهای زیر را دنبال كنید:
  1. اطمینان حاصل كنید كه آماده مستند كردن هر كاری كه انجام می­دهید به همراه جزئیات آن كار هستید.
  2. یك نسخه پشتیبان دیسك سخت خود تهیه نمایید.
  3. اگر سازمان شما قصد دارد در مقابل نفوذها اقدامات قانونی انجام دهد، قبل از انجام هركاری با مشاور حقوقی خود مشورت كنید.

علائم نفوذ به سیستم

  • وجود Rootkit ها 
    اخیرا Rootkitها در سیستمهای ویندوز بسیار مرسوم شده و متاسفانه به طور رایگان در دسترس بوده و به صورت فزاینده ای مورد استفاده قرار می­گیرند. یك Rootkit نرم افزاری مانند یك تروجان است و نوعا برای انجام موارد زیر طراحی می­شود:
    1. وجود خود را و در نتیجه این واقعیت را كه سیستم مورد سوء استفاده قرار گرفته است پنهان می­كند.
    2. اطلاعاتی مانند كلمات عبور كاربر را سرقت می­كند.
    3. یك در پشتی (backdoor) روی سیستم نصب می­كند كه می­تواند توسط افراد خرابكار برای دسترسی از راه دور مورد استفاده قرار گیرد.
    4. اجازه می­دهد كه سیستم به عنوان پایگاهی برای گسترش خرابكاریها مورد استفاده قرار گیرد.
در زیر برخی محصولات كه می­توانند به تشخیص Rootkit كمك كنند فهرست شده اند. این محصولات همواره باید با مجوز و اولویت SYSTEM اجرا گردند. 
نكته: ممكن است برخی از این نرم افزارها باعث ناپایداری سیستم یا به هم ریختن كار سیستم شوند. بنابراین باید ابتدا در یك محیط ایزوله تست گردند.
  1. Rkdetect كه از سایت http://securityvulns.ru/soft قابل دسترسی است.
  2. VICE كه یك ابزار تشخیص است و از سایت http://www.rootkit.com قابل دسترسی است. (نیاز به ثبت كردن دارد)
  3. BartPE كه یك سیستم عامل مبتنی بر CD قابل boot است و قابلیت اجرای فایلهای باینری Win32 را داراست: http://nu2.ne/pebuilder
  4. WinPE مشابه BartPE است ولی واسط كاربر گرافیكی ندارد: http://microsoft.com/licensing/programs/sa/support/winpe.mspx
  • فایلهای گزارشها را بررسی كنید 
    این كار را در مورد ارتباطاتی كه از محلهای غیرعادی برقرار می­شود و نیز در مورد سایر فعالیتهای غیر معمول انجام دهید. شما می­توانید از Event Viewer استفاده كنید یا به دنبال ورودهای غیرعادی، سرویسهای رد شده، و یا restartهای بدون دلیل بگردید. اگر فایروال، وب سرور یا مسیریاب شما گزارشها را روی محلی به جز سیستمی كه در حال تحقیق درباره آن هستید ثبت می كند، این گزارشها را نیز چك كنید. به خاطر داشته باشید كه تمام اینها شاهد كافی بر عدم نفوذ به سیستم شما نیستند. چرا كه بسیاری از نفوذگران برای حذف ردپای خود، فایلهای گزارش را نیز پاك می­كنند.
  • حسابهای كاربری و گروههای غیر عادی را بررسی كنید. 
    شما می­توانید «Local Users and Groups» (lusrmgr.msc) را از یك سیستم عضو دامنه یا یك كامپیوتر منفرد و یا از طریق دستورات «net user»، «net group» و «net localgroup» مورد استفاده قرار دهید. در یك كنترل كننده دامنه، «Active Directory Users and Computers» (dsa.msc) می­تواند برای مشاهده و بررسی حسابهای دامنه مورد استفاده قرار گیرد.
  • تمامی گروهها را در مورد عضویت ناخواسته برخی اعضا بررسی كنید. 
    برخی گروههای درون ساختی (built-in) مجوزهای مخصوصی به اعضای آن گروهها می­دهند. برای مثال، اعضای گروه Administrators می­توانند هركاری كه مایلند روی سیستم محلی انجام دهند، Backup operatorها می­توانند هر فایلی را از روی سیستم بخوانند و كاربران Power می­توانند اشتراك ایجاد نمایند. مراقب عضویت غیر مجاز اعضا در این گروهها باشید.
  • به دنبال حقوق غیر مجاز كاربران بگردید. 
    برای آزمایش كردن حقوق كاربران از ابزار User Manager در قسمت Policies در بخش User Rights استفاده نمایید. 28 حق كاربری مختلف وجود دارد كه می­تواند به كاربران یا گروهها تخصیص داده شود. به طور معمول تنظیمات پیش فرض برای این حقوق امن است. اطلاعاتی در مورد مجوزهای پیش فرض تخصیص یافته به حسابهای كاربران برای ویندوز XP را می­توانید در این قسمت ببینید. همچنین می­توانید مجوزهای كاربران را با استفاده از ntrights.exe با كمك این قسمت بررسی كرده یا تغییر دهید.
  • به دنبال برنامه های بدون مجوزی بگردید كه به طور خودكار آغاز به كار می­كنند. 
    یك فرد نفوذگر می­تواند یك برنامه را كه در پشتی (Back door) ایجاد می­كند، آغاز نماید. بنابراین:
    1. فولدرهای Startup را بررسی كنید. تمامی بخشهای موجود در فولدرهای « C:Documents and Settings%username%Start MenuProgramsStartup» را بررسی نمایید. شما همچنین می­توانید تمامی shortcutها را از طریق منوی Start، Programs، Stratup چك كنید. توجه داشته باشید كه دو فولدر Startup وجود دارد. یكی برای كاربران محلی و یكی برای تمامی كاربران. زمانی كه یك كاربر وارد سیستم می­شود، تمامی برنامه ها در All Users و فولدر users startup شروع به اجرا می­كنند. به همین دلیل مهم است كه تمامی فولدرهای startup را در مورد برنامه های مشكوك چك كنید.
    2. رجیستری را بررسی كنید. بیشترین مكانهایی كه برای آغاز برنامه ها در رجیستری مورد استفاده قرار می­گیرند عبارتند از:
      HKLMSoftwareMicrosoftWindowsCurrentVersionRun 
      HKLMSoftwareMicrosoftWindowsCurrentVersionRunServices 
      HKLMSoftwareMicrosoftWindowsCurrentVersionRunOnce 
      HKLMSoftwareMicrosoftWindowsCurrentVersionRunOnceEx 
      HKLMSoftwareMicrosoftWindowsCurrentVersionRunServicesOnce 
      HKLMSoftwareMicrosoftWindowsCurrentVersionPoliciesExplorerRun 
      HKLMSoftwareMicrosoftWindowsCurrentVersionRunOnceSetup 
      HKLMSoftwareMicrosoftWindowsNTCurrentVersionWinlogonUserinit 
      HKLMSoftwareMicrosoftWindows NTCurrentVersionWindows 
      HKLMSystemCurrentControlSetControlSession ManagerKnownDLLs 
      HKLMSystemControlSet001ControlSession ManagerKnownDLLs 
      HKCUSoftwareMicrosoftWindowsCurrentVersionRun 
      HKCUSoftwareMicrosoftWindowsCurrentVersionRunOnce 
      HKCUSoftwareMicrosoftWindowsCurrentVersionRunOnceEx 
      HKCUSoftwareMicrosoftWindowsCurrentVersionRunOnceSetup 
      HKCUSoftwareMicrosoftWindowsCurrentVersionRunServices 
      HKCUSoftwareMicrosoftWindowsCurrentVersionRunServicesOnce 
      HKCUSoftwareMicrosoftWindowsCurrentVersionPoliciesExplorerRun 
      HKCUSoftwareMicrosoftWindowsNTCurrentVersionWindowsload 
      HKCUSoftwareMicrosoftWindowsNTCurrentVersionWindows
    3. سرویسهای ناشناخته را بررسی كنید. برخی برنامه های در پشتی (backdoor) خودشان را به عنوان سرویسی نصب می­كنند و زمانی كه سیستم بالا می آید، آغاز به كار می­كند. سپس این سرویسها تحت عنوان هر كاربری با حق كاربری «Logon as a Service» اجرا خواهند شد. سرویسهایی را كه به صورت خودكار شروع به اجرا می­كنند چك كنید و اطمینان حاصل كنید كه همگی لازم و ضروری هستند. همچنین بررسی كنید كه فایل اجرایی سرویس، یك تروجان یا یك برنامه در پشتی (backdoor) نباشد.دستور زیر اطلاعات مربوط به سرویسهای نصب شده را روی یك فایل به فرمت html خواهد نوشت:
      wmic /output:C:services.htm service get /format:hform
      این دستور روی ویندوز XP و نسخه های بعدی ویندوز كار می­كند. به علاوه، این دستور می­تواند از طریق یك سیستم ویندوز XP برای چندین سرویس مختلف در سیستمهای مختلفی كه از WMI استفاده می­كنند، مورد استفاده قرار گیرد. برای اطلاعات بیشتر در مورد WMI و ابزار خط دستور WMI (WMIC) مستند زیر را مشاهده نمایید:
    4. فایلهایی مانند Autoexec.bat، Autoexec.nt، config.sys، system.ini و win.ini را در مورد ایجاد تغییرات غیر مجاز چك كنید. این فایلها می­توانند در زمان بالا آمدن سیستم برای شروع كردن برنامه ها مورد استفاده قرار بگیرند.
  • فایلهای باینری سیستم خود را در مورد تغییراتشات بررسی كنید. 
    نسخه های سیستم خود را با كپی­هایی كه می­دانید تغییر نكرده اند چك كنید. در اعتماد به backupها محتاط باشید. زیرا آنها نیز می­توانند حاوی بدافزار باشند. برنامه های تروجان می­توانند اندازه فایل و timestampی مشابه نسخه قانونی داشته باشند. بنابراین، صرفا چك كردن ویژگیهای فایل و timestampهای مرتبط با برنامه ها برای تصمیم گیری در مورد اینكه آیا برنامه ها جابه جا شده اند یا نه كافی نیست. به جای آن، از یك ابزار مانند WinMD5Sum یا یك IDS مانند GFI LanSIM یا سایر ابزارهای checksum رمزنگاری مانند Tripwire استفاده كنید تا این برنامه های تروجان را تشخیص دهید. همچنین می­توانید از ابزاری (برای مثال PGP) برای ایجاد امضای رمز شده در خروجی WinMD5Sum یا LanSIM برای مراجعه های بعدی استفاده كنید. ویندوز XP همچنین شامل بخشی به نام "Windows File Protectrion" (WFP) است. WFP فایلهای حیاتی سیستم را در مورد تغییرات و جا به جا شدن آنها چك می­كند. WFP از امضای فایلها استفاده كرده و فایلهای تولید شده را بر اساس كد امضا فهرست می­كند و به این ترتیب تشخیص می­دهد كه آیا فایلهای محافظت شده تغییر كرده اند یا خیر. جایگزینی فایلهای محافظت شده سیستم توسط روشهای محدودی قابل انجام است. این روشها عبارتند از:
    1. نصب Widows Service Packبا استفاده از Update.exe
    2. نصب Hotfixها با استفاده از Hotfix.exe یا Update.exe
    3. به روز رسانیهای سیستم عامل با استفاده از Winnt32.exe
    4. Windows Update
WFP ابزاری به نام System File Checker (sfc.exe) را برای مدیریت Windows File Protection فراهم می­كند. برای اطلاعات بیشتر در مورد Windows File Protection، می­توانید اسناد زیر را مطالعه كنید: 
شرح ویژگی Widows File Protection 
شرح System File Checker در XP و Server 2003

استفاده از آنتی ویروس و نرم افزار تشخیص ابزارهای جاسوسی نیز می­تواند به شما كمك كند تا ویروسهای كامپیوتری، درهای پشتی (backdoor)، و برنامه های تروجان را روی سیستم خود پیدا كنید. به خاطر داشته باشید كه برنامه های خرابكار بطور مداوم در حال تولید هستند، بنابراین به روز بودن این نرم افزارها از اهمیت زیادی برخوردار است. 
منبع: 
http://www.auscert.org.au




تاريخ : دو شنبه 15 مهر 1392برچسب:, | | نویسنده : مقدم |