آژانس امنیت ملی ایالات متحده آمریکا NSA به تازگی شرکتها را به جای استفاده از زبان های برنامه نویسی C و ++C تشویق به استفاده از زبانهایی که امنیت حافظه(Memory safe) بهتری مانند C# ،Rust ،Go ،Java، Ruby و سوئیفت ارائه میدهند کرده است. این آژانس توصیه میکند که شرکتها در صورت امکان از زبانهایی که از قابلیتهای ایمنی حافظه پشتیبانی میکنند استفاده کنند و برای دفاع بیشتر در این زمینه توصیه استفاده از ارتقای امنیت کد نرمافزار از طریق کامپایلر و پیکربندی درست سیستم عامل کرده است.
نگرانی اصلی سازمانها در این زمینه دسترسی و سوءاستفاده مخرب مجرمان سایبری به آسیبپذیریهای حافظه مموری است و این اتفاق بیشتر در زبانهای برنامهنویسی رخ میدهد که انعطاف پذیری و گزینههای بیشتری را در خصوص مدیریت حافظه در اختیار برنامهنویس قرار میدهند.
استفاده از یک زبان برنامهنویسی امن در بخش حافظه میتواند جلوی ارائه مشکلات در این خصوص را برای توسعهدهندگان بگیرد. در بیشتر زبانهای برنامهنویسی سطح بالا عملکرد حافظه مموری به صورت خودکار توسط خود زبان برنامهنویسی مدیریت میشود و نیاز به دخالت برنامهنویس در این بخش کاهش مییابد.
استفاده از زبان Rust در 2 سال گذشته 3 برابر شده است
در همین راستا خود زبانهای برنامهنویسی با استفاده از ویژگیهای زمان کامپایل شدن و runtime checks که به بررسی فعالانه مشکلات کدهای در حال اجرا اشاره دارد مدیریت و امنیت خودکار مموری را ایجاد میکند. این ویژگیهای ذاتی زبان برنامهنویسی، برنامهنویس را از اشتباهات ناخواسته در مدیریت و برنامهنویسی حافظه مصون میدارد.
Neal Ziring مدیر فنی امنیت سایبری در NSA اظهار کرده که استفاده مداوم از زبانهای ایمن در این بخش و پیادهسازی دیگر مکانیسمهای حفاظتی هنگام توسعه نرمافزار برای از بین بردن آسیبپذیریهای مربوط به حافظه ضروری است. با این حال NSA اعتراف کرده که memory safe بودن و استفاده از زبان برنامه نویسی پشتیبانی کننده از آن چالشهای دیگر را اضافه میکند و در زمینه پرفورمنس و انعطاف پذیری نیز مشکلاتی را به وجود میآورد.
ایمن بودن حافظه با چالشهای خاص خود همراه است و سطوح شدید حفاظت ذاتی از مموری، تاثیر نامطلوبی بر کامپایل کردن کدهای نرمافزاری دارد. جابجایی و تغییر استفاده از یک زبان به زبان دیگر نیز با دشوارهای خود همراه است. به گفته شرکت تحلیلی SlashData کاربران Rust بین سالهای 2020 تا 2022 سه برابر شده و زبان Go یا Golang همچنین پرکاربرد بوده و جامعهای 3.3 میلیونی از توسعهدهندگان از آن استفاده میکنند.
جاوا اسکریپ همچنان با 17.5 میلیون توسعهدهنده همچنین یکی از محبوبترین زبانهای برنامهنویسی است. در حالی که زبانهای برنامهنویسی تقریبا در همه جا استفاده میشوند، ادعاهای NSA مبنی بر مشکلزا بودن C و ++C یک نظر عمومی و محبوب به شمار میرود.
Mark Russinovich مدیر ارشد فناوری مایکروسافت Azure در سپتامبر گذشته اظهار کرد که زمان آن رسیده که توسعه پروژههای جدید در این دو زبان را متوقف کنند. این مدیر ارشد بخش ابری مایکروسافت بیان کرد که نسبت به استفاده از زبان Rust علاقه بیشتری را نشان میدهد اما همچنین تایید کرد که هماکنون پروژههای بسیار زیادی وجود دارند که برای دههها قرار است از C و ++C استفاده کنند.
زبان جاوا مدتهاست ک بازنشسته شده. همونطور ک rust جایگزین C شده، در اکوسیستم جاوا هم زبان scala جایگزین جاوا شده.
قطعا دوزیان cوc++حتما براشون مشکله کنترلشون و ایمنی و سرعت بالاتری داره که میگن استفاده نکنید که راحتر سرشونو بکنن تو برنانمهای دیگران.. اصلا اعتمادی به nsa نیست چون سازمان نظامیه
سرعت اجرای برنامه هایی که با C یا C++ نوشته شده با هیچ برنامه ای قابل قیاس نیست …زبان های دیگه خیلی سنگین هستن …کلن زبان های سطح بالا سنگینن ….برای یه مثال میتونم تلگرام رو بگم که با C++ نوشته شده …شما همینو میتونید با چیز برنامه های دیگه مقایسه بکنید …ولی خوب نوشتن با زبان C و C++ هم خیلی سختتر هستن چون سطح پایین هستن
Rust فرمانروا جدید تکنولوژی