حدود نیمی از پنجاه اپلیکیشن برتر و معروف اندروید هم اشکالاتی دارند. استفاده دوباره و چند باره از کد هایی که قبلا استفاده شده بود دلیل اصلی این مشکلات است. محققانی که در زمنیه ی بررسی نقص امنیتی Heartbleed فعالیت داشتند به این نتایج رسیدند.

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

با بازیافت کد درصد خطا را کمتر کنید

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

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

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

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

جامعه IT به سرعت گرد هم آمدند. جایگزینی کدها باید در 25 اشکال مختلف مثل واتس اپ اعمال می شد.

رسیدن به مصالحه

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

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

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

برنامه نویس اپ استور می گوید : اپلیکیشن هایی که بالای لیست قرار می گیرند معمولا آن هایی هستند که بیشترین تعداد دانلود را دارند. بدون در نظر گرفتن کیفیت یا استفاده طولانی مدت کاربران. تنها تمرکز برنامه نویسان تنها همین مورد است. کیفیت، پایداری بهینه سازی و به روز رسانی به موفقیت در اپ استور هیچ ارتباطی ندارند.

اگر بخواهیم فرض کنیم برنامه نویسان نیت مثبتی برای فعالیت هایشان دارند بهتر است مجموعه های کد را کوچک و سبک بسازیم. این موضوع که هرچه بیشتر کدنویسی کنید باگ بیشتری خواهید داشت اجتناب ناپذیر است. پیشنهاد می شود بیشتر برنامه نویس ها به جای استفاده از کد های تکراری و خسته کننده ی گوگل از OpenSSL استفاده کنند تا مجموعه ی سبک تری داشته باشند.

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

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *