Призыв Белого дома к безопасности памяти несет в себе проблемы, изменения и издержки

Призыв Белого дома к безопасности памяти несет в себе проблемы, изменения и издержки

Призыв Белого дома к безопасности памяти несет в себе проблемы, изменения и затраты. Разведка данных PlatoBlockchain. Вертикальный поиск. Ай.

КОММЕНТАРИЙ

Последняя публикация «Вернемся к строительным блокам: Путь к безопасному и измеримому программному обеспечению» Управления Национального кибер-директора Белого дома (ONCD) предоставляет дополнительную информацию и стратегическое направление, поддерживающее Национальная стратегия кибербезопасности выпущена в марте 2023 года. Стратегия предполагает переложить гораздо большую долю ответственности за кибербезопасность на поставщиков программного обеспечения, поставщиков услуг и других организаций, разрабатывающих программные приложения. Этот последний отчет предлагает более конкретное направление, подчеркивая агрессивный переход к безопасные для памяти языки программирования с практиками разработки программного обеспечения.

Императив безопасности памяти

Традиционные языки программирования часто являются слабым звеном в разработке программного обеспечения, а уязвимости безопасности памяти приводят к серьезным инцидентам. Несмотря на всесторонние проверки кода и другие меры безопасности, эти уязвимости сохраняются, на их долю приходится до 70% проблем безопасности на этих языках. Переход к языкам программирования, безопасным для памяти, согласно дорожной карте Агентства по кибербезопасности и безопасности инфраструктуры (CISA), является важным шагом на пути к разработке программного обеспечения, безопасного по своей конструкции.

Одной из самых сложных задач в этом стратегическом сдвиге является решение проблем устаревших систем, разработанных на C и C++. Эти устаревшие системы не только многочисленны, но и зачастую имеют решающее значение для деятельности многих организаций. Переписание этих систем на современные, безопасные для памяти языки может оказаться дорогостоящим и сложным, что приведет к простою критически важных бизнес-процессов.

Более того, уязвимости безопасности памяти в основном наблюдаются на уровне операционной системы, затрагивая такие важные платформы, как Microsoft и Linux. Такая категоризация проблем на уровне выполнения, а не на уровне приложений, подчеркивает более широкую проблему в кибербезопасности: стремление к передовым мерам безопасности должно быть сбалансировано с практическими аспектами и затратами на реализацию этих изменений, особенно для устоявшихся систем.

Экономические и технические соображения

Многие организации сталкиваются с огромными затратами, связанными с капитальным ремонтом старых систем. Изменение протоколов кодирования — это не только техническое решение, но и стратегическое для обеспечения безопасности цифровой инфраструктуры будущего. В результате лица, принимающие решения, рассматривающие вопрос о том, когда осуществить переход, должны оценить непосредственные финансовые и операционные последствия по сравнению с долгосрочными выгодами.

К счастью, уже разработаны технологические инновации, которые могут снизить стоимость и количество сбоев при переходе на более безопасный код. Например, инструменты анализа кода могут анализировать устаревшие приложения и полуавтономно выявлять случаи, когда код C или Python выполняется без надлежащей изоляции. А благодаря недавним достижениям в технологии компиляторов, даже самые небезопасные методы кодирования могут быть защищены, если они написаны на более старом языке. Эти разработки должны значительно уменьшить препятствия на пути внедрения безопасных методов кодирования для организаций любого размера.

Совместные усилия на пути к безопасному будущему

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

Несколько лидеров отрасли уже вложили значительные средства в языки, безопасные для памяти. Примеры включают в себя: 

  • Язык программирования Mozilla Rust: Делая упор на безопасность памяти, Rust предлагает надежную альтернативу традиционным языкам программирования, сочетающую безопасность и производительность.

  • Инвестиции Microsoft в Rust: Признавая, что старые языки имеют ограничения, Microsoft приняла Rust и использовала его в нескольких новых проектах, где безопасность памяти вызывала беспокойство.

  • Меры Google по обеспечению безопасности памяти: Google вложил значительные ресурсы в поиск и устранение уязвимостей безопасности памяти и призвал к использованию языков, безопасных для памяти, в новых разработках. На прошлой неделе Google опубликовал новый исследовательский отчет «Безопасность по дизайну: взгляд Google на безопасность памяти», в котором пропагандируется стратегия безопасности по дизайну. В отчете основное внимание уделяется внедрению языков с надежными функциями безопасности памяти и признаются ограничения развития C++ для соответствия этим стандартам.

Движение вперед: практические шаги по выполнению рекомендаций ONCD

Путь, указанный в последнем отчете ONCD, сложен, но богат возможностями. Это требует практических шагов от всех участников экосистем разработки программного обеспечения и кибербезопасности, в том числе:

  • Образование и обучение: Организации должны взять на себя обязательство обучать свои команды языкам, безопасным для памяти, и безопасным методам разработки, гарантируя, что разработчики смогут внести необходимые изменения.

  • Планы постепенного перехода: Организациям следует разработать планы по переходу устаревших систем на безопасные для памяти и управляемые языки. Им следует в первую очередь заняться наиболее важными областями и постепенно поэтапно реализовывать проект, чтобы свести к минимуму сбои в работе.

  • Использование инструментов автоматизации: Организациям следует использовать современные инструменты и компиляторы анализа кода, которые автоматически находят и исправляют небезопасные кодовые практики, одновременно снижая нагрузку на ручные процессы.

  • Политика и управление: Организации должны разработать явные конструкции управления, которые учитывают безопасность памяти и методы безопасной разработки на протяжении всего жизненного цикла разработки программного обеспечения.

  • Сообщество и сотрудничество: Важно отметить, что организации должны выходить за пределы своих стен и более широкого технологического сообщества на форумах, в партнерствах и проектах с открытым исходным кодом, чтобы делиться знаниями, проблемами и решениями в области безопасности памяти, которые возникают на этом пути.

Улучшение безопасность в приложениях которые стимулируют цифровую экономику, — это благородное и сложное, но необходимое мероприятие, требующее постоянного сотрудничества между государственным и частным секторами. Последний отчет ONCD является следующим шагом в формулировании стратегии; однако для реализации этого видения необходимо больше воли. Переход на безопасные для памяти языки программирования для новых приложений и обновление устаревшего кода представляют собой огромные проблемы. Тем не менее, прогресс достигается благодаря недавним достижениям в области анализа программного обеспечения и технологиям компиляторов, а также обязательствам, продемонстрированным многими мировыми технологическими лидерами.

Отметка времени:

Больше от Темное чтение