A Casa Branca recomendou abandonar C e C++ em favor de linguagens de programação seguras

O Escritório do Diretor Nacional de Segurança Cibernética (ONCD) da Casa Branca dos EUA instou os desenvolvedores a pararem de usar as linguagens de programação C e C++ no desenvolvimento de software de missão crítica. Este conselho é baseado em preocupações com a segurança do gerenciamento de memória, um aspecto crítico para evitar vulnerabilidades como buffer overflows e ponteiros pendentes.

Fonte da imagem: xusenru/Pixabay

O gerenciamento inadequado de memória no código do programa pode levar a vulnerabilidades graves, permitindo que invasores realizem ataques cibernéticos. Linguagens de programação como Java, devido aos seus mecanismos de detecção de erros em tempo de execução, são consideradas seguras no que diz respeito ao gerenciamento de memória. Em contraste, C e C++ permitem que os desenvolvedores executem operações de ponteiro e acessem endereços diretamente na memória do computador. Isso envolve ler e escrever dados em qualquer lugar da memória que eles possam acessar por meio de um ponteiro.

No entanto, essas linguagens não verificam automaticamente se essas operações excedem o espaço de memória alocado para dados ou estruturas. Esta verificação é chamada de “verificação de limites”. A ausência de tal verificação significa que um programador pode gravar dados acidentalmente ou intencionalmente além do bloco de memória alocado, o que pode levar à substituição de outros dados, dados corrompidos ou, na pior das hipóteses, vulnerabilidades de segurança que os invasores podem explorar para executar código malicioso ou obter controle sobre o sistema.

O relatório ONCD destaca que cerca de 70% de todas as vulnerabilidades de segurança identificadas pelos engenheiros da Microsoft em 2019 e do Google em 2020 estavam relacionadas a violações de segurança de memória. Estas estatísticas demonstram claramente a necessidade de repensar as abordagens ao desenvolvimento de software no contexto da actual estratégia de segurança cibernética dos EUA.

O relatório não apenas aponta problemas com C e C++, mas também propõe uma série de alternativas – linguagens de programação reconhecidas como “seguras para memória”. As linguagens recomendadas pela Agência de Segurança Nacional (NSA) incluem Rust, Go, C#, Java, Swift, JavaScript e Ruby. Essas linguagens incluem mecanismos que evitam tipos comuns de ataques à memória, aumentando assim a segurança dos sistemas em desenvolvimento.

Índice TIOBE para fevereiro de 2024 (fonte da imagem: tiobe.com)

Uma análise da popularidade das linguagens de programação de acordo com o índice TIOBE mostra que das linguagens propostas pela NSA, C# ocupa o quinto lugar em popularidade, Java é o quarto, JavaScript é o sexto e Go é o oitavo. Esses dados indicam que algumas das linguagens recomendadas já são amplamente utilizadas e aceitas na comunidade de desenvolvedores profissionais.

A iniciativa da Casa Branca vai além da simples lista de recomendações. Inclui um plano estratégico para reforçar a segurança cibernética a nível nacional, conforme refletido na ordem executiva do presidente Joe Biden de março de 2023. Este documento define a direção para uma colaboração abrangente entre o setor público, as empresas de tecnologia e o público para desenvolver e implementar soluções seguras de software e hardware.

A conclusão do relatório ONCD pede uma seleção consciente de linguagens de programação com base na sua capacidade de gerenciar a memória com segurança. Não é apenas orientação técnica para desenvolvedores, mas também orientação estratégica para organizações que desenvolvem software de missão crítica. A mudança para linguagens de programação que garantam a segurança da memória pode reduzir significativamente o risco de vulnerabilidades e aumentar a confiabilidade e segurança da infraestrutura digital.

avalanche

Postagens recentes

A Apple atualizou o Xcode introduzindo a codificação intuitiva com agentes da OpenAI e da Anthropic AI.

A Apple continua a desenvolver a plataforma Xcode, que automatiza o processo de escrita, edição…

6 horas atrás

A “data de morte” do ChromeOS foi revelada — o Google fornecerá um período razoável de suporte para o sistema operacional em fase final de desenvolvimento.

O Google planeja descontinuar completamente seu sistema operacional ChromeOS até 2034, substituindo-o por uma nova…

7 horas atrás

A Epic Games Store está ficando mais rápida e fácil de usar.

A Epic Games planeja redesenhar completamente a arquitetura principal de seu launcher e revelar os…

7 horas atrás

A Western Digital anunciou a data de lançamento de seus HDDs de 100 TB, com os modelos de 40 a 44 TB com HAMR quase prontos.

Durante sua apresentação para investidores no Innovation Day, a Western Digital revelou seus planos. A…

7 horas atrás

The Outer Worlds 2 e Avowed não corresponderam às expectativas da Microsoft, mas isso não significa o fim para a Obsidian.

O estúdio Obsidian Entertainment, pertencente à Microsoft, lançou três projetos em 2025 — o jogo…

9 horas atrás

A Snowflake agora colaborará diretamente com a OpenAI, sem passar pela Microsoft.

A Snowflake, empresa de ciência de dados com IA baseada em nuvem, anunciou uma parceria…

14 horas atrás