A Casa Branca acaba de alertar contra o uso dessas linguagens de programação populares
Algumas das linguagens de programação favoritas dos desenvolvedores causam o maior risco de segurança para sistemas que exigem o máximo de segurança, de acordo com a Casa Branca.
O Escritório do Diretor Cibernético Nacional (ONCD), sancionado pelo governo, divulgou recentemente um relatório detalhando que está recomendando que os desenvolvedores usem várias “linguagens de programação seguras para memória”. Esta lista exclui linguagens populares, como C e C++, que foram consideradas como tendo falhas na segurança da memória que as tornam riscos de segurança.
Como aponta o Tom's Hardware , a segurança da memória é a proteção arraigada no acesso à memória que mantém bugs e vulnerabilidades sob controle. Esses exemplos incluem as verificações de detecção de erros em tempo de execução em Java, que é considerada uma linguagem segura para memória. No entanto, C e C++ não possuem verificações de segurança e permitem acesso direto à memória.
Várias empresas, incluindo a Microsoft e o Google, vincularam vulnerabilidades de segurança a problemas de segurança de memória em seus sistemas. Em 2019, a Microsoft descobriu que cerca de 70% das vulnerabilidades de segurança foram causadas por problemas de segurança de memória. O Google relatou o mesmo número em 2020 em relação a bugs em seu navegador Chromium. Notavelmente, a Microsoft só recentemente expandiu a compatibilidade de sua própria App Store para incluir o uso de linguagens como C++ pelos desenvolvedores.
Como C e C++ estão entre as linguagens de programação que não possuem verificações de segurança integradas, a ONCD recomenda não usá-las em grandes organizações, empresas de tecnologia e entidades governamentais. O conselho coincide com a estratégia de segurança cibernética do presidente Joe Biden para “proteger os blocos de construção do ciberespaço”.
Mesmo assim, a ONCD não possui uma lista aprovada de linguagens de programação e simplesmente pediu às empresas que usassem de discernimento com o seu software, ao mesmo tempo que optavam por hardware com memória segura para minimizar problemas de segurança. O mais próximo de uma lista sancionada é aquela desenvolvida pela Agência de Segurança Nacional (NSA) em 2022. As linguagens seguras para memória incluem:
- Ferrugem
- Ir
- C#
- Java
- Rápido
- JavaScript
- Rubi
Tom's Hardware observou que embora essas linguagens possam passar no teste em termos de segurança, muitas delas não são as favoritas dos desenvolvedores. A publicação acrescentou que as linguagens estão entre as 20 principais, mas apenas quatro delas, C#, Java, Python e JavaScript, são consistentemente populares entre os desenvolvedores.
Este relatório é uma recomendação e não uma regra. Será interessante ver como as empresas e desenvolvedores trabalharão com isso com o passar do tempo.