در اين مقاله به اين مطلب مي پردازيم كه از ديدگاه امنيتي پراكسي چيست و چه چيزي نيست، از چه نوع حملاتي جلوگيري مي كند و به مشخصات بعضي انواع پراكسي پرداخته مي شود. البته قبل از پرداختن به پراكسي بعنوان ابزار امنيتي، بيشتر با فيلترها آشنا خواهيم شد.
پراكسي چيست؟
در دنياي امنيت شبكه، افراد از عبارت «پراكسي» براي خيلي چيزها استفاده مي كنند. اما عموماً، پراكسي خدمات شبكه ابزار است كه بسته هاي ديتاي اينترنتي را در مسير دريافت مي كند، آن ديتا را مي سنجد و عملياتي براي سيستم مقصد آن ديتا انجام مي دهد. در اينجا از پراكسي به معني پروسه اي ياد مي شود كه در راه ترافيك شبكه اي قبل از اينكه به شبكه وارد يا از آن خارج شود، قرار مي گيرد و آن را مي سنجد تا ببيند با سياست هاي امنيتي شما مطابقت دارد و سپس مشخص مي كند كه آيا به آن اجازه عبور از فايروال را بدهد يا خير. بسته هاي مورد قبول به سرور مورد نظر ارسال و بسته هاي ردشده دور ريخته مي شوند.
پراكسي چه چيزي نيست؟
پراكسي ها بعضي اوقات با دو نوع فايروال اشتباه مي شوند «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 و ... غربال مي كنند.
پراكسي ها همچنين محتوا را براي اطمينان از اينكه با استانداردهاي پروتكل مطابقت دارند، مي سنجند. براي مثال، بعضي اَشكال حمله كامپيوتري شامل ارسال متاكاراكترها براي فريفتن سيستم قرباني است؛ حمله هاي ديگر شامل تحت تاثير قراردادن سيستم با ديتاي بسيار زياد است. پراكسي ها مي توانند كاراكترهاي غيرقانوني يا رشته هاي خيلي طولاني را مشخص و مسدود كنند. بعلاوه، پراكسي ها پسيو شبكه تمام اعمال فيلترهاي ذكرشده را انجام مي دهند. بدليل تمام اين مزيتها، پراكسي ها بعنوان يكي از امن ترين روشهاي عبور ترافيك شناخته مي شوند. آنها در پردازش ترافيك از فايروالها كندتر هستند زيرا كل بسته ها را پيمايش مي كنند. بهرحال «كندتر» بودن يك عبارت نسبي است.
آيا واقعاً كند است؟ كارايي پراكسي بمراتب سريعتر از كارايي اتصال اينترنت كاربران خانگي و سازمانهاست. معمولاً خود اتصال اينترنت گلوگاه سرعت هر شبكه اي است. پراكسي ها باعث كندي سرعت ترافيك در تست هاي آزمايشگاهي مي شوند اما باعث كندي سرعت دريافت كاربران نمي شوند. در شماره بعد بيشتر به پراكسي خواهيم پرداخت.
- یکشنبه ۲۳ اردیبهشت ۹۷ ۱۴:۵۴ ۲۳ بازديد
- ۰ نظر