🚀 Идем на ежегодный Cloud Security TechSpot в Варшаве
Support us

«Спасите C++»: отец языка программирования просит помощи у сообщества

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

9 комментариев
«Спасите C++»: отец языка программирования просит помощи у сообщества

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

C и C++ требуют ручного управления памятью, что делает их уязвимыми к ошибкам, таким как выход за границы массива или утечки памяти. Эти проблемы составляют основную часть уязвимостей в крупных кодовых базах. Поэтому ведущие мировые организации всё чаще выбирают языки с лучшей защитой памяти — Rust, Go, C, Java, Swift и Python.

Сообщество C/C++ отреагировало серией инициатив, направленных на повышение безопасности, включая проекты TrapC, FilC, Mini-C и Safe C++. Однако, по мнению Страуструпа, проблема не только в медленном прогрессе, но и в отсутствии чёткого публичного нарратива, который мог бы конкурировать с растущей популярностью Rust. В обращении к комитету по стандартам C++ (WG21) он призвал принять срочные меры и предложил использовать свой фреймворк Profiles для улучшения безопасности.

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

Одной из причин обеспокоенности стало требование Агентства по кибербезопасности и инфраструктуре США (CISA), согласно которому к 2026 году производители должны либо устранить все уязвимости, связанные с управлением памятью, либо полностью перейти на безопасные языки. Страуструп называет это серьёзной угрозой для будущего C++.

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

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

Тем временем Google и другие техногиганты всё активнее выступают за переход на языки с полной защитой памяти, что создаёт дополнительное давление на сообщество C++. Вопрос в том, успеет ли оно предложить спасительное решение до 2026 года.

Власти США требуют от разработчиков отказаться от C/C++ к 2026 году
Власти США требуют от разработчиков отказаться от C/C++ к 2026 году
По теме
Власти США требуют от разработчиков отказаться от C/C++ к 2026 году
Белый дом призвал разработчиков переходить на ЯП обеспечивающие безопасную работу с памятью
Белый дом призвал разработчиков переходить на ЯП, обеспечивающие безопасную работу с памятью
По теме
Белый дом призвал разработчиков переходить на ЯП, обеспечивающие безопасную работу с памятью
Создатель С++ ответил на критику американских властей
Создатель С++ ответил на критику американских властей
По теме
Создатель С++ ответил на критику американских властей
Появился новый диалект в котором решается главная «болячка» С и С++
Появился новый диалект, в котором решается главная «болячка» С и С++
По теме
Появился новый диалект, в котором решается главная «болячка» С и С++
Читайте также
JetBrains: каждому шестому разработчику ИИ экономит минимум день в неделю
JetBrains: каждому шестому разработчику ИИ экономит минимум день в неделю
JetBrains: каждому шестому разработчику ИИ экономит минимум день в неделю
1 комментарий
IEEE: из-за ИИ стало невозможно отслеживать популярность языков, их будущее под вопросом
IEEE: из-за ИИ стало невозможно отслеживать популярность языков, их будущее под вопросом
IEEE: из-за ИИ стало невозможно отслеживать популярность языков, их будущее под вопросом
В TIOBE взлетел ещё один немолодой язык программирования
В TIOBE взлетел ещё один немолодой язык программирования
В TIOBE взлетел ещё один немолодой язык программирования
Microsoft призвала писать код на любимом языке хакеров ради безопасности
Microsoft призвала писать код на любимом языке хакеров ради безопасности
Microsoft призвала писать код на любимом языке хакеров ради безопасности
1 комментарий

Хотите сообщить важную новость? Пишите в Telegram-бот

Главные события и полезные ссылки в нашем Telegram-канале

Обсуждение
Комментируйте без ограничений

Релоцировались? Теперь вы можете комментировать без верификации аккаунта.

0

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

-1

выбирают языки с лучшей защитой памяти — Rust, Go, C, Java, Swift и Python

C? C# может?

2

"C и C++ требуют ручного управления памятью, что делает их уязвимыми к ошибкам"... и далее по тексту "Поэтому ведущие мировые организации всё чаще выбирают языки с лучшей защитой памяти — Rust, Go, C, Java, Swift и Python.", автор явно любит С, он вроде безопасный и вроде нет, язык Шредингера :)

Anonymous
Anonymous
1

Fil-C компилятор упоминаемый в статье, но дополнительные проверки выхода за границы массива сказываются на производительности. 5%. Apple использует схожее решение для C и теже 5%

"Rust, Go, Swift" спорно, но эти "C#, Java, Python, and JavaScript." медленнее и прожорливее C/C++ так что падение в 5% не критично

Richard James
Richard James тунеядец в опале
4

C и C++ требуют ручного управления памятью, что делает их уязвимыми к ошибкам, таким как выход за границы массива или утечки памяти.

настоящий профессионал может выйти за границы массива на любом языке

гр. О.  Бендер
гр. О. Бендер Капитан в свободном плавании
3

Настояший профессионал ДОЛЖЕН уметь выходить за границы

0

Ну так на С/С++ и вправду дофига чего написано. Те же Java, Python и др. дополняются через C/C++ в большей степени. Но тут "рыночек" решает. А "рыночком" управляют техногиганты, а девы как правило идут на зарплату в эти самые гиганты. И им похр, лишь бы платили Хотя я думаю это просто раньше времени хай подняли чтобы не получилось такой жпы как с стековерфлоу и AI сейчас...

Пользователь отредактировал комментарий 4 марта 2025, 20:42

0

Какой же Бьёрн Страуструп болтун! Когда Страуструп заявляет, что "обеспечение безопасности памяти всегда было одной из ключевых задач C++" это он просто примазывается к повестке. Ключевой задачей C++ была производительность и только. По моему мнению, не надо в C++ добавлять безопасность, тогда это будет уже не C++.

0

C++ убивает метание туда сюда со стандартами, которыми как из гладкоствольного ружья дробинами метается комитет.

Основной запрос бизнеса - скорость разработки.
Ресурсы, массивы, выходы и уж тем более утечки памяти, которые значимый эффект дают только для сервисов - бизнесменам фиолетово.