• پایان فعالیت بخشهای انجمن: امکان ایجاد موضوع یا نوشته جدید برای عموم کاربران غیرفعال شده است

اصول امنيت برنامه های وب

m_kiani

Registered User
تاریخ عضویت
5 ژانویه 2007
نوشته‌ها
287
لایک‌ها
15
در بخش اول به اين موضوع اشاره گرديد كه به منظور ايجاد برنامه های وب ايمن ، می بايست از يك رويكرد جامع تبعيت و بر روی سه لايه متفاوت شبكه ، host و برنامه متمركز گرديد. در بخش دوم با تمركز بر روی شبكه ، انواع تهديدات موجود بررسی گرديد . در اين بخش ضمن بررسی عناصر موجود در زير ساخت شبكه نظير روتر ، فايروال ، سوئيچ با ملاحظات امنيتی در خصوص بكارگيری روتر بيشتر آشنا خواهيم شد .
عناصر موجود در زيرساخت شبكه
زير ساخت شبكه را می توان به سه لايه متفاوت دستيابی ، توزيع و هسته تقسيم نمود . اين لايه ها شامل تمامی سخت افزارهای مورد نياز به منظور كنترل دستيابی به منابع داخلی و خارجی است . روتر ،*سوئيچ و فايروال مهمترين عناصر موجود در زير ساخت يك شبكه می باشند .
روتر ، حلقه ارتباطی شبكه به دنيای خارج است و كانال بسته های اطلاعاتی به پورت ها و پروتكل های مورد نياز در برنامه های وب را ايجاد می نمايد . مسئوليت روتر ارسال بسته های اطلاعاتی IP به شبكه هائی است كه به آنها متصل شده است . بسته های اطلاعاتی ممكن است درخواست های ارسالی سرويس گيرندگان به سرويس دهنده وب ، پاسخ به درخواست های ارسالی و يا درخواست های صادره توسط سرويس گيرندگان داخلی شبكه باشد . پيكربندی روتر می بايست بگونه ای انجام شود تا ترافيك غيرضروری و غير مجاز را بين شبكه ها فيلتر نمايد . همچنين ، روتر می بايست در مقابل پيكربندی مجدد غيرمطمئن حفاظت و از اينترفيس های مديريتی ايمن به منظور پيكربندی مطمئن آن استفاده نمود . با توجه به نقش كليدی نرم افزار IOS در روتر ، می بايست همواره آخرين patch و نسخه های بهنگام شده بر روی آنها نصب گردد .
فايروال ، مسئوليت بلاك كردن تمامی پورت های غيرضروری را برعهده داشته و اين امكان را فراهم می نمايد كه ترافيك صرفا" از طريق پورت های شناخته شده انجام پذيرد. فايروال ها به منظور پيشگيری از حملات شناخته شده ، می بايست دارای امكانات مناسبی به منظور مانيتورينگ درخواست های ورودی باشند . فايروال ها با همكاری نرم افزارهائی كه از آنها به منظور تشخيص مزاحمين استفاده می گردد ، قادر به ايجاد يك محيط ايمن عملياتی می باشند . همانند روتر ، فايروال ها بر روی محيطی اجراء می گردند كه مسئوليت مديريت آن بر عهده يك سيستم عامل گذاشته شده است . بنابراين لازم است كه در فواصل زمانی خاص نرم افزارهای تكميلی و بهنگام شده بر روی آنها نصب گردد . همچنين ، مديريت فايروال می بايست از طريق اينترفيس های ايمن انجام و پورت هائی كه به وجود آنها نياز نمی باشد را غيرفعال نمود .
از سوئيچ به منظور تقسيم شبكه به چندين سگمنت استفاده می گردد . سوئيچ دارای كمترين نقش در خصوص ايمن سازی يك شبكه می باشد . يكی از علل طراحی سوئيچ ، بهبود كارآئی و تسهيل در امر مديريت شبكه است .
روتر و ملاحظات امنيتی آن
اولين خط دفاعی در يك شبكه را روتر تشكيل می دهد . روتر علاوه بر قابليت روتينگ بسته های اطلاعاتی می تواند بگونه ای پيكربندی گردد تا بسته های اطلاعاتی را بر اساس نوع آنها شناسائی و آندسته از بسته های اطلاعاتی را كه ممكن است زمينه بروز حملات و تهديدات در يك شبكه را ايجاد نمايد ، بلاك نمايد . نظير ICMP ( برگرفته از Internet Control Message Protocol ) و يا SNMP ( برگرفته از Simple Network Management Protocol ) .
برای پيكربندی روتر با رعايت ملاحظات امنيتی ، اقدامات متعددی را می بايست در هر يك از گروه های زير انجام داد :
نصب آخرين نسخه های بهنگام شده و patch ارائه شده
پروتكل ها
دستيابی مديريت
سرويس ها
تشخيص مزاحمين
مميزی و لاگ نمودن
در ادامه به بررسی هر يك از موارد فوق خواهيم پرداخت .
نصب آخرين نسخه های بهنگام شده و patch ارائه شده
با عضويت در خبرنامه شركت هائی كه از محصولات نرم افزاری و يا سخت افزاری آنها در زيرساخت فن آوری اطلاعات استفاده شده است ،* می توان به سرعت از توصيه های امنيتی آنها آگاهی يافت . شركت های معتبر در صورت بروز مشكل در يك محصول سخت افزاری و يا نرم افزاری در اولين فرصت اقدام به ارائه patch مربوطه می نمايند و اين موضوع را از طريق پست الكترونيكی به اطلاع مشتركان خود می رسانند . توجه داشته باشيد كه همواره قبل از بكارگيری نسخه های بهنگام شده در يك محيط عملياتی ، آنها را تست و پس از حصول اطمينان از صحت عملكرد اقدام به نصب نهائی آنها در محيط واقعی نمود .
پروتكل ها
برخی از حملات نظير DoS به دليل وجود ضعف امنيتی در پروتكل ها اتفاق می افتد . به عنوان نمونه ، مهاجمان می توانند با ارسال سيلابی از بسته های اطلاعاتی سرويس و يا سرويس های ارائه شده توسط يك سرويس دهنده را غيرفعال نمايند. به منظور پيشگيری و پاسخ به موقع به اين نوع از حملات می بايست اقدامات زير را انجام داد :
استفاده از فيلترينگ ورودی و خروجی : بسته های اطلاعاتی مشكوك می تواند بيانگر كنكاش در شبكه ، تهاجم و يا يك كسب آگاهی لازم از وضعيت شبكه موجود توسط يك مهاجم باشد . بسته های اطلاعاتی دريافتی شامل يك آدرس داخلی می تواند نشاندهنده تلاش جهت نفوذ به شبكه و آناليز آن باشد . با اين نوع بسته های اطلاعاتی می بايست در اولين محل ممكن برخورد نمود ( Perimeter network ) . همچنين ، می بايست پيكربندی روتر بگونه ای انجام شود كه صرفا" اجازه خروج بسته های اطلاعاتی با آدرس های IP داخلی معتبر را بدهد . بررسی بسته های اطلاعاتی خروجی ، يك شبكه را در مقابل حملات از نوع DoS محافظت نخواهد كرد ولی اين تضمين را ايجاد خواهد كرد كه حمله ای با محوريت يكی از سرويس گيرندگان شبكه داخلی شكل نخواهد گرفت .
مشاهده ترافيك ICMP از شبكه داخلی : ICMP يك پروتكل stateless است كه اجازه بررسی اطلاعات در دسترس هاست را از يك هاست به هاست ديگر فراهم می نمايد . از پيام های مبتتی بر ICMP در موارد متداول زير استفاده می گردد :
Echo request : مشخص می نمايد كه يك گره IP ( يك هاست و يا روتر ) بر روی شبكه در دسترس است .
Echo reply : پاسخ به يك درخواست ICMP echo
Destination unreachable : به هاست اعلام می شود كه ديتاگرام نمی تواند توزيع گردد .
Source quench : به هاست اعلام می شود كه ديتاگرام ارسالی را با نرخ پائين تری ارسال نمايد ( به دليل شلوغی )
Redirect : به هاست يك مسير روت بهتر اعلام می شود .
Time Exceeded : نشاندهنده اين موضوع است كه عمر مفيد (TTL : Time to live ) يك ديتاگرام به اتمام رسيده است .
بلاك كردن ترافيك ICMP برروی روتر perimeter باعث حفاظت شبكه در مقابل حملاتی نظير Cascading ping floods می گردد . برای بلاك كردن اين پروتكل دلايل قانع كننده متعددی وجود دارد . عليرغم ديد انتقادی امنيتی نسبت به اين پروتكل ، از آن در موارد متعددی نظير اشكال زدائی شبكه استفاده می گردد. بنابراين لازم است كه استفاده از پروتكل ICMP كاملا" كنترل شده باشد .

پيشگيری از پيام های TTL كه اعتبار آنها به اتمام رسيده است با مقادير صفر و يك : برای شمارش تعداد hop بين يك سرويس گيرنده و يك سرويس دهنده ، trace routing از مقادير TTL صفر و يا يك استفاده می نمايد . trace routing ، به مفهوم جمع آوری اطلاعات توپولوژی شبكه است . با بلاك كردن اينچنين بسته های اطلاعاتی ، از ارائه اطلاعات تكميلی كه بيانگر جزئيات شبكه موجود است پيشگيری می گردد .

عدم دريافت و يا فوروارد ترافيك directed broadcast : ترافيك هائی اينچنين قادر به شمارش تعداد هاست موجود بر روی* يك شبكه می باشند و از آن به عنوان ابزاری جهت آماده سازی و تدارك حملات DoS استفاده می گردد . بسته های اطلاعاتی كه حاوی آدرس های مبداء زير می باشند را می بايست بلاك نمود :
شرح آدرس مبداء
Historical broadcast 0.0.0.0/8
RFC 1918 Private network 10.0.0.0/8
Loopback 127.0.0.0/8
Link local networks 169.254.0.0/16
RFC 1918 private network 172.16.0.0/12
TEST-NET 192.0.20.0/24
RFC 1918 private network 192.168.0.0/16
Class D multicast 224.0.0.0/4
Class E reserved 240.0.0.0/5
Unallocated 248.0.0.0/5
Broadcast 255.255.255.255/32
دستيابی مديريت
پيكربندی روتر از چه مكانی و به چه صورت انجام می شود ؟ كدام پورت ها و اينترفيس ها فعال است و مديران شبكه از چه شبكه و يا هاستی برای پيكربندی روتر استفاده می نمايند ؟ دستيابی به مكان پيكربندی روتر می*بايست محدود و هرگز از اينترفيس های مديريتی تحت وب بدون رمزنگاری و رعايت مسائل امنيتی نمی بايست استفاده گردد . علاوه بر اين رعايت موارد زير نيز توصيه می گردد :
غيرفعال كردن اينترفيس هائی كه از آنان استفاده نمی گردد : صرفا" می بايست اينترفيس های مورد نياز بر روی روتر فعال گردند .
ايجاد رمزهای قوی : از رمزهای عبور مناسب و قدرتمند به منظور استفاده در هر mode روتر می بايست استفاده گردد . استفاده تركيبی از حروف الفبائی ، اعداد و حروف ويژه به منظور تعريف يك رمز عبور مناسب توصيه می گردد .
استفاده از روتينگ استاتيك : روتينگ ايستا از تغيير اطلاعات موجود در جدول روتينگ پيشگيری می نمايد . يك مهاجم ممكن است بتواند با تغيير مسيرها حملات از نوع DoS را برنامه ريزی و يا درخواست ها را به يك سرويس دهنده مخرب هدايت نمايد .
بازبينی اينترفيس های مديريتی وب : حتی المقدور سعی گردد كه اينترفيس های مديريتی خارجی غيرفعال و از روش های دستيابی داخلی به همراه ليست های دستيابی استفاده گردد .
سرويس ها
بر روی يك روتر پيكربندی شده هر پورت فعال با يك سرويس خاص مرتبط می گردد . به منظور كاهش ميدان عملياتی مهاجمان ، سرويس های پيش فرض كه به وجود آنان نياز نمی باشد را می بايست غيرفعال نمود . به عنوان نمونه سرويس های bootps و finger كه از آنان بندرت استفاده می گردد را می توان غيرفعال نمود . همچنين لازم است پورت های*فعال بر روی روتر بررسی و پورت هائی را كه به وجود آْنها نياز نمی باشد را غيرفعال نمود.
بازبينی و لاگينگ
به صورت پيش فرض ، روتر تمامی عمليات deny را لاگ می نمايد . وضعيت فوق نمی بايست تغيير داده شود .همچنين لازم است كه فايل های لاگ شده به صورت اداواری بررسی تا از وقوع حملات احتمالی پيشگيری بعمل آيد . برخی از روترهای مدرن دارای مجموعه ای از امكانات جديد به منظور انجام عمليات مختلف و آماری بر روی داده لاگ شده می باشند .
تشخيص مزاحمين
به منظور پيشگيری از حملات مبتنی بر TCP/IP ، روتر می بايست قادر به شناسائی زمان بروز يك تهاجم و اعلام آن به مدير سيستم باشد . مهاجمان در ابتدا سعی می نمايند كه با اولويت های امنيتی يك شبكه آشنا شده و در ادامه با تمركز بر روی آنها حملات خود را برنامه ريزی می نمايند . با استفاده از سيستم های تشخيص دهنده مزاحمين ( IDS برگرفته شده از Intrusion Detection Systems ) ، می توان زمان و ماهيت وقوع يك تهاجم را بررسی نمود .
خلاصه
در اين مطلب ضمن بيان عناصر كليدی موجود در زيرساخت يك شبكه به مسائل امنيتی مرتبط با روتر اشاره گرديد . به منظور پيكربندی ايمن روتر ، اقدامات متعددی را می بايست انجام داد :
نصب آخرين patch و نسخه های بهنگام شده
عضويت در خبرنامه امنيتی توليد كنندگان (سخت افزار، نرم افزار )
• بلاك كردن پورت های شناخته شده
• كنترل و نظارت بر ترافيك ورودی و خروجی شبكه
• مانيتورينگ ترافيك ICMP
• مديريت و كنترل ايمن اينترفيس ها
• غيرفعال كردن امكان مديريت از طريق وب
• استفاده از روتينگ ايستا
• غيرفعال كردن سرويس های استفاده نشده نظير bootps و Finger
• استفاده از از رمزهای عبور قدرتمند
• لاگ كردن فعاليت ها به منظور تشخيص و بررسی ادواری ترافيك غيرطبيعی
• مشاهده و كنترل ping بسته های اطلاعاتی با ظرفيت بالا
• غير فعال كردن بسته های اطللاعاتی RIP ( برگرفته از Routing Information Protocol ) در صورت استفاده بر روی روتر مرزی
گروه مبتكران پاسارگاد

براي اطلاعات بيشتر به سايت mpce.ir مراجعه نماييد.
 
بالا