در این مقاله به این مطلب می پردازیم که از دیدگاه امنیتی پراکسی چیست و چه چیزی نیست، از چه نوع حملاتی جلوگیری می کند و به مشخصات بعضی انواع پراکسی پرداخته می شود. البته قبل از پرداختن به پراکسی بعنوان ابزار امنیتی، بیشتر با فیلترها آشنا خواهیم شد.
پراکسی چیست؟
در دنیای امنیت شبکه، افراد از عبارت «پراکسی» برای خیلی چیزها استفاده می کنند. اما عموماً، پراکسی خدمات شبکه ابزار است که بسته های دیتای اینترنتی را در مسیر دریافت می کند، آن دیتا را می سنجد و عملیاتی برای سیستم مقصد آن دیتا انجام می دهد. در اینجا از پراکسی به معنی پروسه ای یاد می شود که در راه ترافیک شبکه ای قبل از اینکه به شبکه وارد یا از آن خارج شود، قرار می گیرد و آن را می سنجد تا ببیند با سیاست های امنیتی شما مطابقت دارد و سپس مشخص می کند که آیا به آن اجازه عبور از فایروال را بدهد یا خیر. بسته های مورد قبول به سرور مورد نظر ارسال و بسته های ردشده دور ریخته می شوند.
پراکسی چه چیزی نیست؟
پراکسی ها بعضی اوقات با دو نوع فایروال اشتباه می شوند «Packet filter و Stateful packet filter» که البته هر کدام از روش ها مزایا و معایبی دارد، زیرا همیشه یک مصالحه بین کارایی و امنیت وجود دارد.
پراکسی با Packet filter تفاوت دارد
ابتدایی ترین روش صدور اجازه عبور به ترافیک بر اساس TCP/IP این نوع فیلتر بود. این نوع فیلتر بین دو یا بیشتر رابط شبکه قرار می گیرد و اطلاعات آدرس را در header IP ترافیک دیتایی که بین آنها عبور می کند، پیمایش می کند. اطلاعاتی که این نوع فیلتر ارزیابی می کند عموماً شامل آدرس و پورت منبع و مقصد می شود. این فیلتر بسته به پورت و منبع و مقصد دیتا و بر اساس قوانین ایجاد شده توسط مدیر پشتیبانی شبکه بسته را می پذیرد یا نمی پذیرد. مزیت اصلی این نوع فیلتر سریع بودن آن است چرا که header، تمام آن چیزی است که سنجیده می شود. و عیب اصلی ان این است که هرگز آنچه را که در بسته وجود دارد نمی بیند و به محتوای آسیب رسان اجازه عبور از فایروال را می دهد. بعلاوه، این نوع فیلتر با هر بسته بعنوان یک واحد مستقل رفتار می کند و وضعیت (State) ارتباط را دنبال نمی کند.
پراکسی با Stateful packet filter تفاوت دارد
این فیلتر اعمال فیلتر نوع قبل را انجام می دهد، بعلاوه اینکه بررسی می کند کدام کامپیوتر در حال ارسال چه دیتایی است و چه نوع دیتایی باید بیاید. این اطلاعات بعنوان وضعیت (State) شناخته می شود.
پروتکل ارتباطی TCP/IP به ترتیبی از ارتباط برای برقراری یک مکالمه بین کامپیوترها نیاز دارد. در آغاز یک ارتباط TCP/IP عادی، کامپیوتر A سعی می کند با ارسال یک بسته SYN (synchronize) به کامپیوتر B ارتباط را برقرار کند. کامپیوتر B در جواب یک بسته SYN/ACK (Acknowledgement) برمی گرداند، و کامپیوتر A یکACK به کامپیوتر B می فرستد و به این ترتیب ارتباط برقرار می شود. TCP اجازه وضعیتهای دیگر، مثلاً FIN (finish) برای نشان دادن آخرین بسته در یک ارتباط را نیز می دهد.
هکرها در مرحله آماده سازی برای حمله، به جمع آوری اطلاعات در مورد سیستم میکروتیک شما می پردازند. یک روش معمول ارسال یک بسته در یک وضعیت غلط به منظوری خاص است. برای مثال، یک بسته با عنوان پاسخ (Reply) به سیستمی که تقاضایی نکرده، می فرستند. معمولاً، کامپیوتر دریافت کننده بیاید پیامی بفرستد و بگوید “I don’t understand” . به این ترتیب، به هکر نشان می دهد که وجود دارد، و آمادگی برقراری ارتباط دارد. بعلاوه، قالب پاسخ می تواند سیستم عامل مورد استفاده را نیز مشخص کند، و برای یک هکر گامی به جلو باشد. یک فیلتر Stateful packet منطق یک ارتباط TCP/IP را می فهمد و می تواند یک “Reply”را که پاسخ به یک تقاضا نیست، مسدود کند ـــ آنچه که یک فیلتر packet ردگیری نمی کند و نمی تواند انجام دهد. فیلترهای Stateful packet می توانند در همان لحظه قواعدی را مبنی بر اینکه بسته مورد انتظار در یک ارتباط عادی چگونه باید بنظر رسد، برای پذیرش یا رد بسته بعدی تعیین کنند. فایده این کار امنیت محکم تر است. این امنیت محکم تر، بهرحال، تا حدی باعث کاستن از کارایی می شود. نگاهداری لیست قواعد ارتباط بصورت پویا برای هر ارتباط و فیلترکردن دیتای بیشتر، حجم پردازشی بیشتری به این نوع فیلتر اضافه می کند.
پراکسی ها یا Application Gateways
Application Gateways که عموماً پراکسی نامیده می شود، پیشرفته ترین روش استفاده شده برای کنترل ترافیک عبوری از فایروال ها هستند. پراکسی بین کلاینت و سرور قرار می گیرد و تمام جوانب گفتگوی بین آنها را برای تایید تبعیت از قوانین برقرار شده، می سنجد. پراکسی بار واقعی تمام بسته های عبوری بین سرور و کلاینت را می سنجد، و می تواند چیزهایی را که سیاستهای امنیتی را نقض می کنند، تغییر دهد یا محروم کند. توجه کنید که فیلترهای بسته ها فقط headerها را می سنجند، در حالیکه پراکسی ها محتوای بسته را با مسدود کردن کدهای آسیب رسان همچون فایلهای اجرایی، اپلت های جاوا، ActiveX و ... غربال می کنند.
پراکسی ها همچنین محتوا را برای اطمینان از اینکه با استانداردهای پروتکل مطابقت دارند، می سنجند. برای مثال، بعضی اَشکال حمله کامپیوتری شامل ارسال متاکاراکترها برای فریفتن سیستم قربانی است؛ حمله های دیگر شامل تحت تاثیر قراردادن سیستم با دیتای بسیار زیاد است. پراکسی ها می توانند کاراکترهای غیرقانونی یا رشته های خیلی طولانی را مشخص و مسدود کنند. بعلاوه، پراکسی ها پسیو شبکه تمام اعمال فیلترهای ذکرشده را انجام می دهند. بدلیل تمام این مزیتها، پراکسی ها بعنوان یکی از امن ترین روشهای عبور ترافیک شناخته می شوند. آنها در پردازش ترافیک از فایروالها کندتر هستند زیرا کل بسته ها را پیمایش می کنند. بهرحال «کندتر» بودن یک عبارت نسبی است.
آیا واقعاً کند است؟ کارایی پراکسی بمراتب سریعتر از کارایی اتصال اینترنت کاربران خانگی و سازمانهاست. معمولاً خود اتصال اینترنت گلوگاه سرعت هر شبکه ای است. پراکسی ها باعث کندی سرعت ترافیک در تست های آزمایشگاهی می شوند اما باعث کندی سرعت دریافت کاربران نمی شوند. در شماره بعد بیشتر به پراکسی خواهیم پرداخت.
امن سازی نقاط پایانی:
نتیجه گیری:
نویسنده:
(مهندس عامر نجفیان پور: رئیس هیأت مدیره و مدیر فنی شرکت داده پردازان دوران)
مقدمه
عاملهایی مانند کارشناسان، عوامل تکنولوژیکی و فرآیندهای سازمانی عناصری هستند که پیادهسازی امنیت در سازمان ها را با چالش خدمات شبکه مواجه می کنند. جنبه های انسانی عبارتست از آنچه مربوط به شناخت و درک افراد است مانند فرهنگ و تعامل با دیگر با افراد. جنبه های سازمانی مربوط هستند به ساختار سازمان شامل اندازه سازمان و تصمیمات مدیریتی در حوزه امنیت فناوری اطلاعات. جنبه های تکنولوژی، شامل راه حل های تکنیکی مانند برنامه ها و پروتکل هاست. برای مثال، برای رسیدن به درک متقابل درباره ریسک های امنیت در میان ذینفعان مختلف، ارتباطات و تعاملات موثر مورد نیاز است. همچنین خطاهای انسانی تهدید دیگری برای راهکارهای امنیتی هستند. تحلیل ها نشان می دهد که فاکتورهای سازمانی مانند ارتباطات، فرهنگ امنیت و قوانین دلایل متداول خطاها در حوزه امنیت اطلاعات هستند.
متدولوژی
شناخت بهتر شرایط و محدودیت های دنیای واقعی در ارائه راهکارهای امنیتی برای ایجاد سیستم های پسیو شبکه امن تر و قابل استفاده تر، به توسعه دهندگان و طراحان سیستم کمک خواهد کرد. سوالات اصلی که در این مطالعه مطرح شده است، عبارتند از:
1. مشکلات اصلی که کارشناسان در بخش امنیت اطلاعات در سازمان خود با آنها روبرو هستند، چیست؟
2. چگونه این چالش ها و مشکلات با هم در تقابل هستند؟
3. الزامات این چالش ها بر روی تحقیقات آینده چیست؟
ارائه چارچوب یکپارچه چالش ها
سه دسته از این مشکلات بعنوان فاکتورهای انسانی دسته بندی می شود:
1- فرهنگ 2- فقدان آموزش امنیت 3- فرآیندهای امنیت ارتباطات
فقدان فرهنگ امنیت داخل سازمانها تغییر شیوه ها را مشکل کرده است. برای مثال، چندین کارمند از یک نام کاربری برای دسترسی به یک سیستم پشتیبانی شبکه استفاده می کنند. در برخی موارد، کارمندان دسترسی به داده را بعنوان یک امتیاز در نظر می گیرند و در برابر از دست دادن این امتیاز بعنوان یک تغییر سازمانی مقاومت می نمایند. فقدان آموزش امنیت موضوع دیگر است. پیاده سازی کنترل های امنیتی در حالی که افراد توجه کافی یا دانش کافی درباره امنیت فناوری اطلاعات ندارند، دشوار خواهد بود. فقدان فرهنگ و آموزش، شناخت ریسک هایی که ذینفعان داخل سازمان با آن مواجه هستند، تحت تاثیر قرار می دهد. زمانی که دیدگاه مشترک از ریسک ها میان ذینفعان وجود نداشته باشد امنیت ارتباطات با مشکل روبرو خواهد شد.
مواردی که به ویژگی های سازمان ها مربوط می شود، عبارتند از:
1- برآورد ریسک 2- محیط های باز و آزاد دانشگاهی 3- فقدان بودجه 4- قرار دادن امنیت در اولویت دوم 5- زمانبندی فشرده 6- روابط تجاری با دیگر سازمان ها 7- توزیع مسئولیت های فناوری اطلاعات 8- کنترل دسترسی به داده های حساس
فاکتورهای مبتنی بر تکنولوژی که برای پیاده سازی قوانین امنیتی مطرح می شوند، عبارتند از:
1- پیچیدگی سیستم ها 2- دسترسی های توزیع شده و سیار 3- آسیب در سیستم ها و برنامه ها
نتیجه گیری
تجزیه و تحلیل ها نشان داد که ارتباطات موثر یک مشکل برای کارشناسانی که ریسک ها و کنترل های امنیتی را با دیگر ذینفعان مطرح می نمایند، می باشد. برای پیاده سازی فرآیندهای امنیتی باید فرهنگ سازمانی و دیدگاه ذینفعان مختلف و نه فقط کاربران نهایی درباره ریسک های امنیتی در نظر گرفته شود. توزیع مدیریت فناوری اطلاعات و عدم آموزش های امنیتی میکروتیک ذینفعان فاکتورهایی هستند که تاثیر منفی بر روی کارآیی و اثربخشی ارتباطات ایجاد شده توسط کارشناسان امنیت دارند.زمانبندی فشرده برای تحویل سرویس هایی که شامل نیازمندیهای امنیتی است، مشکل دیگری است. این مشکل به کمبود زمان، منابع و ارتباطات متناقض بین مسئولان مربوط می باشد. به این ترتیب یک ارتباط مستقیم بین زمانبندی فشرده و سطح امنیت وجود دارد.
توزیع، در حوزه دسترسی کنترل شده به داده دو جنبه دارد: اول، کنترل کردن دسترسی کاربرانی که پراکنده هستند و از تکنولوژی های دسترسی متفاوت استفاده می کنند. دوم، کنترل دسترسی به داده های توزیع شده در کل سازمان که توسط ذینفعان مختلف مدیریت می شود. پیشنهاد مطرح شده اینست که، پروسه های امنیتی باید با فرض محیط های توزیع شده توسعه یابند. این سیستمها باید به منظور فراهم کردن دسترسی کنترل شده به داده های توزیع شده، به اندازه کافی انعطاف پذیر باشند و کانال های ارتباطی بین ذینفعان مختلف که به آن داده ها دسترسی دارند، بهبود ببخشند.