O Encryptor Sombra: uma dupla ameaça
- Quarta, 21st Outubro, 2015
- 01:16am
Uma família de ransomware Trojan que criptografa arquivos e adiciona as extensões ".xtbl" e ".ytbl" surgiu no final de 2014 / início de 2015 e rapidamente se estabeleceu entre os três principais encryptors mais difundidos na Rússia (juntamente com Trojan-Ransom.Win32 .Cryakl e Trojan-Ransom.BAT.Scatter). Esta ameaça foi atribuído o veredicto Trojan-Ransom.Win32.Shade acordo com a classificação da Kaspersky Lab. O nome original dado ao codificador por seu criador não é conhecido; outros fornecedores de segurança detectá-lo como Trojan.Encoder.858, Ransom: Win32 / Troldesh.
Não houve nenhuma evolução significativa deste Trojan ao longo do tempo - apenas o formato do nome do arquivo criptografado, os endereços de servidor C & C e as chaves RSA têm vindo a mudar.
Existem dois métodos principais usados para entregar o malware para os computadores das vítimas: mensagens de spam e explorar kits (em particular, NuclearEK).
Quando entregues via spam, o usuário recebe uma carta com um arquivo malicioso anexado. O sistema está infectado quando o usuário tenta abrir o anexo. Os seguintes nomes de arquivos têm sido utilizados quando se espalhando Trojan-Ransom.Win32.Shade:
- doc_dlea podpisi.com
- doc_dlea podpisi.rar
- documenti_589965465_documenti.com
- documenti_589965465_documenti.rar
- documenti_589965465_doc.scr
- doc_dlea podpisi.rar
- неподтвержден 308853.scr
- documenti dlea podpisi 05.08.2015.scr.exe
- akt sverki za 17082015.scr
Note-se que o nome do arquivo é alterado para cada campanha de envio em massa, de modo que os nomes de arquivo em potencial não estão limitados aos listados acima.
O segundo mecanismo de entrega - via explorar kit - é mais perigoso porque a infecção ocorre quando a vítima involuntariamente visita um site comprometido. Pode ser um local pertencente a cibercriminosos, ou um recurso legítimo que tenha sido hackeado. Na maioria dos casos, o usuário é completamente inconscientes do perigo do site poses. O código malicioso no site explora uma vulnerabilidade no navegador ou um plug-in, e em seguida, o Trojan é instalado secretamente no sistema. Ao contrário do método de entrega de spam, a vítima não tem sequer a executar um arquivo executável.
Depois Trojan-Ransom.Win32.Shade acaba no sistema, ele se conecta a um servidor C & C localizado na rede Tor, relata a infecção e solicita uma chave RSA-3072 pública que é posteriormente usada para criptografar arquivos (como discutido abaixo). Caso a tentativa de conexão falhar, o Trojan escolhe uma das 100 chaves públicas que são armazenados dentro de seu corpo apenas para essa eventualidade.
O cavalo de Tróia, em seguida, começa a criptografia de arquivos. Enquanto a digitalização de objetos para criptografar, ele usa a lista estática de extensões mostrado na imagem abaixo.
Quando a criptografia está concluída, uma imagem ameaçadora é definido como o fundo de tela:
O Trojan deixa pedidos de resgate nos arquivos README1.TXT, ..., README10.txt. O conteúdo desses arquivos são sempre os mesmos:
No entanto, diferentemente da maioria dos outros encryptors, Trojan-Ransom.Win32.Shade não pára por aí. Ele não termina o seu processo, mas em vez começa um loop infinito no qual ele solicita uma lista a partir do servidor C & C que contém as URLs de malware adicional. Em seguida, ele faz o download e instala o malware que-lo no sistema. Esse tipo de atividade é típica de download de bots. Temos visto malware dos seguintes famílias sendo baixado:
- Trojan.Win32.CMSBrute (uma descrição mais detalhada é fornecida abaixo).
- Trojan.Win32.Muref
- Trojan.Win32.Kovter
- Trojan-Downloader.Win32.Zemot
Abaixo está o código para o download e loop de ouvir:
Por isso é muito importante para executar uma varredura anti-malware completa do computador se o codificador Shade (ou os .xtbl, arquivos .ytbl ele cria) é detectado. Se não for tratada, o sistema irá provavelmente permanecer infectado com vários programas mal-intencionados baixados pelo codificador.
Características comuns de Trojans da família Sombra
- Escrito em C ++ usando STL e suas próprias classes.
- Estaticamente ligado com o cliente Tor.
- Usa impulso (threads), onda, bibliotecas OpenSSL.
- Cada amostra tem o URL de um servidor C & C codificado nele. Um total de 10 C & C endereços de servidor foram identificados em várias amostras, das quais oito estão actualmente activas. Todos os servidores C & C estão localizados na rede Tor.
- Todas as seqüências (incluindo os nomes de funções importadas) são AES criptografados. Eles são descriptografados quando o programa for iniciado, a tabela de importação é preenchida de forma dinâmica.
- Antes de estabelecer o novo fundo de tela, o antigo é salvo no registro.
- Normalmente embalado com UPX e um packer extra. Uma vez descompactado, é 1.817 KB de tamanho.
- Cria 10 arquivos idênticos nomeados README1.TXT, ... README10.txt no computador da vítima, contendo pedidos de resgate em russo e Inglês.
- Uma chave única AES 256-bit é gerada para criptografar o conteúdo eo nome de cada arquivo. A criptografia é feita em modo CBC com um vector de inicialização zero.
- Contém 100 chaves públicas RSA-3072 com o expoente público 65537 (um total de 300 diferentes chaves públicas foram detectados em várias amostras).
- Tem a capacidade de baixar e lançamento de malware.
O esquema de criptografia
Gerando um computador infectado ID
- O Trojan obtém o nome do computador (comp_name) com a ajuda da função API GetComputerName, eo número de processos (num_cpu) com a ajuda da função API GetSystemInfo;
- Usando o número de série do volume do sistema, ele calcula um 32-bit constante ea converte em uma cadeia de caracteres HEX (vol_const);
- Obtém dados sobre a versão do OS (OS_VERSION), dividido com o símbolo ";" (por exemplo, "5; 1; 2600; 1; Service Pack 3");
- Cria a seqüência comp_name num_cpu vol_const OS_VERSION;
- Calcula o hash MD5 de esta cadeia;
- Converte o hash MD5 em uma seqüência HEX e usa seus primeiros 20 caracteres como ID do computador.
Receber dados-chave
Quando a identificação do computador tiver sido gerado, o Trojan tenta se conectar ao servidor C & C localizado na rede Tor, envia o ID de computador para ele e recebe a chave RSA pública em troca. Se a tentativa de conexão falhar, uma das 100 chaves públicas RSA hardcoded no corpo Trojan é selecionado.
A criptografia de arquivos
O algoritmo AES 256 no modo CBC é utilizada para encriptar arquivos. Para cada arquivo criptografado, duas chaves aleatórias AES de 256 bits são gerados: um é usado para criptografar o conteúdo do arquivo, enquanto o outro é usado para criptografar o nome do arquivo. Estas chaves são colocados na estrutura key_data utilitário, que é então encriptado com a chave RSA seleccionado (de modo a ocupar 384 bytes após codificação) e colocado na extremidade do arquivo criptografado:
Na sintaxe C, essa restrição pode ser escrita como segue:
O Trojan tenta mudar o nome do arquivo criptografado utilizando o resultado do cálculo Base64 (AES_ENCRYPT (nome original do arquivo)). Xtbl (por exemplo ArSxrr + acw970LFQw.xtbl). Caso contrário, ele simplesmente acrescenta a extensão .ytbl ao nome do arquivo original. Em versões posteriores, o Trojan acrescenta ID do computador infectado e, em seguida, a extensão .xtbl ao nome do arquivo, por exemplo ArSxrr + acw970LFQw.043C17E72A1E91C6AE29.xtbl.
A comunicação com um servidor C & C
O endereço de um servidor C & C está contida no corpo do Trojan. Os servidores estão localizados na rede Tor e comunicação é estabelecida usando um cliente Tor que é ligado estaticamente para o Trojan.
O exemplo envia os seguintes pedidos para o servidor C & C:
- Pedido de uma nova chave RSA pública:
GET http: // <servidor> .onion / reg.php i =? ID & b = construir & v = versão e ss = estágio
ID - a identificação do computador infectado; construir - a identificação do Trojan amostra específica;versão - versão do Trojan (encontramos versões 1 e 2); fase - a fase de criptografia - pedido de uma nova chave pública ou uma mensagem sobre a conclusão de criptografia de arquivo. - Mensagem de erro:
GET http: // <servidor> .onion / err.php i =? ID & b = construir & v = versão & errar = erro
de erro - uma mensagem codificada por base64 sobre um erro durante a criptografia. - Relatório sobre estágio atual do codificador:
GET http: // <servidor> .onion / prog.php i = ID & b = construir & v = versão e ss = palco & c =contagem & f = acabamento
contagem - a contagem atual de arquivos criptografados; acabamento - a bandeira que a criptografia foi concluída.
- Nome do computador
- Nome de usuário
- endereço de IP
- Domínio do computador
- Lista de unidades lógicas
- Versão do Windows
- Lista de software instalada
Propagação da encryptor
Programa de parceria
O código que o usuário é solicitado a enviar e-mail para os cibercriminosos podem ter a forma ID | 0 se o código público foi recebido do servidor C & C, ou ID | key_number | construção | versão se uma das chaves públicas RSA hardcoded no corpo do Trojan foi selecionado, com o número correspondente usado para o valor key_number. ID é a identidade do computador infectado, construir e versão são valores numéricos que indicam, respectivamente, a ID da amostra de Tróia e versão específica do organismo codificador.
Ao analisar amostras do Tróia, detectamos várias combinações de valor 'construir', endereços de e-mail usados para se comunicar com os criminosos virtuais e endereços de C & C. Valores diferentes 'construir' estão associados a diferentes endereços de e-mail, embora a mesma C & C pode servir várias amostras diferentes do Trojan:
construir | C & C | o email |
2 | a4yhexpmth2ldj3v.onion | [email protected] [email protected] |
2 | a4yhexpmth2ldj3v.onion | [email protected] [email protected] |
4 | a4yhexpmth2ldj3v.onion | [email protected] [email protected] |
6 | a4yhexpmth2ldj3v.onion | [email protected] [email protected] |
2 | e4aibjtrguqlyaow.onion | [email protected] [email protected] |
15 | e4aibjtrguqlyaow.onion | [email protected] [email protected] |
12 | gxyvmhc55s4fss2q.onion | [email protected] [email protected] |
14 | gxyvmhc55s4fss2q.onion | [email protected] [email protected] |
4 | gxyvmhc55s4fss2q.onion | [email protected] [email protected] |
Observou-se a propagação de diferentes amostras a partir de duas versões do organismo codificador.Para cada amostra específica da mesma versão do Trojan existia uma combinação única de 'construir' (ID da amostra específica) eo endereço de e-mail (para comunicação com os cibercriminosos).
Embora não encontramos avisos parceria, com base nos dados que pode assumir o Trojan é distribuído e recolhido o resgate, por meio de uma rede de parcerias. Possivelmente, os IDs de malware amostra (o"acúmulo de valor") e os endereços de email diferentes estão associados com vários parceiros responsáveis pela distribuição deste programa malicioso.
Geografia
A maioria das infecções de Tróia ocorrem na Rússia, Ucrânia e Alemanha. De acordo com dados KSN, a distribuição de Tróia-Ransom.Win32.Shade é como se segue.
Rússia | 70,88% |
Alemanha | 8,42% |
Ucrânia | 6,48% |
Áustria | 3,91% |
Suíça | 2,98% |
Polônia | 1,45% |
Cazaquistão | 1,20% |
Belarus | 1,07% |
Brasil | 0,55% |
Transferido malware: Trojan para força bruta site senhas
Entre os programas mal-intencionados baixados pelo Trojan-Ransom.Win32.Shade é um trojan utilizado para força bruta site senhas. A organização interna da forcer bruta é muito semelhante à do organismo codificador em si Trojan - foi provavelmente criado pela mesma equipe de cibercriminosos. Este baixado bruta Trojan forcer foi atribuído o Trojan.Win32.CMSBrute veredicto.
Características comuns da família CMSBrute
- Escrito em C ++ usando STL e suas próprias classes.
- Estaticamente ligado com o cliente Tor.
- Usa impulso (threads), onda, bibliotecas OpenSSL.
- Cada amostra tem uma URL com fio a um servidor C & C. Um total de três C & C endereços do servidor foram detectados em diferentes amostras. Toda a C & C estão localizadas na rede Tor e são diferentes dos endereços encontrados nas amostras de Tróia-Ransom.Win32.Shade.
- Todas as seqüências (juntamente com os nomes de funções importadas) são AES criptografados.Quando o programa inicia, eles são decifradas e tabela de importação é então preenchida dinamicamente.
- Normalmente UPX lotado. Uma vez descompactado, é 2080-2083 KB de tamanho.
- Copia para uma das pastas da unidade C com o nome csrss.exe.
- Baixar plugins DLL adicional. Os plugins conter código que determina o sistema de gerenciamento de conteúdo (CMS) instalado no site segmentado, procura o console de administração e rachaduras senhas. Detectamos plugins para sites baseados em Joomla, WordPress e DataLifeEngine.
A comunicação com o servidor C & C
Cada amostra de Trojan.Win32.CMSBrute contém o endereço de um servidor C & C. Os servidores estão localizados na rede Tor e comunicação com eles é estabelecida usando o cliente Tor que é ligado estaticamente para o Trojan.
O exemplo envia os seguintes pedidos para o servidor C & C:
- Registrar nova bot:
GET http: // <servidor> .onion / reg.php n =? ID & b = construir & v = versão & sf = estágio
ID - a identificação do computador infectado. É calculado utilizando um algoritmo ligeiramente diferente do que o utilizado para o codificador sombra; compilação - a identificação da amostra específica do programa malicioso. Deparámo-nos com compilação uma única; versão - a versão do programa malicioso. Deparámo-nos com uma versão única; fase - a fase de operação do Trojan. - Um pedido para receber os endereços URL para o download / atualização de plugins DLL.
GET http: // <servidor> .onion / upd.php n = ID & b = construir & v = versão & p = plugins - Pedido de uma tarefa para determinar o CMS no site e verificar as credenciais de login:
GET http: // <servidor> .onion / task.php n = ID & b = construir & v = versão & p = plugins
plugins - as versões do instalado plugins DLL.
A resposta do servidor vem no formato JSON e contém URLs dos sites a serem atacados e um dicionário para quebrar senhas. - Enviar um relatório de força
bruta:? POST http: // <servidor> .onion / rep.php n = ID & b = construir & v = versão & rep = relatório
relatório - uma string JSON que contém um relatório sobre o CMS encontrado no site, bem como credenciais de login quebradas para o console de administração.
Recomendações
No caso de Trojan-Ransom.Win32.Shade, todos os conselhos que anteriormente foi dada sobre a forma de contrariar encryptors ainda é relevante. Instruções detalhadas estão disponíveis em:
https://support.kaspersky.com/viruses/common/10952
Se o seu computador já sofreu um ataque por este Trojan, é extremamente importante que você execute uma verificação completa e tratá-lo com uma solução anti-malware. Lembre-se que Trojan-Ransom.Win32.Shade baixa e instala o malware pertencentes a vários várias famílias, como afirmado no início deste artigo.