Откажитесь от C++ и доверяйте Rust, призывают шпионы Five Eyes

Американское агентство по кибербезопасности и инфраструктурной безопасности (CISA), входящее в состав Министерства внутренней безопасности США, настоятельно рекомендует руководителям в области бизнеса и технологий сосредоточиться на безопасности памяти при разработке программного обеспечения. Агентство опубликовало доклад “Защита памяти: Путь вперёд”, в котором подчёркивается, что ошибки безопасности памяти часто приводят к серьёзным последствиям и необходимо искоренять их.

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

CISA совместно с Агентством национальной безопасности (NSA), ФБР и кибербезопасными властями Австралии, Канады, Великобритании и Новой Зеландии призывает к лучшему соблюдению рекомендаций по обеспечению безопасности на этапе проектирования, поддержанных всеми этими организациями.

Агентство призывает производителей программного обеспечения уделять внимание безопасности памяти, разрабатывая и публикуя дорожные карты по устранению таких уязвимостей в своих продуктах. Цель такой публичной декларации – демонстрация клиентам ответственности за вопросы безопасности.

Проблема безопасности памяти привлекла широкое внимание, в том числе со стороны Consumer Reports , указывая на осведомлённость общественности. Например, Microsoft признала, что около 70% её уязвимостей связаны с ошибками безопасности памяти, а Google подтвердила аналогичную статистику для проекта Chromium.

CISA советует разработчикам использовать такие языки программирования, как C#, Go, Java, Python, Rust и Swift, которые обеспечивают безопасность памяти.

Бьярне Страуструп, создатель C++, защищает свой язык, утверждая, что совместимый с ISO C++ может обеспечить безопасность типов и памяти при использовании соответствующих инструментов. Однако это не умаляет интереса к Rust и другим безопасным языкам.

CISA приходит к выводу, что наиболее перспективный путь к искоренению уязвимостей безопасности памяти – это стандартизация на безопасных языках программирования и миграция критически важных компонентов программного обеспечения на эти языки.

Public Release.