Агентство по кибербезопасности и защите инфраструктуры США (CISA) в партнерстве с ФБР, Австралийскими ASD и ACSC, Канадским центром кибербезопасности выпустили руководство Exploring Memory Safety in Critical Open Source Projects.
Новое совместное руководство сообщает, что 52% проанализированных критических проектов с открытым исходным кодом содержат код, написанный на языках, требующих ручного управления памятью. В этих проектах более 55% от общего числа строк написаны на языках Это увеличивает риск ошибок, которые могут привести к уязвимостям безопасности.
Среди самых крупных и популярных проектов код, небезопасный для памяти в среднем составляет 62,5% от общего количества строк, а в четырех проектах использование таких языков превышает 94%.
В отчете также сказано, что проекты, написанные на языках, безопасных для памяти, часто полагаются на компоненты, написанные на языках, небезопасных для памяти. Например, могут включать модули, написанные на небезопасных языках для таких функций, как криптография и системные интерфейсы, что заставляет их наследовать потенциальные уязвимости.
Руководство предупреждает о срочной необходимости для вендоров внедрять методы программирования, обеспечивающие безопасность памяти.
В руководстве отмечается, что существует острая необходимость в переходе к языкам программирования, безопасным для памяти, которые управляют распределением и использованием памяти на уровне компилятора, например, Rust, чтобы значительно сократить возможности человеческой ошибки. Компаниям и другим пользователям открытого исходного кода, подверженным небезопасному для памяти коду, рекомендуется перевести существующие проекты и инициировать новые проекты с безопасными для памяти языками для повышения безопасности программного обеспечения.
CISA и соавторы также призывают к продолжению исследований и совместных усилий для лучшего понимания и снижения рисков, связанных с безопасностью памяти.
Нажимая на кнопку, я даю Согласие на обработку персональных данных в соответствии с Политикой обработки.