Adeus a C e C++ A Recomendação do Governo dos EUA para Linguagens de Programação Seguras em Memória
O governo dos EUA recomenda evitar o uso de C ou C++ ao programar ferramentas para obter melhores resultados. Aqui está a lista de alternativas recomendadas.
“`html
A NSA atualizou a lista de linguagens de programação seguras
![Lista da NSA de programação segura de memória](https://cdn.miximages.com/tech/996449856aa0353e08b9f1ecc2c226bb.jpg)
Em um relatório recente, o Escritório da Casa Branca do Diretor Nacional de Cibercibersegurança (ONCD) fez uma recomendação audaciosa à comunidade de programação: pare de usar C e C++ e comece a utilizar “linguagens de programação seguras para memória”. 🛡️💻 Esse movimento é visto como um passo crucial para proteger os fundamentos do ciberespaço e está alinhado com o plano de cibersegurança do Presidente Biden.
Então, o que exatamente significa “seguro para memória”? Refere-se à defesa contra falhas e vulnerabilidades relacionadas ao acesso à memória. Exemplos desses problemas incluem ponteiros pendurados e estouros de buffer. Java, com suas verificações de detecção de falhas em tempo de execução, se enquadra na categoria de linguagens seguras para memória. Por outro lado, tanto C quanto C++ suportam aritmética de ponteiro não restrita sem verificação de limites, o que os expõe a problemas de segurança de memória.
Para ajudar os desenvolvedores a adotar práticas seguras para memória, a Agência de Segurança Nacional (NSA) compilou uma lista de linguagens de programação recomendadas. Aqui estão suas sugestões, em nenhuma ordem específica:
- Go
- Rust
- C#
- Swift
- Java
- Ruby
- Python
- Delphi/Object Pascal
- Ada
Essas linguagens têm recursos e características que promovem a segurança da memória, tornando-as menos propensas a vulnerabilidades de segurança causadas por problemas relacionados à memória. Escolher uma dessas linguagens no início de um projeto pode melhorar significativamente a segurança do software resultante.
- Spotify apresenta Song Psychic, a Magic 8 Ball da música 🎵
- Atualização do Microsoft Edge causa caos para os usuários.
- O Impacto dos Dados de Inflação no Dólar Americano Analisando as Fl...
De acordo com uma análise de 2019 feita por engenheiros de segurança da Microsoft, quase 70% das vulnerabilidades de segurança foram causadas por problemas de segurança de memória. A pesquisa do Google em 2020 sobre problemas do navegador Chromium produziu uma estatística semelhante. Considerando esses números, torna-se evidente por que o ONCD está pressionando por uma mudança em direção às linguagens de programação seguras para memória.
🔒🏢 O relatório do ONCD enfatiza a importância de grandes instituições e entidades governamentais desempenharem um papel significativo em cibersegurança. Ele argumenta que a cibersegurança não deve ser apenas responsabilidade de pequenas organizações e indivíduos. Como parte desse esforço, o relatório identifica o uso de C e C++ como linguagens de programação “inseguras” devido à sua associação com vulnerabilidades de segurança de memória. Embora o relatório evite sugerir uma linguagem de substituição específica, destaca que existem “dezenas de linguagens de programação seguras para memória que podem – e devem – ser usadas” no lugar.
O relatório não se limita a recomendações de linguagem. Ele também pede uma melhoria nas métricas de segurança de software. Ao implementar melhores práticas de medição, os provedores de tecnologia podem antecipar e abordar riscos de forma proativa, reduzindo as chances de vulnerabilidades escaparem pelo ralo.
Em última análise, o relatório do ONCD é um apelo à ação para toda a comunidade de programação priorizar a segurança da memória. Se você é um desenvolvedor trabalhando em sistemas críticos ou uma pequena startup, dar passos para integrar linguagens de programação seguras para memória em seu processo de desenvolvimento de software é uma parte essencial para construir software seguro por design.
Perguntas Frequentes
P: Por que C e C++ são consideradas linguagens de programação “inseguras”? R: C e C++ permitem aritmética de ponteiro não restrita, o que pode resultar em vulnerabilidades de segurança de memória. Essas linguagens carecem de salvaguardas e verificações embutidas contra problemas comuns relacionados à memória, como ponteiros pendurados e estouros de buffer.
P: Quais são as vantagens das linguagens de programação seguras para a memória? R: As linguagens de programação seguras para a memória, como Go, Rust e Java, possuem recursos e mecanismos que previnem ou mitigam vulnerabilidades relacionadas à memória. Elas oferecem verificações e restrições embutidas para garantir um uso mais seguro da memória, reduzindo a probabilidade de falhas de segurança.
P: Mudar para linguagens de programação seguras para a memória afetará projetos existentes? R: Mudar de linguagens de programação para projetos existentes pode ser um processo complexo e demorado. Isso depende principalmente de fatores como o tamanho do projeto, a complexidade da base de código e a expertise da equipe. No entanto, incorporar linguagens de programação seguras para a memória desde o início em novos projetos pode melhorar significativamente a segurança do software.
P: Existem linguagens de programação seguras para a memória específicas recomendadas para diferentes aplicativos? R: A escolha da linguagem de programação depende dos requisitos e restrições específicos de cada aplicativo. Enquanto linguagens como Go e Rust são adequadas para programação de nível de sistema, linguagens como Python e Ruby se destacam no desenvolvimento web. Considere as necessidades do seu projeto e consulte recursos específicos da linguagem para tomar uma decisão informada.
“““html
🔍 Para obter mais informações e insights relacionados a linguagens de programação seguras para memória e cibersegurança, confira estes recursos valiosos:
- Python Continua a Reinar Supremo no Mercado de Trabalho
- CEOs da Meta, TikTok, Snap e Discord Vão ao Congresso para Discutir a Segurança Online das Crianças
- Relatório Técnico Final da ONCD
📚 Lembre-se de se manter informado e acompanhar as últimas tendências e melhores práticas no mundo da programação e cibersegurança!
Deanna Ritchie
Editora-Chefe do ENBLE
Deanna é uma editora no ENBLE com mais de 20 anos de experiência em gerenciamento e desenvolvimento de conteúdo. Anteriormente, foi Editora-Chefe do Startup Grind e do Calendar, assim como editora na Entrepreneur media. Sua paixão pela tecnologia e expertise no campo a tornam um recurso valioso para se manter atualizado com os últimos avanços em tecnologia da computação e programação.
Enfrentou desafios relacionados à segurança de memória em sua jornada de programação? Compartilhe suas experiências e pensamentos nos comentários abaixo! Vamos nos esforçar juntos por um ciberespaço mais seguro! 🚀
Não se esqueça de compartilhar este artigo com seus colegas desenvolvedores para divulgar a importância das linguagens de programação seguras para memória. Juntos, podemos criar um futuro digital mais seguro. 🌐💪
“`