حمله نرم افزارهاي كد باز

بهروز مهدوي

کد خبر: ۱۶۶۵۲

تاریخ: ۰۷ شهريور ۱۳۸۷ - ۱۱:۱۲

امروز و بعد از گذشت چندين و چند سال از ورود مبحث IT در ايران هنوز که هنوز است خدمات الکترونيکي شايسته‌اي از طريق وب سايت‌هاي دولتي قابل ارائه به مخاطبان نيستند، چرا که در بيشتر سايت‌هاي دولتي از خدمات الکترونيک تنها در حد تعريف و يا چند لينک بسيار معمولي به چند فرم عادي چيز ديگري پيدا نميکنيد و در اين ميان خبر روزانه هک شدن سايت‌هاي دولتي به موضوعي طبيعي تبديل شده که خود نيز مانعي بزرگ در ابتداي ورود به مباحث خدمات الکترونيکي است!

شايد بعضي به اين سخن خرده بگيرند اما با بررسي دو وب سايت معروف و جنجالي شهرهاي الکترونيک ايران يعني کيش و مشهد اگر دستي در آتش داشته باشيد حتما شما نيز به همين نتيجه ميرسيد.

اين مقاله قصد بررسي اين دو طرح شکست خورده را ندارد بلکه بيشتر مصمم است توجه دولمترادان را به آفتي جلب کند که جديدا مانند خوره‌اي به جان بسياري از نهادهاي دولتي و شرکت‌هاي خصوصي افتاده و با پيروي از هم نسبت به راه اندازي پورتال‌هايي با استفاده از نرم‌افزارهاي کدباز (Opensource) اقدام كرده اند.

نرم‌افزار كد باز چيست؟
به زبان ساده براي عموم نرم‌افزار هاي كد باز نرم‌افزارهايي هستند كه هر شخصي به تمامي كدهاي برنامه ، ساختار بانكهاي اطلاعاتي، معماري نرم‌افزاري و مسائل امنيتي آن دسترسي كامل داشته و مي‌تواند به راحتي آن نرم‌افزار را از اينترنت دانلود كند. در حقيقت اين نوع نرم‌افزارها حاصل همين دانلودها و ويرايش‌ها و تبديل‌ها از سراسر جهان و توسط هزاران برنامه نويس با سلايق و ديدهاي متفاوت است .يکي از علل كد باز شدن يك نرم‌افزار توسعه و بهينه‌سازي و گرفتن اشكالات و ايرادات آن و همچنين همکاري برنامه‌نويسان در يک پروژه است يعني در حقيقت حاصل نوعي کار گروهي بوده و چه بسا داراي حفره‌هاي امنيتي بسيار زياد و خطرناکي نيز باشد كه براي عموم استفاده كنندگان و يا ويرايشگران آن قابل مشاهده است. به همين دليل است كه اين گونه نرم‌افزارها به سرعت نسخه هاي جديدي ارائه مي‌دهند که معمولا بر طرف کننده حفره‌هاي امنيتي هستند

از طرفي استفاده بهينه و حرفه‌اي از اين نوع نرم‌افزارها کار مشکل و تخصصي بوده و از توان هر کارشناس عادي بر نمي‌ايد و اينگونه است که در اين ميان برخي از سايت‌هاي استفاده کننده از اين نوع کد‌ها بسيار زيبا و حرفه‌اي به نظر ميرسند ( Tehran.ir Dotnetnuke) و برخي واقعا اسفناک! (fa.nr-khr.ir dotnetnuke)

استفاده از نرم‌افزارهاي کد باز در سايت‌هاي دولتي
شايد استفاده از نرم‌افزارهاي کدباز براي سايت‌هايي که برنامه توسعه نداشته و اقدام به ارائه سرويسهاي معمولي مانند دانلود، خبر، اطلاع رساني و... به بازديدکنندگان خود مي‌نمايند و يا براي آگاهي برنامه‌نويسان از متدها و روشهاي روز برنامه‌نويسي مي‌تواند مفيد تلقي شود اما آيا نوع نرم‌افزارها مناسب نهادهاي دولتي و سايت‌هاي اداري نيز هستند؟

البته بهتر است اين موضوع را نيز در نظر بگيريد که بسياري از ادارت دولتي خريدار اين نوع نرم‌افزارها حتي نمي‌دانند که دارند يک نرم‌افزار کد باز رايگان را خريداري مي‌کنند و با ترفندهاي عجيب و غريب برخي شرکتهاي خصوصي مانند نام گذاري بر روي پرتال كد باز، قدري دستکاري در سورس و تغيير رد پاها و ادعاي کاملا بومي بودن آن و طراحي شده در شرکت خصوصي نسبت به فروش اين نوع پورتالها به ادارت دولتي اقدام مينمايند و بعضا با ارقام گزافي سايت‌هايي که تنها زحمت ترجمه فايلهاي زبان آنرا متحممل شده اند و شايد نهايتا اقدام به طراحي يک قالب گرافيکي براي آن نموده اند را به قيمت يک نرم‌افزار طراحي شده داخلي و بسا گرانتر از آن به مشتري عرضه مي‌کنند.
اين کار چه از لحاظ قانوني و چه از لحاظ شرعي مطمئنا داراي مشکل است اما در اين نوشته به بررسي ساير مشکلات ناشي از اين پديده مي‌پردازيم:

از بين رفتن فرصتهاي شغلي براي متخصصين داخلي:
اولين ترکش اين موضوع به سمت جمع کثيري از برنامه‌نويسان و فارغ‌التحصيلان داخلي روانه مي‌شود

شايد برنامه‌نويسان در ابتدا از اينکه بدون زحمت يک نرم‌افزار کد باز را ترجمه و نصب مي‌کنند خوشحال باشند اما در حقيقت و به طور غير مستقيم ضرر اصلي اين موضوع متوجه خود برنامه‌نويسان داخلي مي‌شود.

با معمول شدن استفاده از اينگونه نرم‌افزارها به علت پيچيدگي ساختاري اين نوع برنامه‌ها و عدم امكان به‌روزرساني نرم‌افزار در صورت اعمال تغييرات زياد، شركت‌ها تمايلي به توسعه خدمات و کدنويسي‌هاي جديد ندارند و طبعا نياز به يک برنامه‌نويس يا تجزيه‌گر سيستم در شرکت احساس نمي‌شود، حتي اگر برنامه‌نويساني باشند که در اين سيستم‌ها باقي بمانند به تدريج قدرت نوآوري و خلاقيتشان را از دست مي‌دهند. فروشندگان اين نوع نرم‌افزارها نيز با استخدام نيروهاي غير حرفه‌اي ( براي پرداخت حقوق کمتر و رهايي از بيمه ) کار خود را که تنها طراحي چند قالب گرافيکي براي پورتال است پيش ميبرند و به تدريج کد نويسي و توسعه در اين شرکت‌ها و به تبع آن مشتريان آنها فراموش شده و باعث کساد شدن بازارمتخصصان واقعي it در کشور مي‌شود.

متاسفانه برخي مدعي هستند كه عدم حضور متخصصين IT داخلي مهمترين عامل روآوري به اين نوع برنامه‌هاست، اگر به فرض محال اين موضوع صحت داشته باشد، مطمئنا راه حل آن ناديده گرفتن پتانسيل نيروهاي جوان داخل كشور نيست.

برخي از اساتيد دانشگاه نيز به جاي تشويق دانشحويان به توليد نرم‌افزار داخلي آنها را در حد ترجمه يك نرم‌افزار كد بازي خارجي محدود و همين را به عنوان پروژه پايان ترم از دانشجو مي‌پذيرند.

به‌روز نبودن نرم‌افزار و باگهاي امنيتي:

همواره يكي از مهمترين ادعاهاي مخالفين استفاده از برنامه هاي رايگان كدباز بالا بودن احتمال هك شدن سايتها به علت دسترسي عموم به كد برنامه است. در اين ميان معمولا خريداران دولتي خبر از كد باز بودن نرم‌افزار خود نداشته و مطمئنا به دنبال بروز رساني نرم‌افزار و نصب نسخه هاي جديد آن كه براي مسائل امنيتي ارائه ميشود نيستند و سايت آماده هك و نفوذ مي‌شود و اينگونه است كه هر ساله شاهد هك شدن ده‌ها سايت دولتي نيز مي‌باشيم.

بررسي بر روي يازده نرم‌افزار محبوب اوپن‌سورس اين گمان را بوجود آورد که سازمان‌ها و شرکت‌ها ريسک امنيتي استفاده از اين برنامه‌ها را دست کم گرفته‌اند.

شرکت امنيتي Fortify با مطالعه بر روي نرم‌افزارهايي همچون JBoss و OpenCMS مشکلات امنيتي متعددي را مشاهده نمودند که عمدتاً بخاطر اشتباهات برنامه‌نويسان اوپن‌سورس ايجاد گرديده‌اند.
در بخشي از اين گزارش آمده است: «توجه به نکات امنيتي در پروسه‌هاي برنامه‌نويسي اوپن‌سورس از اولويت پائيني برخوردار است.»

«با وجود اين که برنامه‌هاي اوپن‌سورس در مورد توانايي‌هاي بالقوه خود براي رفع نيازهاي سازماني تبليغات زيادي را انجام مي‌دهند اما تعداد اندکي از آنها به نيازهاي امنيتي سازمان‌ها توجه لازم و کافي را مي‌نمايند.»

از بين رفتن قدرت تجزيه تحليل و خلاقيت:
شرکتهاي فروشنده اين نوع پرتال‌ها ترجيح مي‌دهد طوري قرار داد را تنظيم کند که تنها با استفاده از ماژولهاي موجود در آن (مانند خبر، مقاله، آلبوم تصاوير، جداول اطلاعاتي و...) بتوان سايت را راه اندازي كرد. در اين بين فاز اصلي پروژه‌هايIT كه شناخت نيازها و تجزيه و تحليل عملي و علمي براي خدمات رساني به مخاطبان آن سازمان است در گير و دار انعقاد يك قرار داد تك بعدي و يك نرم‌افزار از پيش تعيين شده فراموش مي‌شودو هيچ راهكاري براي ورود به مباحث خدمات الكترونيكي در اين نوع سيستم‌ها ديده نمي‌شود.

ايجاد تغييرات و خصوصي سازي در چينين نرم‌افزارهاي کد بازي بسيار پيچيده تر و زمان برتر از طراحي يک سايت اختصاصي براي يک اداره و يا نهاد دولتي است و به همين دليل است كه معمولا شركتهاي ارائه دهنده چنين نرم‌افزار هايي به هيچ وجه پيشنهادي براي توسعه و يا پيشرفت خدمات سايت ندارند و بعد از نصب اين نرم‌افزار، ارتقاء آن به فراموشي سپرده ميشود.

اگر بخواهيم گشت و گذاري هر چند کوتاه به دنبال چينين سايت‌هايي بزنيم شايد بيشترين موارد استفاده را بتوان از نرم افزارهاي كد بازي مانند پورتال rainbow به آدرس اينترنتي http://rainbowportal.net/ پرتال dotnetnuke به آدرس اينترنتي  http://www.dotnetnuke.com/ و يا نسخه فارسي آن در irandnn.ir و همچنين پورتال كد باز mojoportal به آدرس اينترنتي http://www.mojoportal.com/ نام برد که به طرز فراگيري در بسياري از سايت‌هاي دولتي به چشم ميخورند براي ديدن نمونه‌هايي مي‌توانيد به سايت شهرداري تهران ـ سايت شبکه رشد ـ سايت جزيره کيش ـ استانداري خراسان رضوي ـ دامپزشكي خراسان رضوي ـ كانون پرورش كودكان و نوجوانان و صدها نمونه ديگر كه متاسفانه با حمايت نهادهاي دولتي به طور فراگيري در حال رشد هستند مراجعه کنيد.

راهکار:
نويسنده معتقد است استفاده از اين نوع سيستمها را نميتوان کلا نفي کرد و در بعضي موارد استفاده از اين نوع نرم‌افزارها براي برخي سايت‌ها ( با چشم پوشي از مسائل امنيتي ) به صرفه است.

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

علاوه بر اين موارد و در صورت اصرار بر استفاده از اين نوع سيستم‌ها چرا نبايد پايه و اساس يك نرم‌افزار داخلي opensource چيده شود، اما در پايان شايد بتوان با دعوت از نهادهاي نظارتي براي كنترل اينگونه قراردادها قدري اين بازار پرهياهو را آرام کرد تا حداقل شبهه مغبون شدن خريداران دولتي و ضايع شدن حقوق شهروندان در اين ميان برداشته شود.

منبع: سايت آي‌تي ايران