Белый дом только что предостерег от использования этих популярных языков программирования.

Женщина и мужчина сидят вместе за столом и используют программу графического редактирования на компьютере.
Интел

По данным Белого дома, некоторые из любимых языков программирования разработчиков создают наибольший риск для систем, требующих максимальной безопасности.

Санкционированное правительством Управление национального кибер-директора (ONCD) недавно опубликовало отчет , в котором подробно описано, что оно рекомендует разработчикам использовать различные «языки программирования, безопасные для памяти». В этот список не включены популярные языки, такие как C и C++, которые, как считается, имеют недостатки в безопасности памяти, что делает их угрозой безопасности.

Как отмечает Tom's Hardware , безопасность памяти — это защита, встроенная в доступ к памяти, которая предотвращает ошибки и уязвимости. К таким примерам относятся проверки обнаружения ошибок во время выполнения в Java, который считается языком, безопасным для памяти. Однако C и C++ не имеют проверок безопасности и допускают прямой доступ к памяти.

Несколько компаний, в том числе Microsoft и Google, связали уязвимости безопасности с проблемами безопасности памяти в своих системах. В 2019 году Microsoft обнаружила, что около 70% уязвимостей безопасности были вызваны проблемами безопасности памяти. Google сообщил такую ​​же цифру в 2020 году в отношении ошибок в своем браузере Chromium. Примечательно, что Microsoft только недавно расширила совместимость своего собственного App Store , включив в него использование разработчиками таких языков, как C++.

Поскольку C и C++ входят в число языков программирования, не имеющих встроенных проверок безопасности, ONCD рекомендует не использовать их в крупных организациях, технологических компаниях и государственных учреждениях. Этот совет совпадает со стратегией кибербезопасности президента Джо Байдена, направленной на «защиту строительных блоков киберпространства».

Несмотря на это, ONCD не имеет утвержденного списка языков программирования и просто просит компании использовать проницательность в своем программном обеспечении, а также выбирать аппаратное обеспечение с безопасным использованием памяти, чтобы минимизировать проблемы безопасности. Наиболее близким к санкционному списку из них является список, составленный Агентством национальной безопасности (АНБ) в 2022 году. К безопасным для памяти языкам относятся:

  • Ржавчина
  • Идти
  • С#
  • Джава
  • Быстрый
  • JavaScript
  • Рубин

Tom's Hardware отмечает, что, хотя эти языки могут пройти проверку с точки зрения безопасности, многие из них не являются фаворитами разработчиков. В издании добавлено, что языки входят в топ-20, но стабильно популярны у разработчиков только четыре из них — C#, Java, Python и JavaScript.

Этот отчет является рекомендацией, а не правилом. Будет интересно посмотреть, как компании и разработчики будут с ним работать с течением времени.