Stuxnet: do que ele realmente é capaz? - Adrenaline
Stuxnet: do que ele realmente é capaz?
29/10/2010 17:44 | Risa Lemos Stoider | @Adrenaline | Reportar erro
Um noob no torneio de Taikodom [+mini review]
Um oficial aperta um grande botão vermelho e desencadeia uma majestosa explosão nuclear, que dizima cidades instantaneamente e deixa rastros de ruína e destruição. Era esse o temor da população quando se falava em uma guerra mundial. De fato, após os acontecimentos da última Grande Guerra, as potências militares têm potencial para causar estragos muito maiores do que aqueles que atingiram as cidades de Hiroshima e Nagazaki, no Japão, por exemplo.
No entanto, as ameaças da atualidade podem ser silenciosas, espalhando-se sorrateiramente sem deixar pistas sobre seus criadores. A verdade é que a tecnologia e a Internet estão tão ligadas ao cotidiano e às infraestrututras críticas que podem tornar-se um poderoso instrumento de ataque e coação, eclodindo em uma verdadeira ciberguerra.
As atenções agora se voltam ao Stuxnet, um worm que infectou a usina nuclear de Bushehr, no Irã. Embora as autoridades tenham garantido que a infecção não comprometeu o sistema de controle da usina, a empreitada pode ser um sinal de que algo muito maior pode estar por acontecer. Ou que, pelo menos, os cibercriminosos acabam de desenvolver um novo conceito em ameaças virtuais.
Um alvo nada convencional
O Stuxnet é classificado como um worm, ou seja, um tipo de malware que cria cópias de si mesmo e espalha-se por outros computadores automaticamente. Esse é o grande perigo desse tipo de ameaça: sua enorme capacidade de replicação. Mas ele não é um worm "comum". Seus alvos não são o computador da sua casa ou do seu escritório. Ele não envia e-mails "queima-filme" para todos os seus contatos. Na verdade, os objetivos do Stuxnet são grandiosos: infectar sistemas de controle industriais, modificando seus códigos de modo a permitir que hackers manipulem equipamentos físicos, incluindo usinas de energia elétrica e represas.
Isso é possível atacando o Simatic WinCC e o software de programação Step 7 da Siemens, utilizados no controle de processos industriais, conhecidos como SCADA (Supervisory Control and Data Aquisition), ou, em português, Sistemas de Supervisão e Aquisição de Dados. São softwares que permitem o monitoramento e o controle de processos industriais.
Imagens: Siemens
Esses sistemas surgiram da necessidade de oferecer uma interface amigável, com ambiente gráfico, para operadores dos processos, que podem, com eles, realizar uma série de atividades, como monitorar variáveis como temperatura, pressão e nível; diagnosticar falhas ou condições indevidas; ajustar parâmetros e enviar comandos para todo o sistema. Os sistemas SCADA funcionam, portanto, como uma "ponte" entre a pessoa que exerce a função de operador e o Controlador Lógico Programável (CLP).
O controlador, também conhecido pela sigla em inglês PLC (Programmable Logic Controller), é um computador de pequeno porte, projetado para controlar processos no ambiente industrial. Cada controlador contém um microprocessador responsável por dirigir os terminais de saída que desembocam nos equipamentos controlados, com base nos valores de entrada. Ou seja, programados por softwares específicos, esses equipamentos têm a capacidade de controlar sistemas automatizados, graças ao armazenamento de instruções, manipulação de dados, operações lógicas e aritméticas e à comunicação em rede.
É aí que o Stuxnet age. O malware procura modificar o código dessas unidades de controle para fazê-los trabalhar de uma maneira diferente. Assim, é possível alterar todo o funcionamento de um sistema industrial. "O alvo pode ser qualquer coisa: de oleodutos e estações de tratamento de água às instalações de enriquecimento de urânio", afirma André Carraretto, Gerente de Engenharia de Sistemas da Symantec. Portanto, o Stuxnet é um malware bastante especializado. "Os sistemas de controle industriais sao muito especificos, assim, é preciso que o virus tenha conhecimento do ambiente atacado para agir", complementa.
Esse tipo de ataque é pioneiro na história dos vírus de computador, o que vem preocupando a comunidade de segurança desde o surgimento das primeiras variantes, em junho de 2009. Apesar dos esforços das empresas de segurança, ainda não foi possível identificar a origem do software malicioso.
Propagação engenhosa
Por trás do Stuxnet, está uma estrutura complexa, controlada por um arquivo .dll principal, que funciona como o núcleo do malware e contém todos os códigos e rotinas necessárias para conduzir o processo de infecção.
Para chegar ao seu objetivo final, o malware infiltra máquinas Windows, explorando vulnerabilidades conhecidas como "0-day", ou dia-zero, ou seja, problemas de software desconhecidos até então e, portanto, não resolvidos. Com isso, o malware consegue propagar-se rapidamente sem ser detectado pelas soluções de segurança.
O Stuxnet consegue prejudicar mesmo os sistemas com login restrito, sem acesso de administrador, explorando falhas que permitem a elevação de privilégios e a execução automática de códigos no momento em que o usuário conecta um dispositivo de armazenamento externo USB na máquina. Além disso, para complementar sua estratégia de camuflagem e dificultar sua detecção, o malware utiliza dois certificados legítimos roubados da Realtek e da JMicron. Ainda não se sabe como foi possível obter esses certificados. Roel Schouwenberg, pesquisador sênior da Kaspersky Lab, afirma que existem malwares especializados nesse tipo de ação, no entanto, "os escritórios de ambas as companhias estão no mesmo parque industrial, então nós definitivamente não podemos descartar um roubo presencial", analisa.
Para se espalhar utilizando o sistema de arquivos do computador, a ameaça explora, por exemplo, a brecha CVE-2010-2568, que afeta a exibição de atalhos do sistema. Descoberta no final de julho, a falha já era relacionada, pelos especialistas em segurança, à infecção dos sistemas SCADA. Para a execução do código nocivo, não era necessário nenhum clique do usuário: bastava um atalho referente a um arquivo malicioso ser exibido. Dessa forma, o Stuxnet consegue se propagar por mídias removíveis, efetuando cópias de si mesmo e carregando seu código malicioso a partir de atalhos infectados.
De acordo com o coordenador de Awareness & Research da ESET América Latina, Sebastián Bortnik, esse é o principal meio de propagação da ameaça, ainda efetivo mesmo após o lançamento da correção da vulnerabilidade pela Microsoft, no início de agosto. "As variantes existentes do Stuxnet permanecem com amplos índices de propagação e vale destacar que nem todos os usuários atualizam seus softwares habitualmente, portanto, muitos permanecem vulneráveis", explica. Schouwenberg acrescenta que é dessa forma que o Stuxnet consegue chegar às máquinas que controlam toda a atividade do estabelecimento, mesmo que estejam desconectadas da Internet. "O Stuxnet se espalha através de dispositivos USB que são passados de pessoa para pessoa, facilmente ultrapassando a barreira da rede", explica. Mesmo que essas máquinas centrais não estejam online, "é comum que novos laptops se conectem à rede", complementa.
Na tentativa de emplacar a infecção pela maior quantidade de métodos possível, o Stuxnet ainda busca se espalhar através da rede local. Para se espalhar por outros computadores, tenta explorar mais duas brechas. Uma delas é a MS10-061, relacionada ao spooler de impressão, o responsável por enviar para a impressora, de modo organizado, todas as informações sobre os documentos que precisam ser impressos. Uma vulnerabilidade nesse serviço permite a execução de códigos maliciosos remotamente. Outra falha explorada é a MS08-067, que permite a execução remota de códigos arbitrários, utilizada para que o malware consiga espalhar suas cópias por outras máquinas da rede.
Assim que se instala em uma máquina, o malware ainda cria uma rede P2P para conectar-se a qualquer outro sistema infectado da rede e verificar qual máquina possui a versão mais recente do programa malicioso, o que permite um processo de atualização sem a necessidade de conexão a um servidor remoto.
O Stuxnet executa suas rotinas até encontrar um equipamento que contenha os arquivos do Step7, utilizado para programar os CLPs, que, por sua vez, roda sobre Windows. O worm, então, consegue obter acesso ao servidor do banco de dados do aplicativo devido a uma vulnerabilidade no sistema da Siemens, "através da utilização de uma senha no software de base que não pode ser modificada e que está disponível aos atacantes", explica Bortnik.
Ou seja, basicamente, o Stuxnet opera em dois níveis: as vulnerabilidades no sistema operacional e as do aplicativo da Siemens. O worm usa o Windows como intermediário para espalhar-se até encontrar a plataforma de controle. A invasão desta, por sua vez, não oferece grandes obstáculos graças à sua senha única implantada no software base. Essa falha é considerada uma das 25 brechas de software mais perigosas do mundo. Chris Wysopal, diretor de tecnologia da Veracode, empresa de segurança especialista em análise de código de software, afirmou que "a Siemens colocou seus clientes em risco com essa vulnerabilidade notória em seu software" e alertou sobre o perigo para quem comprou o produto sem conhecer essa falha. "Usuários que operam sistemas SCADA em infra-estruturas críticas ou em fábricas com o software WinCC não deviam adquirir o software sem realizar testes adequados de segurança", completou.
Uma bomba prestes a explodir?
Após furar o fraco bloqueio por senha, o Stuxnet consegue obter acesso aos controles industriais gerenciados pelas soluções SCADA. Assim, um atacante pode controlar esses sistemas remotamente e monitorar os processos de entrada e saída e, assim, causar "explosões ou a incapacidade de controlar importantes atributos de controle industrial, tais como pressão e temperatura", alerta Carraretto, da Symantec. Schouwenberg, da Kaspersly Lab, alerta que o malware pode sabotar a instalação, parando as máquinas, ou "enviar diversas instruções que incluem até apagar os próprios sistemas" e cita uma simulação realizada pelo Idaho National Laboratory, que culimou na explosão da máquina. De acordo com a ESET, uma vez rodando sobre os sistemas de controle, é capaz até mesmo de "apagar os próprios sistemas", como afirma Bortnik.
Esse tipo de ataque nunca foi visto antes e, devido à sua complexidade e aos seus objetivos, vem inspirando varias divagações sobre seus propósitos. Um dossiê completo publicado pela Symantec mostra que a maior parte das infecções pelo Stuxnet ocorre no Irã, concentrando uma porcentagem de aproximadamente 60%. Foi lá que ocorreu o ataque mais significativo, que evidenciou os perigos do malware para o mundo, no final de setembro, contra a usina nuclear de Busherh.
Ralph Langner, perito em segurança de sistemas industriais, aponta que o Irã tem enfrentado alguns problemas técnicos na implementação do seu programa nuclear, destacando a seguinte imagem, retirada do site jornalístico Upi.com:
O que a publicação descreve como "um erro no software" indica que o sistema de controle utilizado, na verdade, não está licenciado e, provavelmente, sequer configurado corretamente, como observa o especialista. Ele lembra, porém, que não há como verificar se a imagem é autêntica, mas estranha o fato de as autoridades não terem realizado esforços para retirar a imagem da Internet, levando a crer que elas sequer têm ideia da mensagem que ela transmite.
A Symantec ainda encontrou referências históricas ao Irã no código do malware, o que reforça a ideia de que o ataque possa ser direcionado especialmente para sabotar o programa nuclear no país. No entanto, essas "pistas" podem, pelo contrário, servir apenas para disfarçar as reais intenções do malware. Para a Kaspersky Lab, essa localização geográfica do ataque sugere que ele não está relacionado a um grupo de criminosos cibernéticos comuns. Os especialistas da companhia que analisaram o código do worm afirmam que o principal objetivo do Stuxnet não foi espionar sistemas infectados, mas levar a uma sabotagem.
A companhia, portanto, acredita que o desenvolvimento do Stuxnet possa ter sido apoiado por uma nação-estado, com fortes dados de inteligência à sua disposição, e que o malware é um protótipo em operação de uma arma cibernética que levará a criação de uma nova corrida armamentista no mundo "A década de 90 foi marcada pelos vândalos cibernéticos e os anos 2000 pelos criminosos cibernéticos. Agora estamos entrando na década do terrorismo cibernético, com armas e guerras virtuais", alerta Eugene Kaspersky, co-fundador e CEO da Kaspersky Lab. A companhia, no final de setembro, anunciou um acordo de colaboração com a Microsoft, através do qual detecta e reporta falhas exploradas pelo Stuxnet, auxiliando a companhia a desenvolver correções o mais rápido possível.
Apesar do conceito por trás da ameaça, a ESET adota uma posição menos alarmista. "É muito difícil executar uma instrução sem que os controladores do sistema industrial percebam, uma vez que todas as ações são relevantes aos equipamentos", explica Bortnik. Para o especialista, ainda não foram vistos grandes danos em instalações industriais por causa do worm e o que surpreende é a novidade do caso. A Kaspersky Lab, por sua vez, afirma que o malware usa ataques do tipo man-in-the-middle (homem-no-meio, em tradução livre), ou seja, permite que um atacante intercepte e altere os dados recebidos e enviados. "Assim, mesmo que a máquina rode em um estado crítico, o Stuxnet continuará mostrando os dados e valores normais na tela", explica Schouwenberg.
Funcionamento do ataque através da técnica "man-in-the-middle"
Do ponto de vista conceitual, mesmo que possa causar danos para uma organização ou país ao afetar suas infraestruturas críticas, "não há indícios para crer que ameaças como o Stuxnet se repetirão, ao menos de forma massiva, em curto prazo. E tampouco para afirmar que se trate de um caso de ciberguerra", avalia Bortnik. A ameaça, porém, traz à tona a necessidade de implementar medidas de segurança em qualquer tipo de sistema, mesmo que não pareça visado por cibercriminosos. E essa falsa impressão de segurança acabou abrindo as portas para esse novo tipo de ataque, como aponta o especialista da ESET. "Os sistemas SCADA não costumam contar com medidas de segurança contra malware, já que não é frequente que ataques de códigos maliciosos se dirijam a eles", afirma.
De qualquer forma, autoridades do mundo inteiro estão atentas a ese novo tipo de ameaça. O Departamento de Defesa Interna dos Estados Unidos demonstrou preocupação com a iminência de uma ciberguerra e estima que existam, atualmente, cerca de 100 países com capacidades de ciberespionagem e ciberataque. Para o secretário do departamento, Michael Chertoff, é preciso contra-atacar incapacitando a plataforma usada para a ofensiva. "Não estou dizendo que é preciso responder aos ataques virtuais com ataques reais, mas creio que seja importante definir quando e como devemos reagir", explicou.
Já o diretor executivo da Agência Européia responsável pela segurança na web (ENISA), Dr. Udo Helmbrecht, considera o Stuxnet uma verdadeira mudança de paradigma. Em meados de outubro, ele declarou que o "Stuxnet é uma nova classe e dimensão de malware. Seus criadores claramente investiram uma quantia significativa de tempo e dinheiro para construir uma ferramenta de ataque tão complexa." Para o executivo, foi um dos primeiros "ataques organizados e bem preparados", da história da internet contra instalações industriais,o que deve levar governos e empresas a desenvolver soluções de proteção para suas infra-estruturas de informação.
As investidas do Stuxnet têm provocado esforços da comunidade de segurança em desevendar as suas entranhas e descobrir as mentes responsáveis pela sua criação, mas não é fácil encontrar criminosos por trás de programas maliciosos. Ainda mais neste caso, que demonstra profundos conhecimentos sobre estruturas muito específicas, o que leva a especulações de que existe um grupo muito bem organizado por trás desses ataques.
As opiniões sobre seus perigos se dividem: enquanto alguns temem uma ciberguerra, outros acreditam que, na prática, as consequências físicas da ameaça podem ser detectadas e controladas sem causar maiores danos. De qualquer forma, o malware assusta por causa do seu conceito, pelo caráter de novidade e, especialmente, por ser desenvolvido com o propósito único de afetar infraestruturas críticas.
"Essa ameaça está usando quatro vulnerabilidades, possivelmente cinco, só com isso podemos considerá-lo inovador", afirma Carraretto. Ele conta que a Symantec nunca havia detectado uma ameaça desse tipo. "Ela foi projetada para manipular equipamentos no mundo real, o que a torna muito perigosa", alerta. Sua engenhosidade, porém, é algo difícil de ser reproduzido. "Não estou convencido de que a aparição do Stuxnet tornará mais fácil a criação de malwares semelhantes por outras pessoas", comenta Schouwenberg. O especialista da Kaspersky reafirma a necessidade de um conhecimento elevado em redes de controle e conclui que a principal mudança que o Stuxnet pode trazer é no comportamento dos cibercriminosos que desenvolvem ameaças parecidas. "Há chances de que eles passem a arriscar uma exposição pública", acredita.
Os controladores de infraestruturas críticas devem redobrar seus cuidados, que começam com as medidas básicas, assegurando-se de que "o sistema está fechado para não ficar público na Internet, além de manter os softwares atualizados e não conectar nenhum dispositivo USB que não tenha sido previamente analisado por um antivírus", aconselha Bortnik. Para Carraretto, "a implementação de políticas adequadas de controle e o reforço delas com a utilização de ferramentas de segurança, como um Host IPS, podem reduzir significativamente as chances de êxito de um ataque." No entanto, proteger infraestruturas tão complexas demanda muito mais esforço e pode ser uma tarefa complicada. "Ás vezes, ocorrem problemas derivados do uso de antivírus nessas redes", lembra Schouwenberg. Para o especialista, é fundamental que as máquinas sejam altamente restritivas quanto aos aplicativos que poderá executar.
E quanto ao seu computador, aí na sua casa? É fato que o Stuxnet infecta sistemas Windows, na tentativa de chegar ao alvo principal, que são os sistemas de controle da Siemens. Mas ele não causará danos máquinas comuns. "O Stuxnet não irá danificar computadores domesticos, e ele terá dificuldade de atingir um computador 'interessante' a partir de uma maquina doméstica", explica Carraretto. Mesmo assim, ninguém quer incubar um programa malicioso em sua máquina, portanto, medidas de segurança simples, como varreduras constantes com um software antivírus, são indispensáveis para detectar e remover a ameaça.
A Siemens, é claro, já se pronunciou sobre o assunto e afirmou que, por ora, um total de 19 usuários dos softwares, ligados a instalações industriais, reportou infecções com o Stuxnet. De acordo com a companhia, boa parte das máquinas atingidas pelo malware saem ilesas, já que o worm "procura sistematicamente por uma configuração específica da planta e, quando não encontra, não é ativado".
Até outubro, a empresa tinha conhecimento de 15 sistemas industriais infectados no mundo todo, sendo que em todos os casos o malware foi removido com sucesso, sem ter conseguido causar nenhum impacto ou reação adversa nos softwares de controle. A companhia também disponibiliza instruções de proteção e remoção em sua página de suporte, incluindo um patch de segurança. No entanto, ele ainda não fecha todas as vulnerabilidades que podem ser exploradas pela ameaça, embora corrija algumas das falhas mais utilizadas pelas variantes existentes hoje.
As falhas no Windows, por sua vez, já vêm sendo corrigidas pela Microsoft, mas o esforço da gigante e da Siemens não impedem que novas versões do malware apareçam, "utilizando novas vulnerabilidades descobertas como vetor de infecção", como explica Carrareto, da Symantec. Por enquanto, a situação parece controlada. A ESET assegura que ainda não foram detectadas novas variantes, embora não descarte a possibilidade de que elas surjam no futuro.
Sendo assim, tanto para o usuário doméstico quanto para aqueles ligados às infraestruturas críticas, o Stuxnet, mesmo que não cause uma ciberguerra, traz consigo uma lição. As falsas impressões de segurança podem causar estragos e qualquer sistema precisa de proteção, sendo que as mais básicas podem evitar possíveis desastres. Manter todos os sistemas operacionais e softwares sempre atualizados também é fundamental, já que as ameaças se renovam a cada dia, sempre procurando por novas aberturas pelas quais elas possam se instalar.