مرورگر خود را امن كنید- قسمت اول
امروزه مرورگرهایی مانند Internet Explorer 7 و Mozilla Firefox تقریباً بر روی همه رایانه ها نصب می شوند و از آنجایی كه اغلب اوقات مورد استفاده كاربران قرار می گیرند، ایمن سازی آنها یكی از ضروریات محسوب می­شود. متأسفانه مرورگرهایی كه به صورت پیش فرض همراه با سیستم عامل نصب می­شوند، در اكثر موارد دارای تنظیمات ایمنی نیستند و عدم ایمن­سازی مرورگر، خیلی سریع منجر به بروز مشكلاتی از قبیل نصب پنهانی هرزنامه ها گرفته تا در اختیار گرفتن رایانه توسط نفوذگران می شود. قابل ذكر است كه تعداد حمله های نرم افزاری كه با استفاده از آسیب­پذیری مرورگرها به وقوع می­پیوندند، روز به روز در حال افزایش است. عوامل مختلفی در افزایش چشمگیر حمله­های امنیتی از طریق مرورگرها دخیلند كه برخی از مهمترین آنها در ذیل آورده شده است:
  • بسیاری از كاربران تمایل به كلیك بر روی لینكهای ناشناس داشته و درك درستی از خطراتی كه آنها را تهدید می كند، ندارند.
  • لباس مبدل پوشیدن آدرس صفحات اینترنتی و هدایت كاربران به وب سایتهای دیگر.
  • بسیاری از مرورگرها، امنیت را فدای كارایی می كنند.
  • آسیب­پذیری هایی كه بعد از پخش یك نرم افزار در بازار، كشف می شوند.
  • بعضی از نرم افزارها شامل نرم افزارهای اضافی دیگری هستند كه میزان آسیب­پذیری نرم افزار اصلی را افزایش می دهند.
  • نرم افزارهای متفرقه معمولاً مكانیزمی را برای دریافت به روزرسانی های امنیتی تعریف نمی­كنند.
  • بسیاری از وب سایتها نیاز به فعال سازی برخی از امكانات و یا نصب نرم افزارهای اضافی دارند كه منجر به افزایش خطرپذیری رایانه ها می شود.
  • بسیاری از كاربران نمیدانند چگونه مرورگرهای خود را ایمن سازند.
  • بسیاری از كاربران تمایلی به فعال یا غیر فعال سازی امكاناتی كه منجر به امنیت بیشتر مرورگرشان می شود، ندارند.
در نتیجه، بهره برداری از آسیب­پذیری های مرورگرها به روش متداول مهاجمان در سوءاستفاده از رایانه ها تبدیل شده است. بسیار مهم است كه اطلاعات درستی از طرز كار و امكانات مرورگرهای خود داشته باشیم، زیرا فعال­سازی برخی از امكانات منجر به كاهش امنیت مرورگر می شود. این درحالی است كه اغلب امكانات به صورت پیش فرض توسط فروشندگان مرورگر فعال شده اند. تمركز مهاجمان بر روی سوءاستفاده از سیستمهای طرف كاربر (رایانه شما) با بهره برداری از آسیب­پذیریهای مختلف است. آنها از این آسیب­پذیریها برای در اختیار گرفتن كنترل رایانه، سرقت اطلاعات، از بین بردن فایلها و استفاده از رایانه قربانی برای حمله به دیگر رایانه ها استفاده می كنند. كم­هزینه ترین روش برای مهاجمان استفاده از آسیب­پذیریهای مرورگرها است. مهاجمان می توانند یك صفحه خرابكار وب را ایجاد كنند كه یك تروجان یا یك ابزار جاسوسی را بر روی رایانه شما نصب كند و اطلاعات شما را مورد سرقت قرار دهد. وب سایتهای خرابكار به غیر از هدف قراردادن و حمله به سیستم های آسیب­پذیر، می توانند به صورت غیرفعال سیستم ها را در زمان مشاهده وب سایت، مورد سوءاستفاده قرار دهد. از طرف دیگر، یك سند آلوده HTML می­تواند به عنوان ایمیل برای قربانیان ارسال شود. در این صورت بازكردن ایمیل یا پیوست آن، منجر به سوءاستفاده از سیستم خواهد شد. در زیر بعضی از امكانات و خصوصیت های مرورگرها به صورت مختصر توضیح داده شده است. درك اینكه امكانات مختلف چه كاری را انجام می دهند، به شما در فهمیدن عملكرد مرورگر و تأثیر آن بر امنیت رایانه یاری می رساند. همان طور كه قبلاً هم گفتیم برخی از امكانات مرورگرها منجر به كاهش امنیت آنها می­شود.

ActiveX

یك تكنولوژی است كه توسط مرورگر مایكروسافت، IE و بر روی سیستمهای ویندوز استفاده می شود. تكنولوژی ActiveX به مرورگر اجازه استفاده از یك برنامه كاربردی یا قسمتی از آن را می دهد. یك صفحه وب می تواند از ActiveX های موجود بر روی سیستم یا از آنهایی كه از برخی وب سایت ها قابل دریافت هستند، استفاده كند. این تكنولوژی كارایی بیشتری نسبت به مرورگرهای سنتی در مروركردن وب داراست ولی از طرفی اگر به طور صحیح پیاده سازی نشود منجر به آسیب­پذیری­های خیلی جدی می­شود. یكی از پیامدهای استفاده از ActiveX در مرورگر، بالارفتن میزان حمله­پذیری سیستم است، زیرا هر برنامه كاربردی ویندوز كه بر روی رایانه نصب می­شود ممكن است حاوی چندین ActiveX باشد كه در صورت پیاده­سازی نامناسب مورد سوءاستفاده مهاجمان قرار می­گیرند. یادآوری می­كنیم كه در صورت فعال بودن ActiveX، مرورگر می­تواند به هر بسته ActiveX موجود بر روی سیستم دسترسی پیدا كند، حتی اگر آن بسته هیچگاه برای دسترسی و ارتباط با اینترنت طراحی نشده باشد.

Java

یك زبان برنامه نویسی شیءگرا است كه می تواند برای ساختن محتوای پویای وب سایتها مورد استفاده قرار بگیرد. ماشین مجازی جاوا یا Java virtual Machine(JVM) برای اجرای كدهای جاوا یا java applet ها مورد استفاده قرار می گیرد. كدهای جاوا مستقل از سیستم عامل هستند و معمولاً لازم است ماشین مجازی جاوا بر روی سیستم نصب شود. اغلب بسته كدهای جاوا درون یك sandbox اجرا می­شوند تا دسترسی آنها به دیگر قسمتهای سیستم محدود شود. اما برخی از نسخه­های JVM دارای آسیب­پذیری می­باشند به طوری كه به كدهای جاوا اجازه تجاوز از حدود sandbox را می­دهند.

Plug-ins

نوعی از برنامه های كاربردی هستند كه برای استفاده در مرورگرها طراحی می شوند. plug-in ها بسیار شبیه ActiveX ها هستند، با این تفاوت كه در خارج از محیط مرورگر قابل اجرا نیستند. Adobe Flash یكی از نمونه های Plug-ins است. این برنامه ها ممكن است شامل نقصهای برنامه نویسی مانند سرریز بافر یا دارای نقصهای طراحی مانند cross domain violation باشند. این حالت زمانی رخ می­دهد كه دوطرف از سیاستهای یكسانی استفاده نكنند.

Cookies

فایلهایی هستند كه توسط برخی از وب­سایتها برای ذخیره كردن پاره­ای از اطلاعات بر روی سیستم شما قرار می گیرند. كوكی­ها می­توانند شامل هرگونه اطلاعاتی كه وب سایت در آن قرار می­دهد، باشند. كوكی ها ممكن است شامل نشانی صفحات وبی باشد كه بازدید كرده اید یا اجازه نامه هایی برای دسترسی به وب سایت باشند. كوكی ها معمولاً طوری طراحی می شوند كه فقط توسط وب سایتی كه آنها را ایجاد كرده است، قابل خواندن باشند. بعضی از آنها Session Cookies هستند و زمانی كه مرورگر بسته می شود، از بین می روند و برخی دیگر Persistent Cookies یا دائمی هستند و تا زمانی كه توسط پروسه ای از بین نروند، در سیستم باقی می مانند. كوكی ها برای تعیین هویت یكتای كاربران وب سایت مورد استفاده قرار می گیرند. اگر وب سایتی از كوكی­ها برای تعیین هویت استفاده كند، آنگاه مهاجم می­تواند با دستیابی به كوكی­ها، دسترسی­های غیرمجاز به وب­سایت مزبور پیدا كند. كوكی­های دائمی ریسك بیشتری دارند، زیرا مدت زمان بیشتری در رایانه باقی می­مانند.

JavaScript

یك زبان اسكریپت نویسی است كه با نام ECMAScrip نیز شناخته می­شود و برای فعال­تر كردن وب سایت­ها در تعامل با كاربران مورد استفاده قرار می گیرد. در استاندارد جاوااسكریپت، خصوصیاتی وجود دارد كه برخی از دسترسی ها مانند دسترسی به فایلهای محلی را محدود می­سازد.

VBScript

زبان دیگری برای اسكریپت نویسی است كه مختص به مرورگر مایكروسافت بوده و شبیه به جاوااسكریپت است، ولی به علت سازگاری محدود آن با دیگر مرورگرها، به گستردگی جاوااسكریپت مورد استفاده قرار نمی گیرد. توانایی اجرای زبانهای اسكریپتی مانند جاوا اسكریپت یا VBScript دست نویسندگان صفحات وب را در مورد امكانات و تعامل با دیگر وب سایتها بسیار باز می كند. البته این امكانات توسط مهاجمان نیز مورد استفاده قرار می گیرد. بسیاری از امكانات فوق كه به صورت پیش فرض در مرورگرها تنظیم شده اند، در واقع تهدیداتی برای كاربران به شمار می روند و احتمال به وجود آمدن آسیب­پذیری هایی مانند آنچه در زیر آورده شده است، را افزایش می دهند:
  • Cross-Site Scripting 
    این نوع آسیب­پذیری را كه معمولاً با نام XSS می شناسیم، یك آسیب­پذیری در وب سایتها است كه امكان سوءاستفاده از اعتمادی را كه بین كاربر و وب سایت است، برای مهاجمان فراهم می كند.
  • Cross-Zone and Cross-Domain Vulnerabilities 
    اغلب مرورگرها از مدلهای امنیتی استفاده می كنند تا از دسترسی اسكریپت­ها به دامنه های دیگر ممانعت به عمل آورند. آسیب­پذیری هایی كه در این مدلها وجود دارند، ممكن است منجر به اجرای كارهایی شوند كه وب سایت در حالت عادی قادر به انجام آن نبوده است و اثر آن مشابه آسیب­پذیری XSS است. اگر آسیب­پذیری طوری باشد كه مهاجم بتواند وارد محدوده سیستم محلی یا دیگر محدوده های محافظت شده شود، آنگاه می تواند كد دلخواه خود را بر روی سیستم قربانی اجرا كند.
  • فرار از تشخیص 
    آنتی ویروسها، سیستمهای تشخیص نفوذ (IDS) و سیستمهای ممانعت از نفوذ (IPS) معمولاً به دنبال الگوهای مشخصی در محتوای برنامه ها می گردند. اگر یك الگوی بد شناخته شده تشخیص داده شود، اقدامات تدافعی لازم انجام خواهد شد. از آنجایی كه طبیعت برنامه نویسی پویا است، همواره اسكریپتهایی وجود دارند كه از زیر دست ابزارهای محافظتی فرار كرده و شناسایی نمی شوند.

چگونه مرورگر خود را ایمن كنیم؟

همانطور كه در بالا توضیح دادیم برخی از امكانات مرورگرها مانند ActiveX، Java و زبانهای اسكریپتی ممكن است منجر به ایجاد آسیب­پذیری هایی در سیستمهای رایانه­ای شوند. این مشكلات احتمالاً از طراحی ضعیف، پیاده سازی ضعیف یا تنظیمات ناایمن نشأت می گیرند. به همین دلیل باید بدانیم چه مرورگرهایی چه امكاناتی را پشتیبانی می كنند و هر امكان منجر به چه آسیب­پذیری هایی می شود. برخی از مرورگرها امكان غیرفعال كردن تكنولوژیهای مذكور را به صورت كلی فراهم می كنند و برخی دیگر اجازه می دهند امكانات را به ازای وب سایتهای مختلف فعال یا غیر فعال سازیم. در قسمتهای دوم و سوم این مبحث در مورد خصوصیات و طریقه ایمن سازی مرورگرهای رایج در ایران، یعنی IE و Firefox توضیحات بیشتری را ارائه خواهیم كرد. 
مرجع: 
http://www.cert.org/tech_tips/securing_browser




تاريخ : جمعه 19 مهر 1392برچسب:, | | نویسنده : مقدم |