Pesquisar este blog

quinta-feira, 23 de junho de 2011

O Software e a Defesa Nacional


Marcelo A. O. Malagutti (marcelomalagutti@yahoo.com.br)

Um dia após uma onda de ataques de hackers a sites da Presidência da República, da Receita Federal e da Petrobrás decidi tornar públicas algumas sugestões simples que apresentei em meu trabalho de conclusão do Curso de Altos Estudos de Política e Estratégia da Escola Superior de Guerra, na Turma Amazônia Azul, em 2010.
A onda de anúncios de invasões de grande porte a sites como os da Sony e da Nintendo, e a criação de centros de defesa ou de guerra cibernética nos EUA, Austrália, China, Alemanha, Estônia, Inglaterra e, conforme anunciado na semana passada, no Brasil, demonstra a crescente preocupação mundial com o tema.
No âmbito da defesa nacional, a preocupação pode ser bem compreendida quando imaginamos, por exemplo, que o controle da rede de produção e distribuição de energia elétrica é praticamente todo automatizado e computadorizado. A invasão e tomada de controle dessa rede poderia causar enormes prejuízos ao país e à sociedade brasileira. De forma similar, dezenas de outros serviços públicos estão sob o controle de redes de computadores cuja segurança e proteção devem ser continuamente revistas.
A estratégia Nacional de Defesa estabelece que a Defesa Cibernética, no Brasil, é de responsabilidade do Exército Brasileiro, ou EB, como é conhecido nos meios militares, enquanto que nosso programa nuclear, está sob responsabilidade da Marinha do Brasil (MB) e nosso programa espacial sob a égide da Força Aérea Brasileira (FAB).
Há que se ter em mente que todas essas instituições têm tido seus recursos significativamente reduzidos em função dos cortes orçamentários regularmente promovidos pelo governo federal. Assim, de forma pragmática, devemos trabalhar propostas que nos assegurem o melhor retorno possível sobre a baixa capacidade de investimento disponível. Nesse contexto é que foram apresentadas para debate as propostas relacionadas a seguir, que entendo serem simples, objetivas e econômicas.
1.    Criação de um Núcleo de Software Básico de Defesa (NSBD)
A criação de um núcleo voltado ao desenvolvimento de software básico de defesa estaria consoante com o eixo cibernético da Estratégia Nacional de Defesa (END), e permitiria que o país desenvolvesse tecnologia própria para proteger-se de certas classes de problemas.
Esse núcleo deveria ser vinculado ao Ministério da Defesa (MD) e gerar produtos a serem utilizados pelas diferentes forças. Esse núcleo deveria ser composto por militares e civis vinculados ao MD, mas necessariamente conter representantes da iniciativa privada componentes da Indústria de Material de Defesa. Conforme exposto pelo Comandante da Marinha, Almirante de Esquadra Moura Neto, em palestra proferida aos estagiários dos cursos superiores de política e estratégia em março de 2010, a tecnologia deve necessariamente ser apropriada pela iniciativa privada, pois a dinâmica da carreira militar leva a constantes movimentações e transferências, dificultando o processo de retenção e transferência de conhecimento. Ressalte-se que todos os componentes propostos aqui têm emprego dual, tanto militar quanto civil, e portanto atendem ao disposto na END.
Para que se possa estabelecer um parâmetro de ordem de grandeza dos custos envolvidos, a Fóton Informática S.A., empresa na qual trabalho, possui pouco mais de 180 colaboradores, efetivo a princípio suficiente para a realização das tarefas propostas, e seu faturamento em 2009 foi da ordem de 25 milhões de reais, cobrindo todas as despesas, impostos, equipamentos e custos de produção. Mesmo no contexto do reduzido orçamento do MD tais valores investidos anualmente são pouco significativos.
Não se trata nessa proposta do desenvolvimento de um sistema operacional próprio. Os integrantes desse NSBD selecionariam uma versão do sistema operacional de código livre Linux a ser definida como padrão para o MD. Os códigos-fonte desse sistema, doravante denominado MD-Linux, seriam “internalizados” pela equipe, que os estudaria e providenciaria eventuais modificações necessárias. Seriam geradas versões periódicas desse sistema que seriam distribuídas pelo MD. Esse procedimento levaria ao conhecimento, e domínio, completo do sistema, evitando a possibilidade de existência de códigos indesejados ou “secretos”, ou portas de invasão desconhecidas que seriam potencialmente explorados em situações de crise ou conflito.
Essa iniciativa inviabilizaria as famosas “portas secretas” do Windows e de outros sistemas operacionais comerciais estrangeiros, as quais seriam de conhecimento apenas da Agência de Segurança Nacional do EUA (NSA – National Security Agency) e permitiriam a invasão de sistemas construídos sobre tais sistemas operacionais.
Além disso, somente os componentes essenciais do sistema seriam disponibilizados, tornado-o mais leve, compacto e performático, além de menos vulnerável a falhas ou invasões.
Existem diversos tipos de softwares de segurança de sistemas, dentre os quais anti-vírus, softwares que asseguram a não execução de códigos indesejados, firewalls, softwares que impedem a invasão de sistemas por portas de comunicação, anti-malware e outros mais. Esse grupo seria o responsável pela avaliação das potenciais ameaças e fragilidades do sistema operacional gerado, e pela proposição de medidas de segurança a serem aplicadas.
Tal iniciativa tornaria mais difícil a infiltração de vírus como o Stuxnet, supostamente responsável por severos danos às centrífugas de material radioativo do Irã, que teriam causado atrasos de anos ao programa nuclear daquele país. O Stuxnet é apontado como o primeiro caso de domínio público de um agente de ataque cibernético, e teria sido desenvolvido ao custo estimado de 10.000 homens.mês (cerca de 830 pessoas trabalhando ao longo de um ano) com um objetivo único, pois após ser lançado e identificado, o mesmo se torna inútil. O Stuxnet identificaria a existência de um software da Siemens para o controle das centrífugas e então se tornaria ativo, acelerando a rotação das centrífugas acima de seus limites de operação e danificando seus eixos. Ressalte-se que softwares da Siemens estão presentes no controle dos geradores de Itaipú, das centrais nucleares de Angra, e da turbina propulsora de nosso PROSUB, o Programa do Submarino Nuclear, em Aramar, dentre outras instalações de alta segurança do país.
Drivers são componentes de software que interligam dispositivos de hardware ao sistema operacional. Quando se conecta um dispositivo, uma impressora, por exemplo, o sistema operacional interage com ela por meio de um driver específico da impressora em questão. Dada a popularidade do Windows, a maioria dos fabricantes de dispositivos de hardware fornece drivers compatíveis com o mesmo, o que aumenta a comodidade de seu uso mas aumenta a exposição ao risco de travamentos do sistema em decorrência de drivers deficientes.
Esse grupo teria a responsabilidade de avaliar, especificar e, eventualmente, desenvolver drivers para interligação de dispositivos com o sistema operacional MD-Linux.
Nesse caso haveria maior dificuldade na infiltração de agentes de software danoso como o que se tornou famoso, embora não oficialmente, por ter sido infiltrado e inutilizado o sistema de defesa aérea do Iraque na Primeira Guerra do Golfo, o qual se teria propagado a partir da instalação de uma impressora naquela rede.
A linguagem Java é uma linguagem orientada a objetos que apresenta alta portabilidade. Sua utilização é baseada num Java Runtime Environment (JRE) particular para cada sistema operacional utilizado, a partir de uma especificação internacional padrão. Com vistas a se evitar a utilização de JREs exógenos, esse grupo implementaria um JRE específico para o MD-Linux, o MD-JRE.
Esse MD-JRE poderia incorporar controles adicionais de segurança para evitar a adulteração de códigos executáveis ou a execução de códigos indesejáveis.
A maioria dos microcomputadores corporativos é utilizada exclusivamente para funções administrativas, providas por planilhas, editores de texto, softwares de apresentação, e-mail e navegadores da Internet, que poderiam ser providos a partir de códigos-livres de forma similar ao proposto no caso do sistema operacional.