Сегодня 02 июня 2025
18+
MWC 2018 2018 Computex IFA 2018
реклама
Теги → c++

Белый дом рекомендовал отказаться от 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 призывает к сознательному выбору языков программирования с учётом их способности обеспечивать безопасное управление памятью. Это не только техническое руководство для разработчиков, но и стратегическое направление для организаций, занимающихся разработкой критически важного ПО. Переход на использование языков программирования, гарантирующих безопасность памяти, может существенно снизить риск возникновения уязвимостей, повысить надёжность и безопасность цифровой инфраструктуры.


window-new
Soft
Hard
Тренды 🔥
Valorant получит долгожданный просмотр сыгранных матчей и переедет на Unreal Engine 5 до конца 2025 года 9 ч.
На долю взлома аккаунтов на «Госуслугах» приходится 90 % от общего числа преступлений с неправомерным доступом к данным 01-06 07:04
Старые устройства Apple получают обновления безопасности спустя годы, вопреки официальным срокам поддержки 01-06 06:14
Новая статья: RoadCraft — восстановление разрушенного. Рецензия 01-06 00:08
Новая статья: Gamesblender № 728: SteamOS против Windows, анонсы Warhammer Skulls и вторая жизнь WRC 31-05 23:35
В Twitch появятся перемотка, вертикальные трансляции и не только 31-05 15:25
Суд склоняется к мягким мерам по устранению монополии Google в онлайн-поиске, но окончательное решение придётся подождать 31-05 13:35
Google запустила ИИ-генератор видео Veo 3 для мобильных устройств на Android и iOS 31-05 08:11
Microsoft добавила в «Блокнот» возможности форматирования текста почти как в Word 31-05 07:06
OpenAI хочет, чтобы ChatGPT стал личным секретарём для каждого 31-05 07:03
Nintendo решила дать японским продавцам заработать на Switch 2 больше обычного 20 мин.
Новая статья: Сравнительный тест камер флагманских смартфонов (2025): Apple iPhone 16 Pro Max, HONOR Magic 7 Pro, HUAWEI Mate 70 Pro, Samsung Galaxy S25 Ultra, vivo X200 Pro, Xiaomi 15 Ultra 7 ч.
Новая статья: Тест-драйв российского электромобиля «Атом»: гибрид «Оки» и Tesla 8 ч.
Трамп отозвал кандидатуру Джареда Айзекмана на пост главы NASA — в этом замешан Илон Маск 15 ч.
SpaceX вывела на орбиту очередную партию спутников Starlink и снова посадила первую ступень носителя 24 ч.
Intel и SoftBank намерены разработать более экономичную альтернативу памяти HBM 01-06 07:48
В Huawei случайно «засветили» новый флагман Pura 80 Ultra до анонса 01-06 06:10
Петабайтные E2 SSD готовы со временем потеснить HDD в ЦОД 01-06 02:06
Intel представила EMIB-T — технологию упаковки многокристальных чипов с поддержкой HBM4 и UCIe 01-06 01:48
Sharp представила прочный флагманский смартфон Aquos R10 с 240-Гц экраном и более доступный Wish 5 31-05 18:35