fazer do informe oficial - Security Response
Transcrição
fazer do informe oficial - Security Response
Security Response Regin: Ferramenta de espionagem de alto nível possibilita vigilância dissimulada Symantec Security Response Versão 1.0 - 24 de novembro de 2014 O Regin é um software extremamente complexo que pode ser personalizado com uma imensa variedade de recursos que podem ser implantados de acordo com o alvo. Siga-nos no Twitter Visite nosso blog SUMÁRIO VISÃO GERAL................................................................. 3 Introdução...................................................................... 5 Cronograma................................................................... 5 Perfil-alvo....................................................................... 6 Vetor de infecção...................................................... 6 Arquitetura..................................................................... 8 Estágio 0 (infecção).................................................. 9 Estágio 1................................................................... 9 Estágio 2................................................................... 9 Estágio 3................................................................. 10 Estágio 4................................................................. 11 Estágio 5................................................................. 11 Contêineres do sistema de arquivos virtuais criptografados..............................12 Registro.................................................................. 12 Operações de comando e controle......................... 12 Atividades..................................................................... 14 Versão de 64 bits......................................................... 15 Nomes de arquivos................................................. 15 Diferenças nos estágios......................................... 16 Conclusão..................................................................... 16 Proteção....................................................................... 16 Apêndice...................................................................... 18 Arquivos de dados.................................................. 18 Indicadores de comprometimento............................... 20 MD5s do arquivo.................................................... 20 Nomes/caminhos de arquivo................................. 20 Atributos estendidos.............................................. 21 Registro.................................................................. 21 VISÃO GERAL No universo das ameaças de malware, apenas alguns raros exemplos podem ser de fato considerados inovadores e quase inigualáveis. Percebemos que o Regin pertence a esse tipo de malware. Trata-se de um software extremamente complexo que pode ser personalizado com uma imensa variedade de recursos que podem ser implantados de acordo com o alvo. Ele foi desenvolvido em uma estrutura que favorece operações prolongadas de coleta de dados, enquanto permanece despercebido. Ele é extraordinariamente diligente em ocultar a si e suas atividades nos computadores afetados. Sua dissimulação combina muitas das técnicas mais avançadas que já vimos em uso. O principal objetivo do Regin é reunir informações. Ele já esteve envolvido em operações de coleta de dados de organizações governamentais, operadores de infraestrutura, empresas, instituições acadêmicas e pessoas físicas. O nível de sofisticação e complexidade do Regin sugere que a ameaça contou com equipes bem preparadas de desenvolvedores por muitos meses ou anos para seu desenvolvimento e manutenção. O Regin é uma ameaça modular, de muitos estágios, o que significa que tem inúmeros componentes, todos dependentes entre si, para realizar operações de ataque. Essa abordagem modular dá a seus operadores a flexibilidade de poderem carregar recursos personalizados, ajustados para alvos específicos, quando necessário. Algumas atividades personalizadas são muito avançadas e demonstram um alto grau de conhecimento em setores especializados. O design modular também dificulta a análise da ameaça, pois todos os componentes precisam estar disponíveis para possibilitar a compreensão. Essa abordagem modular foi encontrada em outras famílias de malware sofisticadas, como Flamer e Weevil (A Máscara), ao passo que a arquitetura de carregamento em vários estágios assemelha-se à da família de ameaças Duqu/Stuxnet. O Regin difere das "tradicionais" ameaças persistentes avançadas (APTs, na sigla em inglês) tanto em termos de técnica como de finalidade. As APTs normalmente buscam informações específicas, principalmente propriedade intelectual. O objetivo do Regin é outro. Ele é usado para coletar dados e monitorar continuamente organizações ou indivíduos específicos. Este relatório contém uma análise técnica do Regin, com base em um número de amostras e componentes identificados. Esta análise ilustra a arquitetura do Regin e as diversas atividades à sua disposição. INTRODUÇÃO O Regin tem vários recursos padrão, principalmente no que diz respeito ao monitoramento de alvos e roubo de dados. Regin: Ferramenta de espionagem de alto nível possibilita vigilância dissimulada Introdução O Regin é uma ferramenta de coleta de dados para várias finalidades que já existe há alguns anos. A Symantec começou a analisar essa ameaça no fim de 2013. Foram encontradas várias versões do Regin soltas, direcionadas a várias empresas de grande porte, instituições, organizações acadêmicas e pessoas físicas. O Regin tem vários recursos padrão, principalmente no que diz respeito ao monitoramento de alvos e roubo de dados. Ele também consegue carregar recursos personalizados, ajustados para alvos específicos. Algumas das atividades personalizadas do Regin apontam para um alto nível de conhecimentos especializados em certos setores, como software de infraestrutura de telecomunicação, na área de desenvolvimento. O Regin é capaz de instalar uma grande quantidade de atividades adicionais, algumas altamente personalizadas para o computador-alvo. Os recursos padrão da ameaça incluem vários aspectos de Cavalo de Troia de acesso remoto (RAT), como capturas de telas e o controle das funções de apontar e clicar do mouse. O Regin também é configurado para roubar senhas, monitorar o tráfego de rede e coletar informações sobre processos e utilização da memória. Ele também pode procurar arquivos excluídos no computador infectado e recuperá-los. Módulos de atividades mais avançados desenvolvidos com metas específicas também foram encontrados em nossas investigações. Por exemplo, um módulo foi criado para monitorar o tráfego de rede para servidores Web Microsoft IIS (Internet Information Services), outro, para coletar o tráfego administrativo de controladoras de estação de base de telefonia móvel, ao passo que um outro foi criado especificamente para analisar mensagens de email de bancos de dados do Exchange. O Regin empenha-se fortemente em ocultar os dados que rouba. Valiosos dados-alvo geralmente não são gravados em disco. Em alguns casos, a Symantec só conseguiu recuperar as amostras da ameaça, mas não os arquivos contendo os dados roubados. Cronograma A Symantec está ciente de duas versões distintas do Regin. A versão 1.0 parece ter sido usada pelo menos entre 2008 e 2011. A versão 2.0 tem sido usada desde 2013, embora possa ter sido usada anteriormente. A versão 1.0 parece ter sido retirada abruptamente de circulação em 2011. As amostras da versão 1.0 encontradas após essa data parecem ter sido incorretamente removidas ou não estão mais acessíveis para remoção pelos invasores. Este relatório baseia-se principalmente em nossa análise do Regin versão 1.0. Também tocamos na versão 2.0, da qual só recuperamos arquivos de 64 bits. A Symantec atribuiu esses identificadores de versão porque elas são as duas únicas versões que foram adquiridas. O Regin provavelmente tem mais de duas versões. É possível que haja versões anteriores à 1.0 e versões entre a 1.0 e a 2.0. Página 5 Regin: Ferramenta de espionagem de alto nível possibilita vigilância dissimulada Perfil-alvo Os operadores do Regin não parecem interessados em um setor de indústria específico. Foram observadas infecções do Regin em várias organizações, inclusive empresas privadas, entidades governamentais e instituições de pesquisa. As infecções também afetam várias regiões geográficas. Elas foram identificadas principalmente em 10 regiões distintas. Vetor de infecção O vetor de infecção varia entre os alvos. Há um vetor de infecção reproduzível ainda não confirmado no momento desta redação. Os alvos podem ser induzidos a visitar versões forjadas de sites conhecidos, e a ameaça se instala através do navegador da Web ou da exploração de um aplicativo. Em um computador, os arquivos de log mostram que o Regin se originou no Yahoo! Instant Messenger por meio de uma exploração não confirmada. Figura 1. Infecções do Regin confirmadas por setor Figura 2. Infecções do Regin confirmadas por país Página 6 ARQUITETURA O driver inicial do estágio 1 é o único código claramente visível no computador. Todos os outros estágios são armazenados como blobs de dados criptografados... Regin: Ferramenta de espionagem de alto nível possibilita vigilância dissimulada Arquitetura O Regin tem uma arquitetura com seis estágios. Os estágios iniciais envolvem a instalação e a configuração dos serviços internos da ameaça. Nos estágios posteriores, as principais atividades do Regin entram em ação. Esta seção apresenta uma visão geral rápida do formato e da finalidade de cada estágio. Os estágios mais interessantes são os executáveis e arquivos de dados armazenados nos estágios 4 e 5. O driver inicial do estágio 1 é o único código claramente visível no computador. Todos os outros estágios são armazenados como blobs de dados criptografados, como um arquivo ou em uma área de armazenamento de arquivos não tradicional, como o Registro, atributos estendidos ou setores brutos no fim do disco. Tabela 1. Os seis estágios do Regin Estágios Componentes Estágio 0 Infecção. Instala o Regin no computador de destino Estágio 1 Carrega o driver Estágio 2 Carrega o driver Estágio 3 Carrega elementos de compactação, criptografia, rede e processamento para um sistema de arquivos virtuais criptografados (EVFS). Estágio 4 Utiliza o EVFS e carrega drivers de modo de kernel adicionais, incluindo atividades. Estágio 5 Principais atividades e arquivos de dados Figura 3. Arquitetura do Regin Página 8 Regin: Ferramenta de espionagem de alto nível possibilita vigilância dissimulada Estágio 0 (infecção) O Symantec Security Response não tinha o material de infecção do Regin no momento desta redação. A Symantec acredita que assim que o arquivo de infecção é executado no computador de destino, ele instala e inicia o estágio 1. É provável que o estágio 0 seja responsável por configurar vários atributos estendidos e/ou chaves e valores do Registro que contêm versões codificadas dos estágios 2, 3 e possivelmente dos estágios 4 e seguintes. O arquivo de infecção pode ser temporário, em vez de agir como um arquivo executável, e possivelmente faz parte do código de exploração do vetor de infecção. Estágio 1 O estágio 1 é o ponto de carregamento inicial da ameaça. Há dois nomes de arquivo conhecidos do estágio 1: • usbclass.sys (versão 1.0) • adpu160.sys (versão 2.0) Esses são drivers do kernel que carregam e executam o estágio 2. Esses drivers do kernel podem ser registrados como um serviço do sistema ou ter uma chave de Registro associada para carregar o driver enquanto o computador é inicializado. O estágio 1 apenas lê e executa o estágio 2 a partir de um conjunto de atributos NTFS estendidos. Se nenhum atributo estendido é encontrado, o estágio 2 é executado a partir de um conjunto de chaves do Registro. Estágio 2 O estágio 2 é um driver do kernel que simplesmente extrai, instala e executa o estágio 3. O estágio 2 não é armazenado no sistema de arquivos tradicional, e sim criptografado em um atributo estendido ou um blob de chaves do Registro. O estágio 2 pode ser encontrado criptografado em: Atributo estendido • %Windir% • %Windir%\fonts • %Windir%\cursors (possivelmente somente na versão 2.0) Subchave do Registro • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4F20E605-9452-4787-B793-D0204917CA58} • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\RestoreList\VideoBase (possivelmente somente na versão 2.0) Esse estágio também pode ocultar as instâncias em execução do estágio 1. Depois que isso acontece, não há outros artefatos de código claramente visíveis. Semelhante aos estágios anteriores, o estágio 2 detecta e carrega uma versão criptografada do estágio 3 a partir de atributos NTFS estendidos ou de um blob de chaves do Registro. O estágio 2 também pode monitorar o estado da ameaça. Esse estágio insere o arquivo msrdc64.dat, que parece ter sempre 512 bytes. Os primeiros dois bytes são usados e os demais bytes ficam definidos como zero. O segundo byte indica o número máximo exclusivo de instâncias que podem ser executadas, e ele é definido como dois. Isso significa que não pode haver mais de uma instância em execução ao mesmo tempo. O primeiro byte indica quantas instâncias foram executadas ou tentaram ser executadas. Portanto, as possíveis combinações dos primeiros dois bytes são: • 00 02 (a ameaça não está em execução) • 01 02 (a ameaça está em execução) • 02 02 (a ameaça estava em execução e uma segunda instância começou). Página 9 Regin: Ferramenta de espionagem de alto nível possibilita vigilância dissimulada Estágio 3 O estágio 3 é uma DLL do modo kernel e não fica armazenada no sistema de arquivos tradicional. Esse arquivo está criptografado em um atributo estendido ou blob de chave do Registro. O estágio 3 pode estar nos seguintes locais: Atributo estendido • %Windir%\system32 • %Windir%\system32\drivers Subchave do Registro • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4F20E605-9452-4787-B793-D0204917CA5A} O arquivo tem de seis a sete vezes o tamanho do driver do estágio 2. Além de carregar e executar o estágio 4, o estágio 3 oferece uma estrutura para os estágios de nível superior. Os estágios 3 e posteriores baseiam-se em uma estrutura modular de código. Esses módulos oferecem funções por meio de uma interface privada e personalizada. Os arquivos do estágio 3 e posteriores podem "exportar" funcionalidades para outras partes do Regin. No caso do estágio 3, estes elementos primitivos são oferecidos: • O organizador, que analisa registros personalizados encontrados nos dados anexados dos arquivos executáveis do estágio 3 em diante. Esses registros contêm uma lista de funcionalidades do Regin a serem executadas. Um registro começa com o número 0xD912FEAB (em ordenação "little-endian") • Rotinas de compactação e descompactação • Rotinas de criptografia e descriptografia • Rotinas para recuperar locais de armazenamento de componentes mais importantes (estágio 4) • Rotinas para lidar com um sistema de arquivos virtuais criptografados usados pelo estágio 4 • Elementos primitivos de rede Esses elementos primitivos são fornecidos por meio de uma metodologia de exportação personalizada. Metodologia de exportação A DLL do estágio 3 exporta uma grande variedade de funcionalidades através de uma metodologia de exportação personalizada. A interface usada para a funcionalidade de exportação não utiliza o mecanismo de exportação de DLL tradicional do Windows por nome ou ordinal. Tabela 2. Exemplo de métodos do Regin organizados em 12 grupos Maior Funcionalidade 0001h Principal 000Dh Compactação, descompactação 000Fh Criptografia, descriptografia Os métodos de exportação do Regin são citados por um tuplo que consiste em um número maior e um número menor. O estágio 3 exporta centenas de métodos, organizados em 12 grupos principais. Os números usados variam com as versões. Adquirimos artefatos usando dois esquemas de numeração diferentes. A tabela 2 é um exemplo de listagem. 003Dh Processamento do EVFS 0007h Gerenciamento de contêineres 000Bh Gerenciamento de logs 0033h Carregador 0011h Rede 0013h Rede C373h Comando e controle de TCP Com a natureza modular do Regin, os módulos do kernel do estágio 4 e os módulos do usuário do estágio 5 (atividades) podem fornecer a funcionalidade e as rotinas de exportação usando o mesmo esquema de numeração maior e menor. 0019h Comando e controle de UDP 0009h Processador de comando e controle Página 10 Regin: Ferramenta de espionagem de alto nível possibilita vigilância dissimulada Estágio 4 Os arquivos do estágio 4, que são carregados no estágio 3, consistem em um organizador do modo de usuário e vários módulos de atividades do kernel. Eles são armazenados em dois contêineres do EVFS como arquivos: • %System%\config\SystemAudit.Evt: contém drivers de kernel do estágio 4, o que constitui a parte do modo do kernel das atividades do Regin. • %System%\config\SecurityAudit.Evt: contém uma versão do modo de usuário do estágio 3. Os arquivos são injetados em services.exe. Os invasores que operavam o Regin limpavam os computadores comprometidos depois de terminarem o serviço e geralmente não removiam os artefatos dos estágios 4 e 5 do sistema. O estágio 4 também usa a mesma metodologia de exportação descrita no estágio 3. Estágio 5 O estágio 5 consiste na principal funcionalidade de atividades do Regin. Os arquivos do estágio 5 são injetados em services.exe no estágio 4. Os arquivos do estágio 5 são contêineres do EVFS com outros arquivos: • %System%\config\SystemLog.evt: contém as DLLs do modo de usuário do estágio 5. Elas constituem a atividade do Regin. • %System%\config\SecurityLog.evt: contém arquivos de dados do estágio 5, usados pelos componentes dos estágios 4 e 5 para armazenar vários itens de dados • %System%\config\ApplicationLog.evt: outro contêiner de logs do estágio 5, que é consultado pelos arquivos de dados do estágio 5 • %Windir%\ime\imesc5\dicts\pintlgbp.imd (versão 2.0) • %Windir%\ime\imesc5\dicts\pintlgbs.imd (versão 2.0) A atividade do Regin envolve as DLLs contidas no contêiner do EVFS SystemLog.evt. A funcionalidade de atividade difere de acordo com o computador de destino. Os arquivos de atividades personalizados são provavelmente entregues para cada ambiente específico. Um exemplo de funcionalidade de atividade observada até o momento inclui: • Espionar tráfego de rede básico • Retirar dados através de vários canais (TCP, UDP, ICMP, HTTP) • Coletar informações do computador • Roubar senhas • Coletar informações de processo e memória • Rastrear o sistema de arquivos • Recursos de análise posterior básicos (por exemplo, recuperar arquivos que foram excluídos) • Manipulação de IU (atividades remotas de apontar e clicar do mouse, capturas de tela e outras) • Enumerar servidores Web IIS e roubar logs • Espionar o tráfego da rede administrativa GSM BSC Figura 4. Layout físico de um contêiner do EVFS Página 11 Regin: Ferramenta de espionagem de alto nível possibilita vigilância dissimulada Contêineres do sistema de arquivos virtuais criptografados O Regin armazena arquivos de dados e atividades no disco em arquivos do sistema de arquivos virtuais criptografados. Esses arquivos são acessados pelas principais rotinas 3Dh. Os arquivos armazenados em contêineres do EVFS são criptografados com uma variante de RC5, usando blocos de 64 bits e 20 rodadas. O modo de criptografia é o de feedback de cifras (CFB) invertido. As extensões conhecidas dos contêineres do EVFS são *.evt e *.imd. A estrutura de um contêiner assemelha-se à do sistema de arquivos FAT. Uma diferença importante é que os arquivos não têm um nome. Eles são identificados por uma tag binária. A tag em si é a concatenação de um número maior e um número menor. O número maior normalmente indica o principal grupo de funções que tratará do arquivo. Tabela 3. O cabeçalho do contêiner Deslocamento Tipo Descrição 00h WORD Tamanho do setor em bytes 02h WORD Total máximo de setores 04h WORD Total máximo de arquivos 06h BYTE Tamanho de tag (taglen) de arquivo 07h DWORD CRC de cabeçalho 0Bh DWORD CRC de tabela de arquivos 0Fh WORD Número de arquivos 11h WORD Número de setores em uso 13h - Bitmap de uso de setor Tabela 4. A tabela de entrada de arquivos do contêiner Um contêiner é iniciado com o cabeçalho na tabela 3 (em ordenação "little-endian"). Deslocamento Tipo Descrição 00h DWORD CRC O cabeçalho é seguido pela tabela de entrada de arquivos (Tabela 4). Cada entrada de arquivo tem 13h+taglen bytes. 04h DWORD Deslocamento de arquivo 08h DWORD Deslocamento até primeiro setor com dados de arquivo 0Ch BYTE[taglen] Tag de arquivo Seguem os setores (Tabela 5). Um setor de bytes de sectsize começa com um DWORD apontando para o setor seguinte (se o arquivo não couber em um setor apenas), seguido de sectsize de 4 bytes de dados de atividades. Como explicado acima, os arquivos são criptografados. Também pode haver outras camadas de criptografia e compactação, mas elas seriam processadas por componentes mais complexos. Tabela 5. Os setores do contêiner Deslocamento Tipo Descrição 00h DWORD Próximo deslocamento de setor ou 0 04h BYTE[sectsize-4] Dados Operações de comando e controle As operações de comando e controle do Regin são extensas. Essas operações de canal traseiro são bidirecionais. Isso significa que os invasores podem iniciar comunicações com computadores comprometidos na rede da fronteira ou os computadores comprometidos podem iniciar comunicações com o invasor. Além disso, os computadores comprometidos podem servir de proxy para outras infecções, e operações de comando e controle também podem ocorrer ponto a ponto. Todas as comunicações são fortemente criptografadas e podem acontecer em dois estágios, nos quais o invasor pode contatar um computador comprometido usando um canal para instruí-lo a iniciar a comunicação em outro canal. Há quatro protocolos de transporte disponíveis para operações de comando e controle: • ICMP: informações sobre atividades podem ser codificadas e incorporadas no lugar de dados ICMP/ping legítimos. A string "shit" é espalhada no pacote para validação de dados. E as verificações de CRC usam seed "31337". • UDP: atividades de UDP bruto • TCP: atividades de TCP bruto • HTTP: informações sobre atividades podem ser codificadas e inseridas nos dados do cookie com os nomes SESSID, SMSWAP, TW, WINKER, TIMESET, LASTVISIT, AST.NET_SessionId, PHPSESSID ou phpAds_d. Essas informações podem ser combinadas a outro cookie para validação com os nomes USERIDTK, UID, GRID, UID=PREF=ID, TM, __utma, LM, TMARK, VERSION ou CURRENT As operações de comando e controle são assumidas por vários módulos, incluindo os principais grupos C373h, 19h, 9, e atividades do estágio 5, como C375h e 1Bh. Registro O Regin registra dados no arquivo ApplicationLog.dat. Esse arquivo não é um contêiner criptografado, mas é criptografado e compactado. Página 12 ATIVIDADES A natureza abrangente do Regin e de suas atividades personalizadas indica a possibilidade da existência de muitas atividades para aprimorar os recursos do Regin... Regin: Ferramenta de espionagem de alto nível possibilita vigilância dissimulada Atividades O Regin pode ser distribuído com vários módulos de atividades ou receber módulos de atividades após a infecção. A natureza abrangente do Regin e de suas atividades personalizadas indica a possibilidade da existência de atividades adicionais para aprimorar os recursos do Regin. Também encontramos arquivos de dados acompanhando módulos de atividades que não foram recuperados. A tabela a seguir descreve os módulos de atividades do kernel do estágio 4 e os módulos de atividades do modo de usuário do estágio 5, dos quais vimos diversas variantes de uso do Regin. Tabela 6. Regin: módulos de atividades do kernel no estágio 4 e módulos de atividades do modo de usuário no estágio 5 Tipo de arquivo Maior Descrição SYS 0003 Driver SYS C433 Rootkit SYS C42B Carregador PE SYS C42D Injeção de DLL SYS C3C3 Driver de filtro de pacote de rede semelhante ao WinPCap (filtro de protocolo versão 3.5) Usado para definir filtros de passagem de TCP e UDP e se desviar de firewalls. Executa bytecode BPF (Berkeley Packet Filter), armazenado nos arquivos de dados do estágio 5. SYS 4E69 Bloqueador de porta de rede DLL C363 Captura de pacote de rede DLL 4E3B Recuperar informações de proxy de um navegador da Web (Internet Explorer, Netscape, Firefox) nos arquivos de Registro ou de configuração (por exemplo, prefs.js, refs.js, etc.) Enumerar sessões e contas de usuário DLL 290B Roubo de senha • Credenciais do Windows Explorer • Registros pstore do Windows Explorer • Configurações antigas do Internet Explorer • Dados de um pacote de notificação Winlogon chamado “cryptpp” DLL C375 Cookies/HTTP de comando e controle DLL C383 Comunicações SSL DLL C361 Suporte a funções de criptografia DLL 001B Canal traseiro ICMP DLL C399 Criador de registro para ApplicationLog.Evt DLL C39F Processa arquivo: %Temp%\~b3y7f.tmp DLL C3A1 Funções diversas DLL 28A5 Funções diversas DLL C3C1 Funções diversas DLL C3B5 Coletar informações do sistema • Memória da CPU • Unidades e compartilhamentos • Dispositivos • Informações do Windows (incluindo tipo, versão, informações de licença e proprietário) • Software instalado • Processos em execução (através de HKEY_PERFORMANCE_DATA id 230) • Serviços • Tarefas e trabalhos agendados • Sessões em execução no desktop • Informações de contas do usuário • Regras/políticas de auditoria do sistema • Hora do sistema e hora de instalação do Windows Página 14 Regin: Ferramenta de espionagem de alto nível possibilita vigilância dissimulada DLL C36B Manipulação de IU • Capturas de tela • Registro de pressionamentos de tecla • Bloqueio Ctrl-Alt-Del de entrada/estação de trabalho • Funcionalidade de clique (com três comandos: ir, clicar e soltar, retornar à posição original) • Término de processos DLL C351 Elementos primitivos de exploração do sistema de arquivos e exploração no nível de análise posterior incluindo um analisador NTFS bruto • Obter propriedades e informações de arquivo diversas • Navegar em diretórios • Ler e gravar arquivos • Mover e copiar arquivos • Ler e recuperar arquivos parcial ou totalmente excluídos • Computar hashes de arquivos DLL 2B5D Manipulação de processos e módulos • Ler processos e módulos • Tempo de execução de processos, cotas, privilégios • Ignorar arquivos da Microsoft em russo ou inglês durante verificação • Procurar arquivos PE recém-introduzidos nos últimos dois dias DLL C3CD Enumerar interfaces TCP/IP em %System%\CurrentControlSet\Services\Tcpip\Linkage\bind DLL C38F Utilitário TCPDump DLL C3C5 Libnet binária DLL 27E9 Roubo de log de servidor Web IIS Enumeração através de objetos COM para localizar logs IIS. Capacidade de recuperar informações de log parciais ou completas. • Parcial: tipo de log, último log, carimbos de hora de log antigos • Completa: todos os dados de log são retirados O módulo de roubo de log do servidor Web IIS, 27E9h, é um exemplo de módulo de atividades que foi instalado depois da infecção inicial e foi especificamente implantado para um determinado alvo. Versão de 64 bits Somente uma pequena quantidade de arquivos do Regin de 64 bits foi recuperada. Essas amostras podem representar a versão 2.0 ou suas diferenças podem ser unicamente específicas às versões de 64 bits do Regin. Também recuperamos arquivos em computadores infectados que podem estar associados ou não ao Regin de 64 bits, incluindo diversas variantes do svcsstat.exe, um arquivo que procura recuperar dados binários em pipes ou soquetes e executar os dados. Nomes de arquivos Os arquivos recuperados não parecem variar fundamentalmente de seus equivalentes de 32 bits, fora algumas poucas diferenças significativas. As versões de 32 bits e 64 bits do Regin usam diferentes nomes de arquivo. Essas diferenças aparecem na primeira seção deste documento, e também no apêndice. Acima de tudo, na versão de 64 bits do Regin, os nomes de contêineres mudaram: • PINTLGBP.IMD substitui SystemLog.Evt • PINTLGBPS.IMD substitui SecurityLog.Evt Página 15 Regin: Ferramenta de espionagem de alto nível possibilita vigilância dissimulada Diferenças nos estágios O estágio 1 da versão de 64 bits do Regin (wshnetc.dll) não é mais um driver de modo do kernel, já que os drivers de 64 bits do Windows precisam ser assinados. O estágio 1 é uma DLL de modo de usuário carregada como um assistente Winsock quando o computador é inicializado. Em vez de carregar o estágio 2 a partir de um atributo NTFS estendido, o estágio 1 procura a última partição (em termos de local físico) no disco e procura a atividade nos setores brutos dessa área do disco. O estágio 3 do Regin de 64 bits não foi recuperado. Acreditamos que ele talvez não exista, já que a versão de 32 bits é um driver. O estágio 4 é um organizador, assim como seu equivalente de 32 bits, e utiliza os mesmos valores maiores e menores para a funcionalidade de exportação. O estágio 5 usa os seguintes nomes de arquivo: • %Windir%\IME\IMESC5\DICTS\PINTLGBP.IMD contém atividades de usuário do estágio 5 e substitui SystemLog. Evt na versão de 32 bits • %Windir%\IME\IMESC5\DICTS\PINTLGBS.IMD contém arquivos de dados do estágio 5 e substitui SecurityLog. Evt na versão de 32 bits • Os arquivos equivalentes de SystemAudit.Evt e SecurityAudit.Evt não foram recuperados Nenhum módulo de atividades do estágio 5 foi recuperado. Conclusão O Regin é uma ameaça altamente complexa que tem sido usada para campanhas de coleta de informações ou reunião de dados em grande escala. O desenvolvimento e a operação dessa ameaça deve ter exigido um grande investimento em termos de tempo e recursos. Ameaças dessa natureza são raras e comparam-se somente à família Stuxnet/Duqu de malware. A descoberta do Regin serve para destacar como investimentos significativos continuam a ser feitos no desenvolvimento de ferramentas para reunir informações. Muitos componentes do Regin permanecem desconhecidos, e podem existir funcionalidades e versões adicionais. Proteção A Symantec e os produtos Norton detectam essa ameaça como Backdoor.Regin. Página 16 APÊNDICE Regin: Ferramenta de espionagem de alto nível possibilita vigilância dissimulada Apêndice Arquivos de dados Os arquivos de dados do Regin são classificados como componentes do estágio 5 e estão dentro de um contêiner do EVFS. Tabela 7. Arquivos de dados usados pela DLL de estrutura do estágio 4 Maior Menor Descrição 0001 - - 000D - - 000F 01 Blobs de alta entropia, dados criptográficos 02 Blobs de alta entropia, dados criptográficos 003D - - 0007 - - 000B 01 Contém um caminho para o arquivo de log. Normalmente, %System\config\ApplicationLog.Evt 02 Arquivos pequenos de 8 bytes 01 Um único DWORD, como 111Ch 03 Um único DWORD, como 1114h 0011 - - 0013 01 Lista de registros desconhecida 02 Um único byte, como 3 01 Bytecode BPF do driver netpcap — permite passagem de UDP 02 Um valor de WORD, como 1 01 Bytecode BPF do driver netpcap — permite passagem de TCP 02 Um valor de WORD, como 1 00 Um único DWORD, como 11030B15h 01 Contém informações de local de comando e controle 02 Rotinas de comando e controle a serem executadas: • (C375, 1) parâm= 08 02 • (19, 1) parâm= 44 57 58 00 • (C373, 1) parâm= 08 02 • (1B, 1) parâm= 20 00 03 Rotinas a serem executadas • (4E69, 2) • (19, 2) • (1B, 2) • (C373, 2)( • C375, 2) • (C383, 2)(C363, 2) 07 Chave RC5 usada para descriptografar pacotes de comando e controle 09 Dados desconhecidos 0B Dados desconhecidos 12 Um único byte, como 1 17 Dados desconhecidos 0033 C373 0019 0009 Página 18 Regin: Ferramenta de espionagem de alto nível possibilita vigilância dissimulada Como os arquivos de dados são armazenados em um contêiner, eles não têm nomes. Assim como os módulos do estágio 5, eles são consultados pela filetag, que é a agregação dos identificadores maior e menor. O identificador maior mostra qual grupo de rotina maior provavelmente processa ou cria o arquivo. Nem todos os arquivos de dados foram recuperados; portanto, as informações permanecem incompletas. Os arquivos de dados associados aos módulos do kernel do estágio 4 não foram recuperados. Tabela 8. Arquivos de dados usados por módulos do estágio 5 (atividades) Maior Menor Descrição C363 02 6 bytes (01 00 00 00 00 00) 4E3B - 290B - C375 01 Dword (1) 02 Dword (0) 01 Dword (1) A Tabela 8 relaciona os arquivos de dados recuperados usados pelos módulos do estágio 5. C383 02 Dword (0) Os módulos associados que supostamente manipulam os arquivos de dados não foram recuperados. 10 64 bytes (512 bits) Diffie Hellman, p (prime) 11 Byte (2) Diffie Hellman, g (gerador) 10 Arquivo contendo carimbos de data e hora e alta entropia dataUnclear 11 Dword (E10h) 12 Dword (2) C361 001B - C399 - C39F 00 Arquivo pequeno, 18h bytes, baixa entropia 01 Caminho unicode não criptografado, %Temp%\~B3Y7F.tmp C3A1 01 Arquivo pequeno, 6 bytes (08 01 00 00 00 01) 28A5 02 Arquivo pequeno, 18h bytes, desconhecido C3C1 - - C3B5 - - C36B - - C351 - - 2B5D - - C3CD - - C38F - - C3C5 - - 27E9 - - Tabela 9. Arquivos de dados órfãos Maior Menor Descrição 4E25 28A4 DEAB Página 19 00 Byte (1) 01 Byte (2) 00 Desconhecido 02 Arquivo pequeno, 8 bytes (01 00 00 00 00 00 00 00) 01 Arquivo pequeno, 8 bytes (00 00 01 01 04 00 00 00) Regin: Ferramenta de espionagem de alto nível possibilita vigilância dissimulada Indicadores de comprometimento Os detalhes a seguir podem ser usados para ajudar a determinar se você foi atingido por essa ameaça. MD5s do arquivo 2c8b9d2885543d7ade3cae98225e263b 4b6b86c7fec1c574706cecedf44abded 187044596bc1328efa0ed636d8aa4a5c 06665b96e293b23acc80451abb413e50 d240f06e98c8d3e647cbf4d442d79475 6662c390b2bbbd291ec7987388fc75d7 ffb0b9b5b610191051a7bdf0806e1e47 b29ca4f22ae7b7b25f79c1d4a421139d 1c024e599ac055312a4ab75b3950040a ba7bb65634ce1e30c1e5415be3d1db1d b505d65721bb2453d5039a389113b566 b269894f434657db2b15949641a67532 bfbe8c3ee78750c3a520480700e440f8 Nomes/caminhos de arquivo usbclass.sys adpu160.sys msrdc64.dat msdcsvc.dat %System%\config\SystemAudit.Evt %System%\config\SecurityAudit.Evt %System%\config\SystemLog.evt %System%\config\ApplicationLog.evt %Windir%\ime\imesc5\dicts\pintlgbs.imd %Windir%\ime\imesc5\dicts\pintlgbp.imd %Windir%\system32\winhttpc.dll %Windir%\system32\wshnetc.dll %Windir%\SysWow64\wshnetc.dll %Windir%\system32\svcstat.exe %Windir%\system32\svcsstat.exe Página 20 Regin: Ferramenta de espionagem de alto nível possibilita vigilância dissimulada Atributos estendidos %Windir% %Windir%\cursors %Windir%\fonts %Windir%\System32 %Windir%\System32\drivers Registro HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4F20E605-9452-4787-B793-D0204917CA58} HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\RestoreList\VideoBase HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4F20E605-9452-4787-B793-D0204917CA5A} Página 21 Sobre a Symantec Siga-nos no Twitter A Symantec Corporation (NASDAQ: SYMC) é especialista em proteção de informações e ajuda pessoas, empresas e governos que procuram aproveitar as oportunidades oferecidas pela tecnologia a qualquer momento, em qualquer lugar. Fundada em abril de 1982, a Symantec, uma empresa da Fortune 500 que comanda uma das maiores redes de informações de dados globais, vem oferecendo soluções de segurança, backup e disponibilidade líderes do setor para os locais onde informações vitais são armazenadas, acessadas e compartilhadas. Os mais de 20.000 funcionários da empresa residem em mais de 50 países. Noventa e nove por cento das empresas da Fortune 500 são clientes da Symantec. No ano fiscal de 2014, a Symantec registrou uma receita de US$ 6,7 bilhões. Para saber mais, acesse www.symantec.com ou conecte-se com a Symantec no site: go.symantec.com/social/. Visite nosso blog Para obter os números de contatos de escritórios em um determinado país, acesse nosso site. Symantec Corporation - Sede mundial 350 Ellis St. Mountain View, CA 94043 USA +1 (650) 527 8000 +1 (800) 721 3934 www.symantec.com Symantec do Brasil Av. Dr. Chucri Zaidan, 920 14º andar – São Paulo – SP CEP: 04583-904 (11) 5189 6230 www.symantec.com.br Copyright © 2014 Symantec Corporation. Todos os direitos reservados. Symantec, o logotipo da Symantec e o logotipo da marca de verificação são marcas comerciais ou registradas da Symantec Corporation ou de suas afiliadas nos Estados Unidos e em outros países. Outros nomes podem ser marcas comerciais dos respectivos proprietários. Quaisquer informações técnicas disponibilizadas pela Symantec Corporation representam trabalhos com direitos de copyright da Symantec Corporation e pertencem à Symantec Corporation. NENHUMA GARANTIA. As informações técnicas são fornecidas como estão e a Symantec Corporation não oferece nenhuma garantia de sua precisão ou uso. O uso da documentação ou das informações técnicas aqui contidas ocorre sob o risco do usuário. A documentação poderá incluir problemas técnicos ou outras imprecisões ou erros tipográficos. A Symantec se reserva o direito de fazer alterações sem aviso prévio.