لینوکس و نرمافزارهای منبع باز محبوبیت بیشتری کسب خواهند کرد، اما همه آن بستگی به نحوه ایمنسازی آنها خواهد داشت.
به گزارش گرداب، سیستم عامل لینوکس همه جا هست و همه فضاهای ابری حتی Microsoft Azure نیز با آن اجرا میشود. همه ۵۰۰ ابررایانهها با این سیستم عامل کار میکنند. از سوی دیگر، نرمافزار منبع باز نیز همچنان در حال رشد و توسعه است.
با توجه به پایگاههای اطلاعاتی، شرکت تحقیقاتی گارتنر پیشبینی میکند که بیش از ۷۰% از برنامههای کاربردی جدید داخلی بر روی یک پایگاه داده منبع باز توسعه داده خواهند شد. همچنین، ۵۰ درصد از نمونههای پایگاه داده به سیستمهای مدیریت پایگاه داده منبع باز تبدیل خواهند شد.
اما توانمندی و قابلیت زیاد، مسئولیتهای بزرگی نیز به همراه دارد. بسیاری از توسعهدهندگان اخیرا متوجه شدند که آسیبپذیریهای امنیتی متعدد موجود مانند log۴j۲، دردسرهایی را نیز به همراه دارد.
براساس مقیاس ملی پایگاه داده آسیبپذیری، آسیبپذیریهای log۴j۲ رتبه ۰. ۱۰ CVSSv۳ را به خود اختصاص میدهد که بسیار خطرناک است. نرمافزار منبع باز چندان خطرناک نیست، اما مشکلات امنیتی همچنان میتواند در کدنویسی وارد شود. اگر توسعهدهندگان به آن توجه زیادی نکنند، آسیبپذیریهای امنیتی مشخص نخواهند شد؛ بنابراین برای ایمنسازی همه نرمافزارها باید دقت و توجه زیادی به خرج داد.
با این اوصاف، دردسر واقعی log۴j این است که چطور جاوا در انواع مختلف آرشیو (JAR) خود از کد منبع و باینریهایش استفاده میکند. نتیجه این است که شما ممکن است در حال استفاده از یک نسخه آسیبپذیر log۴j باشید، اما تا زمانی که مشکلی پیش نیامده باشد متوجه آن نشوید.
خوشبختانه، اسکنرهای log۴j وجود دارند که میتوانند به شما کمک کنند تا آسیبپذیریهای log۴j را شناسایی کنید، اما آنها هم بدون اشکال نیستند. مشکل دیگر این است که چطور باید بدانید نرمافزار شما از چه اجزای منبع باز استفاده میکند؟ برای مثال log۴j۲ از سال ۲۰۱۴ مورد استفاده قرار گرفته است. نمیتوان انتظار داشت که همه به یاد بیاورند از چه نسخهای در برنامهای که شما در حال استفادهاید، استفاده کرده باشند.
در سالهای اخیر صورتحسابهای نرمافزاری مواد (SBOM) ایجاد شد. به کمک صورتحسابهای نرمافزاری مواد میتوان به طور دقیق مشخص کرد که از چه روتینها و کدهایی در برنامهها استفاده شده است. با استفاده از آن میتوانید بررسی کنید که چه نسخههای مؤلفهای در برنامه شما استفاده شده است.
مدیر امنیت زنجیره تأمین منبع باز بنیاد لینوکس، دیوید ویلر، میگوید که با استفاده از صورتحسابهای نرمافزاری مواد و ساختهای قابل تکرار تأیید شده میتوان مطمئن شد که چه چیزی در برنامهها استفاده شده است.
به این ترتیب، اگر یک مشکل امنیتی در یکی از مؤلفهها پیدا شد، به راحتی میتوان آن را پچ کرد.
توسعهدهندگان لینوکس همچنان در حال کار بر روی تقویت امنیت سیستم عامل با ساختن زبان دوم راستلینوکس (Rust Linux) هستند. چرا؟ زیرا برخلاف زبان C که زبان اصلی لینوکس بود، راست (Rust) بسیار امنتر است. زبان راست در مدیریت خطاهای حافظه به مراتب امنتر از C است.
توسعهدهندگان هسته لینوکس، الکس گینور و جفری توماس، در اجلاس امنیت لینوکس در سال ۲۰۱۹ اشاره کردند که تقریبا دو سوم از مشکلات امنیتی هسته لینوکس ناشی از مشکلات امنیتی حافظه است که منبع همه آنها مشکلات استفاده از C و C++ است.
در آینده خواهیم دید که چه تغییراتی ایجاد خواهند شد. اما به طور قطع میتوان گفت که در سال ۲۰۲۲، امنیت کدنویسی اولویت اصلی توسعهدهندگان لینوکس و منبع باز خواهد بود.
منبع:
ZDNet