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

“Eu nem imaginava que isso fosse possível”: modder assume a tarefa de portar The Elder Scrolls III: Morrowind para Elden Ring

Enquanto alguns fãs estão recriando The Elder Scrolls III: Morrowind no motor Skyrim, outros estão…

3 horas atrás

Kojima revelará segredo sobre jogos futuros em homenagem ao 10º aniversário da Kojima Productions

O estúdio japonês Kojima Productions, fundado no final de 2015 pelo renomado designer de jogos…

5 horas atrás

Calendário de Lançamentos – 1 a 7 de setembro: Hollow Knight: Silksong, Cronos: The New Dawn e Metal Eden

Análise do modo ranqueado de Warface: fácil de pegar o jeito, difícil de largar

6 horas atrás

CD Projekt Red intriga fãs de Cyberpunk 2077 com teaser misterioso do presidente dos EUA

Embora o suporte de conteúdo para o RPG de ação cyberpunk em primeira pessoa Cyberpunk…

6 horas atrás

A seleção de horas e minutos do despertador do iPhone não é um ciclo, mas uma longa lista com um final inesperado

Parece difícil imaginar algo mais elementar do ponto de vista do usuário do que escolher…

6 horas atrás