کدام یک از زبان های برنامه نویسی بیشترین تعداد اسیب پذیری را دارد؟
کدام یک از زبان های برنامه نویسی بیشترین تعداد اسیب پذیری را دارد؟
دنیای تکنولوژی بدون نقص های امنیتی معنا ندارد؛ از حفره های سخت افزاری مانند ملتداون و اسپکتر در پردازنده های اینتل گرفته تا ایرادات نرم افزاری در زبان های برنامه نویسی. به تازگی شرکت امنیتی «وایت سورس» آسیب پذیری های موجود در 7 زبان برنامه نویسی پرکاربرد طی ده سال اخیر را بررسی کرده و نتایج جالبی را به دست آورده است.
طبق گزارش وایت سورس، زبان های برنامه نویسی C، جاوا، جاوا اسکریپت، پایتون، روبی، پی اچ پی و ++C در فهرست بیشترین آسیب پذیری قرار می گیرند. زبان C حدود نیمی از گزارش های امنیتی را به خود اختصاص داده و در صدر جدول قرار گرفته است.
با وجود این همه اسیب پذیری باز نمیتوان زبان c امنیت کمتری دارد چرا
که اسیب پذیری این زبان به چند عامل وابسته است :
1 . از جمله اینکه قدمت بسیار بیشتری نسبت به بقیه دارد و کدهای فوق العاده زیادی با آن نوشته شده است. زیرسا
2 . بعضی از مشکلات هم ذاتی هستند. یکی از مسائل اساسی زبان C رفتار نامشخص و تعریف نشده در شرایط مختلف است که می تواند آسیب پذیری های متعددی را ایجاد کند. 3 . از طرفی زبان ++C طی 5 سال گذشته با بحرانی ترین آسیب پذیری ها روبرو بوده است. خطاهای بافر که مدتها برنامه نویسان C را آزار می دادند، حالا در ++C خودنمایی می کنند.خت های نرم افزاری متعددی مانند OpenSSL و کرنل لینوکس هم از زبان C بهره می برند.
جاوا اسکریپت که احتمالاً محبوب ترین زبان برنامه نویسی عصر حاضر به شمار می رود، تنها موردیست که طی 10 سال اخیر با افزایش مداوم تعداد آسیب پذیری ها روبرو بوده است. البته بیشتر معضلات امنیتی جاوا اسکریپت از نوع Path Traversal بوده یا مربوط به پکیج های ثالث هستند و فقط توسط ابزارهای آنالیز کد منبع شناسایی می شوند.
زبان پایتون عملکرد بسیار خوبی از نظر امنیت دارد.
دو نقص امنیتی که در 70 درصد زبان ها دیده می شوند، عبارتند از CWE-79 یا «تزریق اسکریپت از طریق وبگاه» و CWE-20 که به اعتبارسنجی داده ها مربوط است.
با این حال بهتر است که تمام برنامه نویسان، زمان کافی را به مطالعه آسیب پذیری های زبان مورد استفاده خود اختصاص دهند و نقاط قوت و ضعف آن را به خوبی بدانند، تا بتوانند در زمان طراحی و توسعه نرم افزار تصمیمات درستی را از نظر امنیتی اتخاذ کنند. در واقع نقش برنامه نویس از زبان برنامه نویسی مهم تر است.
نوشته شده توسط: نیوسافت
1012 بازدید