Novo backdoor do Cybergroup da TeleBots: primeira prova do industroyer e da NotPetya Link

Um estudo do novo backdoor do cibergrupo TeleBots por trás da epidemia do codificador NotPetya revelou uma semelhança significativa entre o código e o backdoor principal do Industroyer, o que confirma a relação que havia anteriormente rumores.


Entre os maiores incidentes cibernéticos dos últimos anos estão os ataques às empresas de energia ucranianas e a epidemia do codificador NotPetya . Em um post, examinaremos a relação entre esses eventos.

A primeira grande queda de energia causada por um ataque cibernético na história ocorreu em dezembro de 2015, devido ao pacote de malware BlackEnergy . Os especialistas da ESET monitoraram a atividade do grupo ART usando o BlackEnergy, antes e depois deste evento. Após o blecaute de 2015, o grupo aparentemente desativou o trabalho ativo com o BlackEnergy e evoluiu para o que chamamos de TeleBots .

Deve-se observar aqui que, ao falar sobre o grupo ART, queremos dizer indicadores técnicos comuns: semelhança de código, infraestrutura de rede comum (C&C), cadeias de execução de malware etc. Como regra, não participamos diretamente da investigação e identificação de desenvolvedores ou operadores. O termo "grupo ART" não possui uma definição clara e é frequentemente usado para caracterizar parâmetros de malware. Por esses motivos, evitamos especular sobre a origem dos ataques, a identidade nacional ou estatal dos agressores.

De qualquer forma, encontramos uma conexão entre os ataques do BlackEnergy (destinados a empresas de energia ucranianas, bem como outros setores e instalações de alto escalão) e as campanhas do grupo TeleBots (principalmente contra o setor financeiro ucraniano).

Em junho de 2017, empresas em todo o mundo sofriam do Diskcoder.C viper (mais conhecido como Petya / NotPetya) - a natureza maciça da infecção, aparentemente, era um tipo de efeito colateral. Estudando o incidente, descobrimos que as empresas infectadas com o backdoor do grupo TeleBots se tornaram o "paciente zero" dessa epidemia como resultado do comprometimento do software de contabilidade MEDoc, popular nas empresas ucranianas.

A questão é: o que o Industroyer tem a ver com essa história - um complexo malicioso complexo que causou o blecaute em Kiev em dezembro de 2016. Imediatamente após a publicação do relatório da ESET, algumas empresas e meios de segurança da informação sugeriram que a Industroyer também desenvolvesse o grupo BlackEnergy / TeleBots (às vezes também chamado de Sandworm). No entanto, nenhuma evidência foi enviada até o momento.

Em abril de 2018, registramos uma nova atividade do grupo TeleBots - uma tentativa de implantar um novo backdoor Win32 / Exaramel . Nossa análise mostrou que esse backdoor é uma versão aprimorada do backdoor principal Industroyer - que foi a primeira prova.



Análise de backdoor Win32 / Exaramel


O backdoor Win32 / Exaramel é instalado inicialmente usando um conta-gotas. De acordo com os metadados do conta-gotas, o backdoor foi compilado no Microsoft Visual Studio imediatamente antes da implantação em um computador comprometido específico.


Figura 1. Registro de data e hora do PE do conta-gotas Win32 / Exaramel backdoor

Após a execução, o conta-gotas coloca o binário Win32 / Exaramel no diretório do sistema Windows e inicia o serviço Windows com o nome wsmproav com a descrição “Windows Check AV”. O nome do arquivo e a descrição do serviço do Windows são codificados no conta-gotas.


Figura 2. Configurações de registro de serviço do Windows criadas pelo backdoor Win32 / Exaramel

Além disso, o conta-gotas grava a configuração de backdoor no registro do Windows no formato XML.


Figura 3. Configuração XML do Win32 / Exaramel

A configuração consiste em vários blocos:

- Intervalo - tempo em milissegundos usado para a função Dormir
- Servidores - lista de servidores de comando (C&C)
- Verificar - um site usado para determinar se um host tem acesso à Internet
- Proxy - servidor proxy na rede host
- Armazenamento - o caminho usado para armazenar arquivos destinados à exfiltração

Como você pode ver na primeira linha da configuração, os atacantes agrupam destinos com base nos produtos antivírus usados. Uma abordagem semelhante é usada no complexo Industroyer - em particular, alguns backdoors Industroyer também foram disfarçados como um serviço antivírus (implantado com o nome avtask.exe ) e usaram a mesma abordagem para agrupar.

Outro fato interessante é que o backdoor usa servidores C&C cujos nomes de domínio imitam domínios pertencentes à ESET. Além do esetsmart[.]org da configuração acima, encontramos um domínio semelhante um10eset[.]net , usado pela versão Linux recentemente aberta do malware TeleBots. É importante observar que esses servidores controlados pelo invasor não estão relacionados à infraestrutura de rede ESET legítima . No momento, não descobrimos que a Exaramel usa domínios que imitam a infraestrutura de outras empresas de segurança da informação.

Após o início, o backdoor estabelece uma conexão com o servidor C&C e recebe comandos para execução no sistema. Abaixo está uma lista de comandos disponíveis:

- Iniciando o processo
- Iniciando um processo a partir de um usuário específico do Windows
- Gravando dados em um arquivo em um determinado caminho
- Copie o arquivo no subdiretório de armazenamento (Baixar arquivo)
- Execute um comando shell
- Execute um comando shell de um usuário específico do Windows
- Execute o código VBS usando o MSScriptControl.ScriptControl.1

O código do ciclo de comando e a implementação dos seis primeiros comandos no Win32 / Exaramel são muito semelhantes ao backdoor do pacote de software Industroyer.


Figura 4. Comparação do código backdoor Win32 / Exaramel descompilado (à esquerda) e Win32 / Industroyer (à direita)

Ambas as famílias de malware usam um arquivo de relatório para armazenar a saída de comandos shell executados e processos em execução. No caso do backdoor do Win32 / Industroyer, o arquivo de relatório é armazenado em uma pasta temporária com um nome aleatório; no Win32 / Exaramel, o arquivo de relatório é chamado report.txt e seu caminho para o repositório é especificado no arquivo de configuração de backdoor.

Para redirecionar a saída padrão (stdout) e o erro padrão (stderr) para o arquivo de relatório, as duas backdoors definem os parâmetros hStdError e hStdError como o descritor do arquivo de relatório. Essa é outra semelhança entre essas famílias de malware.


Figura 5. Comparação do código backdoor Win32 / Exaramel e Win32 / Industroyer descompilado, respectivamente

Se os operadores de malware desejam exfiltrar arquivos do computador da vítima, eles precisam apenas copiar esses arquivos para um subdiretório do caminho de armazenamento de data especificado na configuração. Antes de estabelecer uma nova conexão com o servidor C&C, o backdoor compactará e criptografará automaticamente esses arquivos antes de enviá-los.

A principal diferença entre o backdoor Industroyer e o novo backdoor TeleBots é que este último usa o formato XML para comunicação e configurações em vez do formato binário personalizado.

Ferramentas de roubo de senha maliciosa


Juntamente com o Exaramel, o grupo TeleBots usa algumas das ferramentas antigas, incluindo uma ferramenta de roubo de senha (o nome interno é CredRaptor ou PAI) e o Mimikatz ligeiramente modificado.

A ferramenta avançada de roubo de senha CredRaptor, usada apenas por este grupo desde 2016, foi finalizada. Diferentemente das versões anteriores, ele coleta senhas salvas não apenas dos navegadores, mas também do Outlook e de vários clientes FTP. Abaixo está uma lista de aplicativos suportados:

- FTP BitKinex
- Cliente FTP BulletProof
- FTP clássico
- CoffeeCup
- FTP principal
- Cryer WebSitePublisher
- CuteFTP
- Gerente FAR
- filezilla
- FlashFXP
- fragata3
- Comandante FTP
- FTP Explorer
- Navegador FTP
- Google Chrome
- Internet Explorer 7 - 11
- Mozilla Firefox
- Ópera
- Outlook 2010, 2013, 2016
- SmartFTP
- Cliente FTP SoftX
- Total Commander
- TurboFTP
- Windows Vault
- WinSCP
- Cliente WS_FTP

As melhorias permitem que os invasores coletem dados de contas de webmasters de sites e de servidores na infraestrutura interna. Tendo acesso a esses servidores, você pode instalar backdoors adicionais. Freqüentemente, esses servidores têm um sistema operacional diferente do Windows instalado; portanto, os invasores precisam adaptar as backdoors.

Durante a resposta a incidentes, descobrimos a backdoor Linux do TeleBots - Linux / Exaramel.A .

Análise de backdoor Linux / Exaramel


O backdoor é escrito na linguagem de programação Go e compilado como um binário ELF de 64 bits. Os invasores podem implantar um backdoor no diretório selecionado com qualquer nome.

Se o backdoor for executado por invasores com a string 'none' como argumento da linha de comando, ele tenta usar mecanismos de persistência para iniciar automaticamente após uma reinicialização. Se o backdoor não estiver sendo executado na conta raiz, ele usará o arquivo crontab . No entanto, se for executado como root, ele suporta vários sistemas init Linux. Ele determina qual sistema init está atualmente em uso executando o comando:

strings /sbin/init | awk 'match($0, /(upstart|systemd|sysvinit)/){ print substr($0, RSTART, RLENGTH);exit; }'

Dependendo do resultado, o backdoor usa os seguintes locais codificados para garantir a persistência (a seguir denominado sistema Init e sua localização):

sysvinit - /etc/init.d/syslogd
upstart - /etc/init/syslogd.conf
systemd - /etc/systemd/system/syslogd.service

Durante a inicialização, o backdoor tenta abrir o arquivo de configuração, que é armazenado no mesmo diretório que o backdoor, sob o nome config.json . Se o arquivo de configuração não existir, um novo arquivo será criado. A configuração é criptografada usando a chave s0m3t3rr0r e o algoritmo RC4.


Figura 6. Configuração descriptografada de JSON de backdoor Linux / Exaramel

O backdoor se conecta ao C&C codificado (por padrão, 176.31.225 [.] 204 na amostra que vimos) ou ao servidor C&C especificado no arquivo de configuração como Hosts . As comunicações são via HTTPS. O backdoor suporta os seguintes comandos:

App.Update - atualize para a nova versão
App.Delete - auto- remoção do sistema
App.SetProxy - define as configurações do servidor proxy na configuração
App.SetServer - atualizando o servidor C&C na configuração
App.SetTimeout - definindo o valor do tempo limite (intervalos entre as conexões com o servidor C & C)
IO.WriteFile - baixando um arquivo de um servidor remoto
IO.ReadFile - carregando um arquivo de um disco local para um servidor C & C
OS.ShellExecute - executa um comando shell

Conclusão


A abertura do Exaramel mostra que o grupo TeleBots permanece ativo em 2018, e os atacantes continuam melhorando táticas e ferramentas.

As semelhanças significativas entre o código Win32 / Exaramel e o backdoor principal do Industroyer são a primeira evidência apresentada publicamente que vincula o Industroyer ao grupo TeleBots e, portanto, às cibercampanhas NotPetya e BlackEnergy. Ao estabelecer uma conexão entre as fontes de ataques cibernéticos, deve-se levar em consideração a possibilidade de erro ou engano deliberado, mas, neste caso, consideramos isso improvável.

Vale ressaltar que as versões Win32 e Linux do backdoor Exaramel foram descobertas em uma organização que não está relacionada ao setor. Os especialistas da ESET relataram a descoberta às autoridades investigadoras da Ucrânia, portanto o ataque foi localizado e evitado em tempo hábil.

A ESET continua a monitorar a atividade deste grupo cibernético.

Indicadores de compromisso (IoCs)


Detecção ESET


Win32/Exaramel trojan
Win32/Agent.TCD trojan
Linux/Agent.EJ trojan
Linux/Exaramel.A trojan
Win32/PSW.Agent.OEP trojan
Win32/RiskWare.Mimikatz.Z application
Win64/Riskware.Mimikatz.AI application


Hashes SHA-1


Teleobôs de Cybergroup Back32 Win32 / Exaramel
65BC0FF4D4F2E20507874F59127A899C26294BC7
3120C94285D3F86A953685C189BADE7CB575091D


Ferramenta de roubo de senha
F4C4123849FDA08D1268D45974C42DEB2AAE3377
970E8ACC97CE5A8140EE5F6304A1E7CB56FA3FB8
DDDF96F25B12143C7292899F9D5F42BB1D27CB20
64319D93B69145398F9866DA6DF55C00ED2F593E
1CF8277EE8BF255BB097D53B338FC18EF0CD0B42
488111E3EB62AF237C68479730B62DD3F52F8614


Mimikatz
458A6917300526CC73E510389770CFF6F51D53FC
CB8912227505EF8B8ECCF870656ED7B8CA1EB475


Linux / Exaramel
F74EA45AD360C8EF8DB13F8E975A5E0D42E58732

Servidores C e C


um10eset[.]net (IP: 176.31.225.204)
esetsmart[.]org (IP: 5.133.8.46)

Source: https://habr.com/ru/post/pt426077/


All Articles