Contents

A Casa Branca proíbe linguagens de programação usadas em Windows, Linux e MacOS!

,

Proteger sistemas tecnológicos críticos contra ameaças potenciais é uma preocupação crescente para os governos. E um exemplo disso é a recente chamada ( PDF ) dirigida à indústria de desenvolvimento de software e realizada pela Casa Branca através do Gabinete do seu Diretor Nacional de Segurança Cibernética (ONCD) para que **adote linguagens"seguras para a memória"* *…

…o que acontece abandonar linguagens de programação interpretadas como ‘inseguras’ nesta área, uma lista que inclui as duas principais linguagens de desenvolvimento de sistemas operacionais: C e C\+\+.

Um olhar sobre… A carreira do programador em 2017 e no futuro (com Javier Santana)

Obrigado pelos seus serviços, C/C\+\+, mas…

As linguagens C e C\+\+ , apesar de sua popularidade e uso extensivo no desenvolvimento de software (incluindo sistemas operacionais) nas últimas décadas, têm se destacado por apresentar riscos de segurança , especialmente ao usar sistemas críticos.

Embora linguagens como Java tenham verificações de detecção de erros em tempo de execução, tornando-as exemplos de linguagens"seguras para memória", C ou C\+\+ permitem a manipulação direta e irrestrita de endereços de memória , o que pode levar a vulnerabilidades como como estouros de buffer.

/images/4311353292ac535aa39a04572e48a8a6c810efc5d08f7147a128884ab328b5a4.jpg Neste site há quem acredite que C não é mais uma linguagem de programação (outros se contentam em dizer que não é uma linguagem de baixo nível)

A ONCD, no seu relatório, não se limita a apontar os riscos associados ao C e ao C\+\+, mas também propõe alternativas. Linguagens como Rust, Go, C# , Java, Swift, JavaScript e Ruby são mencionadas como opções seguras para memória.

É importante enfatizar que, no entanto, a ONCD não estabeleceu uma lista de linguagens de programação ‘permitidas’ou’proibidas’, mas (por enquanto) apenas procura encorajar uma maior consciência sobre os riscos associados a certas línguas.

Uma mudança difícil… e desnecessária?

De acordo com estudos anteriores da Microsoft e do Google, Cerca de 70% das vulnerabilidades de segurança são causadas por problemas de segurança de memória.

O problema é que nem todas as linguagens propostas pela Casa Branca podem substituir C/C\+\+ (tente criar um sistema operacional com JavaScript) e que o trabalho já realizado nas referidas linguagens inseguras​ não pode ser implementado da noite para o dia. amanhã (nem de um ano para o outro) para outros mais solventes, como o Rust.

/images/f7528dc2592920a8dc785509c6347075b5e4446a14205992be7648888003c1de.jpg Neste site C é a linguagem de programação ‘mais verde’, seguida de perto por Rust: elas consomem menos energia ao executar algoritmos

Mesmo a Linux Foundation, que recentemente endossou esta linguagem mais recente em seu kernel, não prevê que ela seja utilizada para qualquer finalidade além de módulos e drivers. Apesar disso, Linus Torvalds afirma estar confiante de que “em algum momento” observará tal transformação ocorrendo dentro de seu kernel.

Há um ano, o criador do C\+\+ criticou um relatório da Agência de Segurança Nacional americana (NSA) que defendia a superioridade de ‘linguagens seguras’ como Rust sobre outras como C e C\+\+; esse relatório também se concentrou no gerenciamento de memória e foi, previsivelmente, o gatilho para a atual decisão da Casa Branca.

0

Bjarne Stroustrup foi direto:

1

“Se eu considerasse uma dessas linguagens’seguras’como superior ao C\+\+ para a gama de usos que me interessam, não veria o fim do C/C\+ \+ como negativo, mas não é o caso. Conforme descrito [pela NSA], ‘seguro’ é limitado à segurança da memória, deixando de fora uma dúzia de maneiras diferentes pelas quais uma linguagem poderia (e será) usada para violar qualquer tipo de proteção.”

Além disso, de acordo com Stroustrup, um analisador estático que atenda às diretrizes básicas de C\+\+ desenvolvidas nos últimos anos pode garantir a segurança do código… e a um custo muito menor do que o necessário para iniciar um código transição para novos idiomas.

2

Não há segurança cibernética sem considerar o ‘quem’ além do ‘o quê’

Este apelo é consequência da crescente preocupação com a segurança cibernética causada por incidentes como a grave vulnerabilidade Log4j, que expôs deficiências no desenvolvimento de software crítico, quando A segurança de milhões de sites ficou nas mãos de apenas três programadores voluntários que, trabalhando de graça (e sem dormir), eles tiveram que lançar um patch contra o relógio que mais tarde seria implementado por muitas grandes empresas.

3 /images/691e2ca915f6cf2e80a19cf1cd554253bea830aaf2741512509da3241fcb1d96.jpg Neste site O que aconteceu com os programadores que há dois anos trabalhavam de graça para evitar prejuízos milionários para grandes empresas de tecnologia?

É por isso que a recomendação da Casa Branca não só incentiva uma mudança nas ferramentas de desenvolvimento, mas também procura redefinir a responsabilidade pela segurança cibernética, para que esta deixe de estar exclusivamente sobre os ombros de pequenas equipas ou programadores individuais…

4

…e promova isso também ‘lidere’organizações maiores que também se beneficiam do uso de tal software (grandes empresas de tecnologia e, em última análise, o governo).

5

Imagem | Marcos Merino por meio de IA

De acordo com declaração de um executivo da Microsoft, é aconselhável evitar a utilização de C ou C++ nos projetos atuais e optar pela linguagem de programação Rust. O raciocínio por trás desta recomendação foi explicado pelo executivo, que inclui fatores como segurança, desempenho e facilidade de desenvolvimento.

6

*️⃣ Link da fonte:

PDF,