O Flame, também conhecido como Flamer, sKyWIper, e Skywiper, é um malware de computador modular descoberto em 2012 que ataca computadores executando o sistema operacional Microsoft Windows. O programa é utilizado para espionagem cibernética direcionada em países do Oriente Médio.

Sua descoberta foi anunciada em 28 de maio de 2012 pelo Centro MAHER da Equipe de Resposta a Emergências Computacionais (CERT) do Irã, pela Kaspersky Lab e pelo CrySyS Lab da Universidade de Tecnologia e Economia de Budapeste. Este último afirmou em seu relatório que o Flame "é certamente o malware mais sofisticado que encontramos durante nossa prática; indiscutivelmente, é o malware mais complexo já encontrado." O Flame pode se espalhar para outros sistemas por meio de uma rede de área local (LAN). Ele pode gravar áudio, capturar capturas de tela, registrar a atividade do teclado e o tráfego de rede. O programa também grava conversas do Skype e pode transformar computadores infectados em sinalizadores Bluetooth que tentam baixar informações de contato de dispositivos próximos habilitados para Bluetooth. Esses dados, juntamente com documentos armazenados localmente, são enviados para um dos vários servidores de comando e controle espalhados pelo mundo. O programa então aguarda instruções adicionais desses servidores.

De acordo com estimativas da Kaspersky em maio de 2012, o Flame havia infectado inicialmente cerca de 1.000 máquinas, com vítimas incluindo organizações governamentais, instituições de ensino e indivíduos privados. Naquela época, 65% das infecções ocorreram no Irã, Israel, Palestina, Sudão, Síria, Líbano, Arábia Saudita e Egito, com uma "enorme maioria dos alvos" dentro do Irã. O Flame também foi relatado na Europa e na América do Norte. O Flame suporta um comando de "autodestruição" (kill) que apaga todos os vestígios do malware no computador. As infecções iniciais do Flame pararam de funcionar após sua exposição pública, e o comando de autodestruição foi enviado.

O Flame está vinculado ao Equation Group pela Kaspersky Lab. No entanto, Costin Raiu, diretor da equipe global de pesquisa e análise da Kaspersky Lab, acredita que o grupo só coopera com os criadores do Flame e do Stuxnet a partir de uma posição de superioridade: "O Equation Group é definitivamente o mestre, e eles estão dando aos outros, talvez, migalhas de pão. De tempos em tempos, eles dão a eles alguns recursos para integrar no Stuxnet e no Flame.", Costin Raiu (director of Kaspersky Lab's global research and analysis team): "It seems to me Equation Group are the ones with the coolest toys. Every now and then they share them with the Stuxnet group and the Flame group, but they are originally available only to the Equation Group people. Equation Group are definitely the masters, and they are giving the others, maybe, bread crumbs. From time to time they are giving them some goodies to integrate into Stuxnet and Flame."

Pesquisadores descreveram o Flame como um dos programas de malware de espionagem cibernética mais sofisticados descobertos até o momento. Ele infectou inúmeros computadores no Oriente Médio usando um certificado digital forjado da Microsoft para se passar por um software confiável.

Em 2019, os pesquisadores Juan Andres Guerrero-Saade e Silas Cutler anunciaram a descoberta do ressurgimento do Flame. Os atacantes usaram 'timestomping' (alteração de marcas de tempo e datas de arquivos) para fazer com que as novas amostras parecessem ter sido criadas antes do comando de 'suicídio'. No entanto, um erro de compilação incluiu a data real de compilação (). A nova versão (apelidada de 'Flame 2.0' pelos pesquisadores) inclui novos mecanismos de criptografia e ofuscação para ocultar suas funcionalidades.

História O Flame (também conhecido como Da Flame) foi identificado em maio de 2012 pelo Centro MAHER do CERT Nacional Iraniano, Kaspersky Lab e CrySyS Lab (Laboratório de Criptografia e Segurança de Sistemas) da Universidade de Tecnologia e Economia de Budapeste, quando a Kaspersky Lab foi solicitada pela União Internacional de Telecomunicações das Nações Unidas a investigar relatórios de um vírus que afetava os computadores do Ministério do Petróleo do Irã. Enquanto a Kaspersky Lab investigava, descobriu um hash MD5 e um nome de arquivo que apareciam apenas em máquinas de clientes de nações do Oriente Médio. Após descobrir mais partes, os pesquisadores apelidaram o programa de "Flame" por causa de um dos principais módulos dentro do conjunto de ferramentas .

De acordo com a Kaspersky, o Flame estava operando ativamente desde pelo menos fevereiro de 2010. O CrySyS Lab relatou que o nome de arquivo do componente principal foi observado já em dezembro de 2007. No entanto, sua data de criação não pôde ser determinada diretamente, pois as datas de criação dos módulos do malware são falsificadas para datas tão antigas quanto 1994.

Especialistas em computação o consideram a causa de um ataque em abril de 2012 que fez com que autoridades iranianas desconectassem seus terminais petrolíferos da Internet. Na época, a Agência de Notícias dos Estudantes Iranianos referiu-se ao malware que causou o ataque como "Wiper", um nome dado a ele pelo criador do malware. No entanto, a Kaspersky Lab acredita que o Flame pode ser "uma infecção totalmente separada" do malware Wiper. Devido ao tamanho e à complexidade do programa — descrito como "vinte vezes" mais complicado do que o Stuxnet — o laboratório afirmou que uma análise completa poderia levar até dez anos.

Em 28 de maio, o CERT do Irã anunciou que havia desenvolvido um programa de detecção e uma ferramenta de remoção para o Flame, e os estava distribuindo para "organizações selecionadas" há várias semanas. Após a exposição do Flame nos meios de comunicação, a Symantec relatou em 8 de junho que alguns computadores de comando e controle (C&C) do Flame haviam enviado um comando de "suicídio" para PCs infectados para remover todos os vestígios do Flame. Todas as cópias do programa e quaisquer arquivos relacionados foram excluídos.

De acordo com estimativas da Kaspersky em maio de 2012, inicialmente o Flame infectou aproximadamente 1.000 máquinas, com vítimas incluindo organizações governamentais, instituições educacionais e indivíduos privados. Naquela época, os países mais afetados eram Irã, Israel, Territórios Palestinos, Sudão, Síria, Líbano, Arábia Saudita e Egito. Uma amostra do malware Flame está disponível no GitHub.

Funcionamento Nome Descrição+Lista de codinomes para várias famílias de módulos no código-fonte do Flame e suas possíveis finalidadesFlameMódulos que executam funções de ataqueBoostMódulos de coleta de informaçõesFlaskUm tipo de módulo de ataqueJimmyUm tipo de módulo de ataqueMunchMódulos de instalação e propagaçãoSnackMódulos de propagação localSpotterMódulos de varredura (scanning)TransportMódulos de replicaçãoEuphoriaMódulos de vazamento de arquivosHeadacheParâmetros ou propriedades de ataque

O Flame é um programa de computador não caracteristicamente grande para um malware, com 20 megabytes. Ele é escrito parcialmente na linguagem de script Lua com código compilado em C++ vinculado, e permite que outros módulos de ataque sejam carregados após a infecção inicial. O malware usa cinco métodos de criptografia diferentes e um banco de dados SQLite para armazenar informações estruturadas. O método usado para injetar código em vários processos é furtivo, pois os módulos do malware não aparecem na listagem de módulos carregados em um processo e as páginas de memória do malware são protegidas com permissões READ, WRITE e EXECUTE que as tornam inacessíveis por aplicativos em modo de usuário. O código interno possui poucas semelhanças com outros malwares, mas explora duas das mesmas vulnerabilidades de segurança usadas anteriormente pelo Stuxnet para infectar sistemas. O malware determina qual software antivírus está instalado e, em seguida, personaliza seu próprio comportamento (por exemplo, alterando as extensões de nome de arquivo que usa) para reduzir a probabilidade de detecção por esse software. Indicadores adicionais de comprometimento incluem atividade de mutex e do Registro do Windows, como a instalação de um driver de áudio falso que o malware usa para manter a persistência no sistema comprometido.

O Flame não foi projetado para ser desativado automaticamente, mas suporta uma função de "autodestruição" (kill) que o faz eliminar todos os vestígios de seus arquivos e operações de um sistema ao receber um módulo de seus controladores.

O Flame foi assinado com um certificado fraudulento supostamente vindo da autoridade certificadora Microsoft Enforced Licensing Intermediate PCA. Os autores do malware identificaram um certificado do Serviço de Licenciamento do Terminal Server da Microsoft que inadvertidamente foi habilitado para assinatura de código e que ainda usava o algoritmo fraco de hash MD5, produzindo então uma cópia falsificada do certificado que usaram para assinar alguns componentes do malware para fazê-los parecer originados da Microsoft. Um ataque de colisão bem-sucedido contra um certificado havia sido demonstrado anteriormente em 2008, mas o Flame implementou uma nova variação do ataque de colisão de prefixo escolhido.

PropriedadeValorCertificado comprometido da Microsoft usando o algoritmo fraco MD5 e o uso não intencional de assinatura de códigoVersãoV3Número de série3a ab 11 de e5 2f 1b 19 d0 56Algoritmo de assinaturamd5RSAAlgoritmo de hash de assinaturamd5EmissorCN = Microsoft Root Authority, OU = Microsoft Corporation, OU = Copyright (c) 1997 Microsoft Corp.Válido deQuinta-feira, 10 de dezembro de 2009 11:55:35 AMVálido atéDomingo, 23 de outubro de 2016 6:00:00 PMAssuntoCN = Microsoft Enforced Licensing Intermediate PCA, OU = Copyright (c) 1999 Microsoft Corp., O = Microsoft Corporation, L = Redmond, S = Washington, C = USChave pública30 82 01 0a 02 82 01 01 00 fa c9 3f 35 cb b4 42 4c 19 a8 98 e2 f4 e6 ca c5 b2 ff e9 29 25 63 9a b7 eb b9 28 2b a7 58 1f 05 df d8 f8 cf 4a f1 92 47 15 c0 b5 e0 42 32 37 82 99 d6 4b 3a 5a d6 7a 25 2a 9b 13 8f 75 75 cb 9e 52 c6 65 ab 6a 0a b5 7f 7f 20 69 a4 59 04 2c b7 b5 eb 7f 2c 0d 82 a8 3b 10 d1 7f a3 4e 39 e0 28 2c 39 f3 78 d4 84 77 36 ba 68 0f e8 5d e5 52 e1 6c e2 78 d6 d7 c6 b9 dc 7b 08 44 ad 7d 72 ee 4a f4 d6 5a a8 59 63 f4 a0 ee f3 28 55 7d 2b 78 68 2e 79 b6 1d e6 af 69 8a 09 ba 39 88 b4 92 65 0d 12 17 09 ea 2a a4 b8 4a 8e 40 f3 74 de a4 74 e5 08 5a 25 cc 80 7a 76 2e ee ff 21 4e b0 65 6c 64 50 5c ad 8f c6 59 9b 07 3e 05 f8 e5 92 cb d9 56 1d 30 0f 72 f0 ac a8 5d 43 41 ff c9 fd 5e fa 81 cc 3b dc f0 fd 56 4c 21 7c 7f 5e ed 73 30 3a 3f f2 e8 93 8b d5 f3 cd 0e 27 14 49 67 94 ce b9 25 02 03 01 00 01Uso aprimorado de chaveAssinatura de Código (1.3.6.1.5.5.7.3.3)Licenças de Pacote de Chaves (1.3.6.1.4.1.311.10.6.1)Verificação de Servidor de Licenças (1.3.6.1.4.1.311.10.6.2)Identificador da autoridade Certificate Issuer: CN=Microsoft Root Authority, OU=Microsoft Corporation, OU=Copyright (c) 1997 Microsoft Corp.| Certificate SerialNumber=00 c1 00 8b 3c 3c 88 11 d1 3e f6 63 ec df 40Identificador de chave do assunto6a 97 e0 c8 9f f4 49 b4 89 24 b3 e3 d1 a8 22 86 aa d4 94 43Uso da chaveAssinatura DigitalAssinatura de CertificadoAssinatura de CRL Off-lineAssinatura de CRL (86)Restrições básicasTipo de Assunto=CARestrição de Comprimento do Caminho=NenhumaAlgoritmo de marca d'água (thumbprint)sha1Marca d'água (thumbprint)2a 83 e9 02 05 91 a5 5f c6 dd ad 3f b1 02 79 4c 52 b2 4e 70

Implantação