نقش پروتکل SSL یا Secure Socket Layer در امنیت ارتباطات شبکه

  • ۰

نقش پروتکل SSL یا Secure Socket Layer در امنیت ارتباطات شبکه

نقش پروتکل SSL یا Secure Socket Layer در امنیت ارتباطات شبکه

SSL یا Secure Socket Layer راه حلی جهت برقراری ارتباطات ایمن میان یک سرویس‌دهنده و یک سرویس‌گیرنده است که توسط شرکت Netscape ارائه شده است. درواقع SSL پروتکلی است که پایین‌تر از لایه کاربرد (لایه ۴ از مدل TCP/IP) و بالاتر از لایه انتقال (لایه سوم از مدل TCP/IP) قرار می‌گیرد.

پروتکل SSL بهره‌گیری از موارد امنیتی تعبیه شده آن برای امن کردن پروتکل‌های غیر امن لایه کاربردی نظیر HTTP، LDAP، IMAP و غیره است. الگوریتم‌های رمزنگاری بر اساس پروتکل SSL بر روی داده‌های خام (plain text) که قرار است از یک کانال ارتباطی غیر امن مثل اینترنت عبور کنند، اعمال می‌شود و محرمانه ماندن داده‌ها را در طول کانال انتقال تضمین می‌کند. به‌بیان‌دیگر شرکتی که صلاحیت صدور و اعطای گواهی‌های دیجیتال SSL را دارد برای هرکدام از دو طرفی که قرار است ارتباطات میان شبکه‌ای امن داشته باشند، گواهی‌های مخصوص سرویس‌دهنده و سرویس‌گیرنده را صادر می‌کند و با مکانیسم‌های احراز هویت خاص خود، هویت هرکدام از طرفین را برای طرف مقابل تأیید می‌کند. البته غیر از این کار می‌بایست تضمین کند که اگر اطلاعات حین انتقال مورد سرقت قرار گرفت، برای رباینده قابل‌درک و استفاده نباشد که این کار را با کمک الگوریتم‌های رمزنگاری و کلیدهای رمزنگاری نامتقارن و متقارن انجام می‌دهد.

ملزومات یک ارتباط مبتنی بر پروتکل امنیتی SSL

برای داشتن ارتباطات امن مبتنی بر SSL عموماً به دو نوع گواهی دیجیتال SSL نیاز است. گواهی اول برای سرویس‌دهنده و گواهی دیگر برای سرویس‌گیرنده است. همچنین به یک مرکز صدور و اعطای گواهینامه دیجیتال یا CA نیاز است. وظیفه CA این است که هویت طرفین ارتباط، نشانی‌ها، حساب‌های بانکی و تاریخ انقضای گواهینامه را بداند و بر اساس آن‌ها هویت‌ها را تعیین نماید.

مکانیسم‌های تشکیل‌دهنده SSL

۱– تأیید هویت سرویس‌دهنده

با استفاده از این ویژگی در SSL، یک کاربر از صحت هویت یک سرویس‌دهنده مطمئن می‌شود. نرم‌افزارهای مبتنی بر SSL سمت سرویس‌گیرنده، مثلاً یک مرورگر وب نظیر Internet Explorer می‌تواند از تکنیک‌های استاندارد رمزنگاری مبتنی بر کلید عمومی و مقایسه با کلیدهای عمومی یک سرویس‌دهنده، (مثلاً یک برنامه سرویس‌دهنده وب نظیر IIS) و از هویت آنها مطلع شود و پس از اطمینان کامل، کاربر می‌تواند نسبت به وارد نمودن اطلاعات خود مانند شماره کارت‌های اعتباری و یا گذرواژه‌ها اقدام نماید.

۲- تأیید هویت سرویس‌گیرنده

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

۳- ارتباطات رمز شده

کلیه اطلاعات مبادله شده میان سرویس‌دهنده و گیرنده می‌بایست توسط نرم‌افزارهای موجود در سمت سرویس‌دهنده و سرویس‌گیرنده رمزنگاری (Encrypt) شده و در طرف مقابل رمزگشایی (Decrypt) شوند تا حداکثر محرمانگی (Confidentiality) در این‌گونه سیستم‌ها لحاظ شود.

اجزای پروتکل SSL

پروتکل SSL دارای دو زیرپروتکل تحت عناوین زیر است:

۱- SSL Rocord Protocol که نوع قالب‌بندی داده‌های ارسالی را تعیین می‌کند.

۲- SSL Handshake Protocol که بر اساس قالب تعیین‌شده در پروتکل قبلی، مقدمات ارسال داده‌ها میان سرویس‌دهنده‌ها و سرویس‌گیرنده‌های مبتنی بر SSL را تهیه می‌کند.

بخش‌بندی پروتکل SSL به دو زیرپروتکل دارای مزایایی است ازجمله:

اول: در ابتدای کار و طی مراحل اولیه ارتباط (Handshake) هویت سرویس‌دهنده برای سرویس‌گیرنده مشخص می‌گردد.

دوم: در همان ابتدای شروع مبادلات، سرویس‌دهنده و گیرنده بر سر نوع الگوریتم رمزنگاری تبادلی توافق می‌کنند.

سوم: در صورت لزوم، هویت سرویس‌گیرنده نیز برای سرویس‌دهنده احراز می‌گردد.

چهارم: در صورت استفاده از تکنیک‌های رمزنگاری مبتنی بر کلید عمومی، می‌توانند کلیدهای اشتراکی مخفی را ایجاد نمایند.

پنجم: ارتباطات بر مبنای SSL رمزنگاری می‌شود.

الگوریتم‌های رمزنگاری پشتیبانی شده در SSL

در استاندارد SSL، از اغلب الگوریتم‌های عمومی رمزنگاری و مبادلات کلید (Key Exchcenge Algorithm) نظیر RSA، RC4، RC2،MD5، KEA، DSA، DES و RSA Key Exchauge، SHA1، Skipjack و DES3 پشتیبانی می‌شود. بسته به این که نرم‌افزارهای سمت سرویس‌دهنده و سرویس‌گیرنده نیز از موارد مذکور پشتیبانی نمایند، ارتباطات SSL می‌تواند بر اساس هرکدام از این الگوریتم‌ها صورت پذیرد. البته بسته به طول کلید مورد استفاده در الگوریتم و قدرت ذاتی الگوریتم، می‌توان آن‌ها را در رده‌های مختلفی قرار داد که توصیه می‌شود با توجه به سناریوهای موردنظر، از الگوریتم‌های قوی‌تر نظیر DES۳ با طول کلید ۱۶۸ بیت برای رمزنگاری داده‌ها و همچنین الگوریتم SHA-1 برای مکانیسم‌های تأیید پیغام MD5 استفاده شود و یا این که اگر امنیت در این حد مورد نیاز نبود، می‌توان در مواردی خاص از الگوریتم رمزنگاری RC4 با طول کلید ۴۰ بیت و الگوریتم تأیید پیغام MD5 استفاده نمود.

نحوه عملکرد داخلی پروتکل SSL

همان‌طور که می‌دانید SSL می‌تواند از ترکیب رمزنگاری متقارن و نامتقارن استفاده کند. رمزنگاری کلید متقارن سریع‌تر از رمزنگاری کلید عمومی است و از طرف دیگر رمزنگاری کلید عمومی تکنیک‌های احراز هویت قوی‌تری را ارائه می‌کند. یک جلسه (SSL (Session با یک تبادل پیغام ساده تحت عنوان SSL Handshake شروع می‌شود. این پیغام اولیه به سرویس‌دهنده این امکان را می‌دهد تا خودش را به سرویس‌دهنده دارای کلید عمومی معرفی نماید و سپس به سرویس‌گیرنده و سرویس‌دهنده این اجازه را می‌دهد که یک کلید متقارن را ایجاد نمایند که برای رمزنگاری‌ها و رمزگشایی سریع‌تر در جریان ادامه مبادلات مورد استفاده قرار می‌گیرد. گام‌هایی که قبل از برگزاری این جلسه انجام می‌شوند بر اساس الگوریتم RSA Key Exchangeعبارت‌اند از:

۱- سرویس‌گیرنده، نسخه SSL مورد استفاده خود، تنظیمات اولیه درباره نحوه رمزگذاری و یک داده تصادفی را برای شروع درخواست یک ارتباط امن مبتنی بر SSL به سمت سرویس‌دهنده ارسال می‌کند.

۲- سرویس‌دهنده نیز در پاسخ نسخه SSL مورد استفاده خود، تنظیمات رمزگذاری و داده تصادفی تولیدشده توسط خود را به سرویس‌گیرنده می‌فرستد و همچنین سرویس‌دهنده گواهینامه خود را نیز برای سرویس‌گیرنده ارسال می‌کند و اگر سرویس‌گیرنده از سرویس‌دهنده، درخواستی داشت که نیازمند احراز هویت سرویس‌گیرنده بود، آن را نیز از سرویس‌گیرنده درخواست می‌کند.

۳- سپس سرویس‌گیرنده با استفاده از اطلاعاتی که از سرویس‌دهنده مجاز در خود دارد، داده‌ها را بررسی می‌کند و اگر سرویس‌دهنده مذکور تأیید هویت شد، وارد مرحله بعدی می‌شود و در غیر این صورت با پیغام هشداری به کاربر، ادامه عملیات قطع می‌گردد.

نقش پروتکل SSL یا Secure Socket Layer در امنیت ارتباطات شبکه

نقش پروتکل SSL یا Secure Socket Layer در امنیت ارتباطات شبکه

شکل 1 : SSL

۴- سرویس‌گیرنده یک مقدار به نام Secret Premaster را برای شروع جلسه ایجاد می‌کند و آن را با استفاده از کلید عمومی (که اطلاعات آن معمولاً در سرویس‌دهنده موجود است) رمزنگاری می‌کند و این مقدار رمز شده را به سرویس‌دهنده ارسال می‌کند.

۵- اگر سرویس‌دهنده به گواهینامه سرویس‌گیرنده نیاز داشت می‌بایست در این گام برای سرویس‌دهنده ارسال شود و اگر سرویس‌گیرنده نتواند هویت خود را به سرویس‌دهنده اثبات کند، ارتباط در همین‌جا قطع می‌شود.

۶- به‌محض این که هویت سرویس‌گیرنده برای سرویس‌دهنده احراز شد، سرویس‌دهنده با استفاده از کلید اختصاصی خودش مقدار Premaster Secret را رمزگشایی می‌کند و سپس اقدام به تهیه مقداری به نام Master Secret می‌نماید.

۷- هم سرویس‌دهنده و هم سرویس‌گیرنده با استفاده از مقدار Master Secret کلید جلسه (Session Key) را تولید می‌کنند که درواقع کلید متقارن مورد استفاده در عمل رمزنگاری و رمزگشایی داده‌ها حین انتقال اطلاعات است و در این مرحله به‌نوعی جامعیت داده‌ها بررسی می‌شود.

۸- سرویس‌گیرنده پیغامی را به سرویس‌دهنده می‌فرستد تا به او اطلاع دهد، داده بعدی که توسط سرویس‌گیرنده ارسال می‌شود به‌وسیله کلید جلسه رمزنگاری خواهد شد و در ادامه، پیغام رمز شده نیز ارسال می‌شود تا سرویس‌دهنده از پایان یافتن Handshake سمت سرویس‌گیرنده مطلع شود.

۹- سرویس‌دهنده پیغامی را به سرویس‌گیرنده ارسال می‌کند تا او را از پایان Handshake سمت سرویس‌دهنده آگاه نماید و همچنین این که داده بعدی که ارسال خواهد شد توسط کلید جلسه رمز می‌شود.

۱۰- در این مرحلهSSL Handshake  تمام می‌شود و از این به بعد جلسه SSL شروع می‌شود و هر دو عضو سرویس‌دهنده و گیرنده شروع به رمزنگاری و رمزگشایی و ارسال داده‌ها می‌کنند.


  • ۰

مفهوم IDS

مفهوم IDS

IDS یک سیستم محافظتی است که خرابکاریهای در حال وقوع روی شبکه را شناسایی می کند و با استفاده از تشخیص نفوذ که شامل مراحل جمع آوری اطلاعات ، پویش پورتها ، به دست آوری کنترل کامپیوترها و نهایتا هک کردن می باشد ، می تواند نفوذ خرابکاریها را گزارش و کنترل کند.

روش کار به این صورت است که با استفاده از تشخیص نفوذ که شامل مراحل جمع آوری اطلاعات ، پویش پورتها ، به دست آوری کنترل کامپیوترها و نهایتا هک کردن می باشد ، می تواند نفوذ خرابکاری ها را گزارش و کنترل کند.
از قابلیتهای دیگر IDS ، امکان تشخیص ترافیک غیرمتعارف از بیرون به داخل شبکه و اعلام آن به مدیر شبکه و یا بستن ارتباط های مشکوک و مظنون می باشد. ابزار IDS قابلیت تشخیص حملات از طرف کاربران داخلی و کاربران خارجی را دارد.

بر خلاف نظر عمومی که معتقدند هر نرم افزاری را می توان به جای IDS استفاده کرد، دستگاه های امنیتی زیر نمی توانند به عنوان IDS مورد استفاده قرار گیرند:
۱- سیستم هایی که برای ثبت وقابع شبکه مورد استفاده قرار می گیرند مانند : دستگاههایی که برای تشخیص آسیب پذیری در جهت از کار انداختن سرویس و یا حملات مورد استفاده قرار می گیرند.

۲- ابزارهای ارزیابی آسیب پذیری که خطاها و یا ضعف در تنظیمات را گزارش می دهند.

۳-نرم افزارهای ضدویروس که برای تشخیص انواع کرمها، ویروسها و به طورکلی نرم افزارهای خطرناک تهیه شده اند.

۴-دیواره آتش (Firewall )

۵-مکانیزمهای امنیتی مانند SSL ، VPN و Radius و … .

چرا دیواره آتش به تنهایی کافی نیست ؟

به دلایل زیر دیواره های آتش نمی توانند امنیت شبکه را به طور کامل تامین کنند :
۱. چون تمام دسترسی ها به اینترنت فقط از طریق دیواره آتش نیست.
۲.تمام تهدیدات خارج از دیواره آتش نیستند.
۳.امنیت کمتر در برابر حملاتی که توسط نرم افزارها مختلف به اطلاعات و داده های سازمان می شود ، مانند Active ، Java Applet، Virus Programs.

تکنولوژی IDS
۱- Plain Hand Work
۲- Network Based
۳- Host Based
۴- Honey pot

(NIDS (Network Bas
گوش دادن به شبکه و جمع آوری اطلاعات ازطریق کارت شبکه ای که در آن شبکه وجود دارد.
به تمامی ترافیک های موجود گوش داده و در تمام مدت در شبکه مقصد فعال باشد.

(HIDS (Host Base
تعداد زیادی از شرکتها در زمینه تولید این نوع IDS فعالیت می کنند.
روی PC نصب می شود و از CPU و هارد سیستم استفاده می کنند.
دارای اعلان خطر در لحظه می باشد.
جمع آوری اطلاعات در لایه Application
مثال این نوع IDS ، نرم افزارهای مدیریتی می باشند که ثبت وقایع را تولید و کنترل می کنند.

Honey pot
سیستمی می باشد که عملا طوری تنظیم شده است که در معرض حمله قرار بگیرد. اگر یک پویشگری از NIDS ، HIDS و دیواره آتش با موفقیت رد شود متوجه نخواهد شد که گرفتار یک Honey pot شده است. و خرابکاری های خود را روی آن سیستم انجام می دهد و می توان از روشهای این خرابکاریی ها برای امن کردن شبکه استفاده کرد.

محل قرارگیری IDS
محل قراگیری IDS ها کجاست ؟
بیرون دیواره آتش ؟
داخل دیواره آتش (داخل DMZ یا شبکه داخلی )؟
چه ترافیکی را می بایست کنترل کند؟
چه چیزهایی را می بایست کنترل کند؟

کارآیی یک IDS خوب وقتی مشخص می شود که :
بتوان کنترل و مدیریت آن را به صورت ۲۴ ساعته و ۷ روز در هفته انجام داد.
توسط یک مدیر با دانش بالا مدیریت شود تا بتواند از وقایع بدست آمده کنترل های جدیدی را روی دیوار آتش پیاده سازی کند.مرتب کنترل وبا توجه به حوادث روزانه (ویروس ها و ورم ها و روش های هک جدید) به روزرسانی شود.

حملات به طور کلی به دو بخش تقسیم می شوند:
۱-غیرفعال:فکر دسترسی به سیستم های آسیب پذیر بدون دستیابی به اطلاعات
۲-فعال:دستیابی بدون اجازه به همراه تغییر در منابع و اطلاعات یک سازمان

از نظر شخص نفوذگر حملات به گروههای زیر تقسیم می شوند:
۱-داخلی:یعنی اینکه حملات از طریق کارکنان و یا شرکای تجاری و یا حتی مشتریانی که به شبکه شما متصل می باشند.
۲- خارجی:حملاتی که از خارج سازمان و معمولا از طریق اینترنت انجام می گیرد.●شما درمعرض خطر هستید!

برای تشخیص خطرات وحملات احتمالی می بایست سیستم خود را در برابر تقاضاهایی که سرویس های نامناسب درخواست می کنند مورد بررسی قرار دهید.این بررسی ها در تشخیص حملات واقعی به ما کمک می کند. با توجه به انواع راه هایی که نفوذ گران برای دسترسی به سیستمها استفده می کنند نگاهی اجمالی به روشهای آسیب رسانی و نفوذ می اندازیم.

استفاده از آسیب پذیری های معروف:دراکثر موارد حمله به معنی تلاش برای استفاده از نقص یا ایجاد آن در سیستم امنیتی یک سازمان اطلاق می شود و این یکی از راههای نفوذگری در شبکه می باشد.اغلب خود سازمان ممکن است از ابزاری برای امن کردن شبکه استفاده کند که کار حمله کننده را آسان می سازد به بیان واضح تر اینکه ابزارهای امنیتی نیز خود دارای نواقص و حفره های امنیتی می باشد که اختیارات بیشتری را به نفوذگر می دهد. این نرم افزارها اغلب مانند شمشیر دو لبه عمل می کنند و مورد استفاده هردو گروه کاربران وحمله کنندگان قرارمی گیرد مانند نرم افزارهای کنترل صحت و یکپارچگی فایل یا نرم افزارهایی که جهت تست آسیب پذیری شبکه مورد استفاده قرارمی گیرند.چک کردن یکپارچگی فایلها با استفاده از روش های سیستمی و با قابلیت ادغام روشهای مختلف با یکدیگر و با ابزارهایی نظیر anti-SATAN یا Courtney امکان پذیر می باشد.

ترافیک خروجی غیر معمول:یک نفوذگر با استفاده از تعداد زیادی Exploit و حتی نفوذ های ناموفق سعی در به دست آوردن کنترل کامپیوتر مقصد دارد. این عملیات نفوذگرانه، ترافیک معمول شبکه را افزایش می دهد و نشانه وقوع یک حمله درآینده می باشد. هر ابزار تست آسیب پذیری می بایست قابلیت تشخیص فعالیت های مشکوک و غیر متعارف را داشته باشد و با ارائه گزارش ، اعلام خطر لازم را به مدیر شبکه بدهد.
حد تکرار برای کمک به تشخیص فعالیتهای واقعی و مشکوک :فعالیتهای شبکه بوسیله دریافت و کنترل بعضی پارامترها قابل شناسایی است مانند User Profile یا از Session State .

زمان بین تکرار فعالیتها: پارامتری برای تشخیص زمان سپری شده بین دو واقعه متوالی. مثلا” وقتی بخواهید با نام کاربری اشتباه وارد سیستم شوید، سه تلاش برای ورود با نام غلط بین فاصله زمانی ۲ دقیقه یک فعالیت مشکوک به نظر می رسد.
اشتباه در تایپ ویا جوابهایی که در یک Session ایجاد می شود.

پروتکل ها وسرویس های شبکه به صورت کاملا دقیقی مستند شده اند و از ابزارهای نرم افزاری خاص استفاده می کنند. هرگونه ناهماهنگی با قالب شناخته شده( مثل اشتباه در تایپ یک دستور ) ممکن است اطلاعاتی برای شناسایی سرویسهای که می توانند مورد حمله یک نفوذگر قراربگیرند باشد.اگر امکان Audit در سیستم فعال شده باشد ،مثل Send Mail Relaying، توالی ارتباط Log بصورت معمولی و قابل پیش بینی اتفاق می افتد.هرچند که اگر در Log دریافت شده دستورات غیر مجاز دیده شود ممکن است نتیجه موارد اشتباه غیر عمدی ویا سعی در Spoofing باشد.( Spoofing به این معنی است که نفوذگر آدرس خود را به آدرسی که برای سیستم شناخته شده است تغییر داده و به این ترتیب به سیستم نفوذ می کند.)

تست تلاشهای مخرب ممکن است شامل موارد زیر باشد:
▪ شناسایی تلاشهای متعدد برای جبران خطاهای تایپی و تکرار دستورات
▪ تشخیص خطاهای مکرر برای یافتن پروتکل ها که بدنبال یک تلاش موفق انجام می شود.
▪ تشخیص خطا و یادگیری در جهت شناسایی نرم افزارهای و یا سیستم عامل های موجود در سایت مقصد.

ناهماهنگی در جهت ارسال و دریافت اطلاعات
هرگونه ناهماهنگی ترافیکی در Packetها یا یک Session نشانه ای از یک حمله پنهانی است. بررسی آدرس مبداء و مقصد ( به صورت ورودی یا خروجی) میتواند جهت Packet را تشخیص بدهد. روند برقراری یک session با تشخیص اولین پیام ارسال شده شناسایی می شود. یک درخواست برای دریافت یک سرویس از شبکه محلی به صورت یک session ورودی است و پروسه فعال کردن یک سرویس بر پابهWeb از یک شبکه محلی یک session خروجی است.

موارد زیر می تواند به عنوان حمله محسوب شود:
▪Packet -هایی که منشاء آنها اینترنت است بدون اینکه در خواستی از سمت شبکه محلی داشته باشد و وارد شبکه شود.
این حالت ممکن است نشان دهنده یک حمله IP Spoofing از خارج باشد. این مشکلات می توانند درRouter- هایی که قابلیت مقایسه آدرس مبداء و مقصد را دارند بر طرف شوند .در عمل تعداد اندکی از Router ها در شبکه می توانند به عنوان فایروال عمل کنند.

▪ بر عکس حالت قبلPacket هایی که به صورت خروجی در یک شبکه محلی ایجاد می شوند و به یک شبکه خارجی فرستاده می شوند.

▪ Packet ها با پورت های مبداء و مقصد غیر مشخص. اگر منبع پورت در مورد یک درخواست ورود یا خروج اطلاعات با نوع سرویس یکسان نباشد ممکن است به عنوان یک تلاش برای نفوذ یا پویش سیستم تلقی شود. بطور مثال در خواست Telnet از روی پورت ۱۰۰ در محیطی که انتظار چنین پشتیبانی برای سرویس وجود ندارد.ترافیک غیر معمول بیشتر توسط فایروال شناسایی شده و Packet های مشکوک را ازبین می برد. با توجه به اینکه فایروالها همیشه با سیستم های تشخیص نفوذ ادغام نمی شوند ، بنابراین ممکن است که سیستمهای تشخیص نفوذ راه حلی برای این مشکل باشد.

علائم نفوذ
معمولا با اجرای برنامه های خاص در سیستم انتظار مواجهه با رفتارهای خاص و مشابه وجود دارد
بعضی از موارد مانند موارد زیر :

▪مشخصات تاریخ و زمان : در بعضی محیط های خاص بطور معمول بعضی رفتارها در زمان خاصی در شبکه اتفاق می افتد. مثلا فرض کنید بطور معمول شنبه صبح یکسری اطلاعات به بخش مرکزی شرکت ارسال می شود که مربوط به اطلاعات مالی است. چنین ترافیکی در شنبه صبح همیشه اتفاق می افتد و عادی است در صورتیکه چنین ترافیکی روز جمعه اتفاق بیفتد و ثبت شود ، غیر معمول است و باید به عنوان یک رفتار غیر معمول یا نفوذ به سیستم مورد بررسی دقیق قرارگیرد.

▪مشخصات منابع سیستم: بعضی نفوذ های خاص باعث خرابی بعضی پارامترهای خاص سیستم میشود مثلا یک حمله Brute Force برای شکستن حرف رمز باعث در گیر کردن CPU میشود در حالیکه یک حمله DoS همین کاررا با سرویس های سیستم انجام میدهد. استفاده سنگین از منابع سیستم ( پروسسور، حافظه، دیسک سخت ، سرویسها و اتصالات شبکه ) که در زمانهای غیر معمول اتفاق می افتد برای شناسایی حمله بسیار مفید هستند و باید به آنها بسیار توجه کرد.

▪ Packet هایی با تایید های TCP غیر معمول : اگر در یک Packet نشانه مربوط به ACK فعال باشد و قبل از آن هیچ SYN-Packet ارسال نشده باشد، ممکن است نتیجه یک حمله در سیستم باشدهمچنین این حالت ممکن است اثر یکPacket خراب هم باشد که در یک شبکه با نرم افزار های خراب ایجاد می شود و واقعا” حمله نفوذی نباشد.

▪ سرویس های مختلف با علایم مختلف : ممکن است در بعضی موارد انتظار ایجاد ترافیک خاص از یک کاربر مشخص داشته باشیم مثلا کاربری که در یک ماموریت اداری بسر می برد معمولا” فقط نامه های خود را چک می کند ویا فایلی را انتقال می دهد . در صورتیکه دسترسی این کاربر به پورت های مختلف از طریق Tel net ، دلیلی بر امکان نفوذ یا حمله است .

موارد غیر معمول – علامت نفوذ
یک نفوذ کننده بالقوه ممکن است عملیات نفوذ خود را به گونه ای طراحی کند که اثر جانبی آن باعث رفتارهای غیر معمول در سیستم باشد. مانیتورینگ اثرات جانبی بسیار سخت است چون پیدا کردن محل آنها به سادگی امکان پذیر نیست از موارد غیر منتظره سیستم به موارد زیر می توان اشاره کرد:

۱-مشکلات تعریف نشده در سخت افزار یا نرم افزارسیستم مثل خاموش شدن بدون علت سرور، عدم کارکرد بعضی برنامه های نرم افزاری مانند IIS ، موارد غیر معمول restart شدن سیستم ها ، تغییرات در تنظیم clock سیستم
۲- بروزاشکالات نامشخص در منابع سیستم مثل File System Overflow یا مشغول بودن بیش از حد CPU
۳- دریافت پیام های غیر متعارف از بعضی برنامه های خود اجرا ، مثل پیغامهایی که نشان دهنده عدم اجرا و یا خطا در هنگام اجرای یک برنامه ایجاد شده باشد.بخصوص برنامه هایی که برای مانیتور کردن سیستم طراحی شده اند مثل Syslog .
۴- بروز اشکالات نامشخص در کارایی سیستم مثلا” در Router ها یا سرویس های سیستم مثل کند شدن سرور
۵- بروز رفتارهای مشکوک در اجرای برنامه های کاربرمثل اشکال در دسترسی به بعضی منابع شبکه
۶- عملکرد مشکوک در فایلهای ثبت وقایع ( Log ها)بررسی این فایل ها از نظر سایز برای اینکه حجم فایل از اندازه متعارف خیلی بیشتر یا کمتر نباشد. مگر اینکه مدیر شبکه خود چنین تغییری ایجاد کرده باشد.●چگونگی عملکرد IDS

چه باید کرد؟
مهمترین کار یک سیستم کشف نفوذگر،دفاع از کامپیوتر بوسیله شناسایی حمله و جلوگیری از آن است. شناسایی حمله هکر بستگی به نوع و تعداد عکس العمل مورد نظر دارد.

مقابله با نفوذ، نیاز به یک سیستم ترکیبی دام گذاری و تله اندازی دارد که هردو این پروسه ها باید با بررسی و دقت انجام شود. از کارهای دیگری که باید انجام داد ، تغییر دادن جهت توجه هکر است.هر دوسیستم واقعی و مجازی(Honeypot) به دام اندازی هکر به طور دائمی دیده بانی (Monitor ) می شوند و داده های تولید شده توسط سیستم شناسایی نفوذ گر(IDS) برای شناسایی نحوه عملکرد حمله به دقت بررسی می شود که این مهمترین وظیفه یک IDS جهت شناسایی حملات و یا نفوذهای احتمالی می باشد.

وقتی که یک حمله یا نفوذ شناسایی شد، IDS سرپرست شبکه را مطلع می سازد. مرحله بعدی کار می تواند بر عهده سرپرست شبکه یا خود IDS باشد که از بررسی های به عمل آمده نتیجه گیری کرده و اقدام متقابل را انجام دهد.(مانند جلوگیری از عملکرد یک قسمت بخصوص برای پایان بخشیدن به Session های مشکوک یا تهیه نسخه پشتیبان از سیستم برا ی حفاظت از اطلاعات ، و یا انتقال ارتباط به یک سیستم گمراه کننده مانند Honeypot و چیزهای دیگر که بر اساس سیاستهای (Policy ) شبکه قابل اجرا باشد . در حقیقت IDS یک از عناصر سیاستهای امنیتی شبکه است.در بین وظایف مختلف IDS ، شناسایی نفوذگر از اساسی ترین آنهاست .حتی ممکن است در مراجع قانونی از نتایج و گزارشات حوادثی که IDS اعلام می کند استفاده نمود، و از حملاتی که در آینده اتفاق خواهد افتاد با اعمال وصله های امنیتی مناسب از حمله به یک کامپیوتر بخصوص ویا یک منبع شبکه جلوگیری کرد.
شناسایی نفوذ ممکن است گاهی اوقات زنگ خطر اشتباهی را به صدا در آورد. برای مثال نتیجه خراب کارکردن یک کارت شبکه و یا ارسال شرح یک حمله و یا اثر یک نفوذ ازطریق Email .

ساختار و معماری سیستم تشخیص نفوذ:
سیستم تشخیص نفوذ یک هسته مرکزی دارد و یک تشخیص دهنده(موتور تشخیص) است که مسئولیت تشخیص نفوذ را دارد. این سنسور یک مکانیزم تصمیم گیری بر اساس نوع نفوذ دارد.

این سنسور اطلاعات خام را از سه منبع دریافت می کند.
۱-از اطلاعات موجود در بانک اطلاعلتی خود IDS.
۲-فایل ثبت وقایع سیستم (syslog).
۳-آثار ترافیک عبوری و دیده بانی شبکه.

فایل ثبت وقایع سیستم (syslog) ممکن است به طور مثال اطلاعات پیکربندی سیستم و دسترسی های کاربران باشد. این اطلاعات اساس تصمیم گیری های بعدی مکانیزم سنسور خواهد بود.این سنسور با یک Event Generator که مسئول جمع آوری اطلاعات است با هم کار می کنند. قوانین جمع آوری اطلاعات که به وسیله سیاست های Event generator مشخص می شود ، تعیین کننده نوع فیلترینگ از روی حوادث و اطلاعات ثبت شده است.

Event Generator ، مثل سیستم عامل یا شبکه یا یک برنامه اجرایی ، تولید کنندهPolicy هایی هستند که ممکن است یک واقعه ایجاد شده در سیستم عامل یا Packet های شبکه را ثبت کنند. این مجموعه به همراه اطلاعات Policy می تواند در یک سیستم محافظت شده یا خارج از شبکه قرار داده شود. در بعضی شرایط خاص هیچ محل مشخصی به عنوان محل حفظ اطلاعات ایجاد نمی شود مثل وقتی که اطلاعات جمع آوری شده از وقایع مستقیما” به یک سیستم آنالیز ارسال می شود.
وظیفه سنسور فیلتر کردن اطلاعات است و حذف کردن هر داده غیر مرتبط که از طرف منابع دریافت اطلاعات می رسد. تحلیل کننده برای دستیابی به این هدف از Policy های موجود استفاده می کند.تحلیل گر نکاتی مانند اثر و نتیجه حمله ، پرو فایل رفتارهای نرمال و صحیح و پارامترهای مورد نیاز مثل Threshold ها را بررسی می کند .

علاوه بر همه اینها بانک اطلاعاتی که پارامترهای پیکربندی IDS را در خود نگه می دارد، روشهای مختلف ارتباطی را ایجاد می کنند.سنسور یا گیرنده هم بانک اطلاعاتی خاص خود را دارد، که شامل تاریخچه پویایی از نفوذهای پیچیده بوده یا با توجه به تعدد حمله مورد تحلیل قرارگرفته است.سیستم تشخیص نفوذ می تواند به صورت متمرکز مثل برقراری یک فایروال فیزیکی یا به صورت غیر متمرکز انجام شود.یک IDS غیر متمرکز شامل تعداد زیادی سیستم تشخیص نفوذ در یک شبکه بزرگ است که هرکدام از آنها با هم در ارتباط هستند.سیستم های پیچیده تر از ساختاری پیروی می کنند که ماژول های مشابه برنامه های خود اجرایی دارند که روی هر کامپیوتر اجرا می شوند.

عملکرد این سیستم جایگزین ، مونیتور و فیلتر کردن تمام فعالیتهای مرتبط با یک بخش محافظت شده است که بتواند یک آنالیز دقیق و پاسخ متناسب از شبکه دریافت کند.یکی از قسمت های بسیار مهم IDS برنامه ای است که به سرور آنالیز کننده گزارش می دهد ، DIDS(Database IDS) و دارای ابزار آنالیز پیچیده تری است که حملات غیر متمرکز را نیز شناسایی می کند. دلیل دیگری که وجود دارد مربوط به قابلیت حمل و انتقال درچند منطقه فیزیکی است.علاوه بر این عامل جایگزین مشخص برای تشخیص و شناسایی اثر حمله های شناخته شده می باشد.یک راه حل ساختاری چند برنامه ای که در سال ۱۹۹۴ ایجاد شد

AAFID یا Autonomous Agent for Intrusion Detection است. این ساختار از یک جایگزین استفاده می کند که بخش به خصوصی از رفتار سیستم را در زمان خاص دیده بانی می کند. به طور مثال یک جایگزین می تواند تعداد دفعاتی را که به سیستم Telnet شده تشخیص داده و در صورتی که این عدد منطقی به نظر نرسد آنرا گزارش کند. یک جایگزین همچنین قابلیت ایجاد زنگ خطر در زمان وقوع یک حادثه مشکوک را دارد.جایگزین ها می توانند مشابه سازی شوند و به سیستم دیگر منتقل گردند.به غیر از جایگزین ها ، سیستم می تواند رابط هایی برای دیده بانی کل فعالیتهای یک کامپیوتر بخصوص داشته باشد.این رابط ها همیشه نتایج عملیات خود را به یک مونیتور مشخص ارسال می کنند. سیستم های مانیتور اطلاعات را از نقاط مختلف و مشخص شبکه دریافت می کنند و این بدین معنی است که می توانند اطلاعات غیر متمرکز را بهم ارتباط دهند و نتیجه گیری نهایی را انجام دهند.به انضمام اینکه ممکن است فیلتر هایی گذاشته شود تا داده های تولید شده را بصورت انتخابی در یافت نماید.

– See more at: http://www.idsco.ir/IDS-%DA%86%DB%8C%D8%B3%D8%AA%D8%9F#sthash.YE3P1rLJ.dpuf

 


آخرین دیدگاه‌ها

    دسته‌ها