Сегодня 04 октября 2025
18+
MWC 2018 2018 Computex IFA 2018
реклама
Новости Software

Белый дом рекомендовал отказаться от C и C++ в пользу безопасных языков программирования

Офис национального директора по кибербезопасности (ONCD) Белого дома США призвал разработчиков отказаться от использования языков программирования C и C++ в разработке критически важного ПО. Этот совет основывается на опасениях, связанных с безопасностью управления памятью — аспекте, играющем критическую роль в предотвращении уязвимостей, таких как переполнение буфера и висячие указатели.

 Источник изображения: xusenru / Pixabay

Источник изображения: xusenru / Pixabay

Неправильное управление памятью в программном коде может привести к серьёзным уязвимостям, позволяя злоумышленникам осуществлять кибератаки. Языки программирования, такие как Java, благодаря своим механизмам обнаружения ошибок во время выполнения, считаются безопасными в отношении управления памятью. В отличие от них, C и C++ позволяют разработчикам выполнять операции с указателями и обращаться непосредственно к адресам в памяти компьютера. Это включает в себя чтение и запись данных в любом месте памяти, к которому они могут получить доступ через указатель.

Однако эти языки не проводят автоматической проверки на то, выходят ли эти операции за пределы выделенного для данных или структур пространства в памяти. Такая проверка называется «проверкой границ». Отсутствие такой проверки означает, что программист может случайно или намеренно записать данные за пределы выделенного блока памяти, что может привести к перезаписи других данных, испорченным данным или, в худшем случае, к уязвимостям безопасности, которые злоумышленники могут использовать для выполнения вредоносного кода или получения контроля над системой.

Отчёт ONCD подчёркивает, что около 70 % всех уязвимостей в системе безопасности, выявленных инженерами Microsoft в 2019 году и Google в 2020 году, были связаны именно с нарушениями безопасности памяти. Эта статистика ясно демонстрирует необходимость переосмысления подходов к разработке ПО в контексте нынешней стратегии кибербезопасности США.

В отчёте не только указывается на проблемы с C и C++, но и предлагается ряд альтернатив — языков программирования, признанных «безопасными для памяти». Среди рекомендованных Агентством национальной безопасности (NSA) языков находятся: Rust, Go, C#, Java, Swift, JavaScript и Ruby. Эти языки включают в себя механизмы, предотвращающие распространённые типы атак на память, тем самым повышая безопасность разрабатываемых систем.

 Индекс TIOBE на февраль 2024 года (источник изображения: tiobe.com)

Индекс TIOBE на февраль 2024 года (источник изображения: tiobe.com)

Анализ популярности языков программирования по версии индекса TIOBE показывает, что из предложенных NSA языков C# занимает пятое место по популярности, Java — четвёртое, JavaScript — шестое, а Go — восьмое. Эти данные указывают на то, что часть рекомендуемых языков уже имеет широкое распространение и признание в профессиональном сообществе разработчиков.

Инициатива Белого дома выходит за рамки простого перечисления рекомендаций. Она включает в себя стратегический план по укреплению кибербезопасности на национальном уровне, что отражено в исполнительном приказе президента Джо Байдена (Joe Biden) от марта 2023 года. Этот документ задаёт направление для всестороннего сотрудничества между государственным сектором, технологическими компаниями и общественностью в целях разработки и внедрения безопасного ПО и аппаратных решений.

Заключение отчёта ONCD призывает к сознательному выбору языков программирования с учётом их способности обеспечивать безопасное управление памятью. Это не только техническое руководство для разработчиков, но и стратегическое направление для организаций, занимающихся разработкой критически важного ПО. Переход на использование языков программирования, гарантирующих безопасность памяти, может существенно снизить риск возникновения уязвимостей, повысить надёжность и безопасность цифровой инфраструктуры.

Источник:

Если вы заметили ошибку — выделите ее мышью и нажмите CTRL+ENTER.
Материалы по теме

window-new
Soft
Hard
Тренды 🔥
Новая статья: Hades II — титан вне времени. Рецензия 34 мин.
«Делаем всё, чтобы каждый покупатель игры был в восторге»: амбициозная песочница с тотальными разрушениями Kingmakers не выйдет 8 октября 2 ч.
Безумный роглайк Megabonk в духе Vampire Survivors уже стал хитом Steam — миллион проданных копий за две недели 3 ч.
ИИ-браузер Comet заставили воровать письма из Gmail и другие данные — в Perplexity только отмахнулась 4 ч.
Геймерскую мышь превратили в шпионский микрофон для прослушки пользователей 4 ч.
Облачный игровой сервис Xbox Cloud Gaming скоро станет бесплатным, но есть нюанс 5 ч.
Слухи: ремейк культовой Halo: Combat Evolved создаётся на гибридном движке при участии студии в ответе за The Elder Scrolls IV: Oblivion Remastered 6 ч.
Microsoft предсказала биологические угрозы «нулевого дня» из-за ИИ 7 ч.
Обнаружена уязвимость, которая ставит под угрозу пользователей всех игр на Unity с 2017 года 8 ч.
Cloudflare обновила robots.txt: теперь сайты могут запретить ИИ-чат-ботам воровать контент 8 ч.
Google начала продавать запчасти для Pixel 10 и показала, как их ремонтировать 32 мин.
В Китае собрали крупнейший в мире плавучий ветрогенератор — его ротор охватывает площадь семи футбольных полей 4 ч.
Samsung представит гарнитуру смешанной реальности на Android XR уже в этом месяце 5 ч.
Thermal Grizzly представила эффективные термопрокладки Minus Pad extreme 2 и очень пластичные Minus Pad High Compression 5 ч.
До 2,8 МВт за 45 с: Rolls-Royce представила газовый генератор mtu 20V4000 L64 для дата-центров 7 ч.
UKPN начнёт отапливать дома британских малоимущих кластерами из сотен Raspberry Pi 8 ч.
В лучших ИИ-ускорителях Huawei нашли чипы TSMC, Samsung и SK hynix, которых в Китае быть не должно 9 ч.
Задержки поставок ИИ-чипов в ОАЭ на десятки миллиардов долларов расстраивают NVIDIA 9 ч.
Видео: электромобиль Xiaomi SU7 сам включился и попытался сбежать от хозяев 10 ч.
В MIT на порядок улучшили батарею из бетона — фундамент сможет питать дом в течение суток и дольше 10 ч.