VIVA, OSIRIS; BANKING TROJAN TARGETS ALEMÃO IP ENDEREÇOS

Views: 679
0 0
Read Time:5 Minute, 31 Second

INTRODUÇÃO

Durante o período entre 15 e 20 de janeiro, a Morphisec identificou uma campanha significativa direcionada a vários clientes alemães da indústria de manufatura. O pessoal alvo foi redirecionado para sites comprometidos que estavam, e ainda estão, entregando downloaders avançados sem arquivos que eventualmente levam a um cliente Osiris com um mini-Tor empacotado se comunicando com um painel C2 onion Tor.

Após uma investigação adicional e compartilhando alguns dos TTPs com a comunidade, fomos notificados de países-alvo adicionais, como os Estados Unidos e a Coréia, que receberam REvil e outras cargas úteis usando o mesmo mecanismo de entrega descrito no relatório.

Neste blog, vamos passar por cima de todas as etapas da cadeia de ataque na campanha alemã.

INTRODUÇÃO TÉCNICA

A cadeia de ataque é composta por cinco estágios principais;

  • Um downloader de Javascript ofuscado de um site comprometido
  • Um downloader Javascript de segundo estágio que cuida da persistência
  • Um Powershell executado pelo Javascript que leva ao carregamento reflexivo do próximo estágio. Arquivo NET
  • Um fileless. Carregador NET mapeado do registro e decodifica para um novo . Executável NET hollower na memória, que é responsável por esvaziar o cavalo de Tróia de Osíris em um processo legítimo do Windows.
  • Osíris se conecta ao seu C2 com a ajuda de um pacote mini-Tor.

Cadeia de Ataque de Trojan Bancária Osíris

Figura 1: A cadeia de ataque de Osíris.

ACESSO INICIAL

A vítima recebe um link para um site comprometido que contém um link de download para um arquivo zip malicioso, que contém um arquivo JS. , a página da web e o nome do arquivo se traduzem em “acordo coletivo de remuneração de plantão ig metal”.

O download, bem como o resto da comunicação em cadeia de ataque, estará disponível apenas para um IP localizado na Alemanha.

Uma captura de tela tirada de um site comprometido

Figura 2: O site comprometido.

A captura de tela acima é tirada do site comprometido.

FASE 1 – JAVASCRIPT DOWNLOADER

O arquivo JavaScript dentro do arquivo zip:

Uma imagem do arquivo Javascript que o cavalo de Tróia bancário Osíris usa dentro do arquivo ZIP

Figura 3: O arquivo JavaScript.

A captura de tela abaixo é uma visualização formatada do Javascript malicioso:

O downloader Javascript malicioso formatado para ser legível

Figura 4: Uma visualização formatada do JavaScript malicioso

Como visto acima, o código Javascript é composto de código gerado por dicionário e inclui palavras reais para evitar a varredura estática de arquivos usada pelas soluções AV para detecção de ofuscação. É importante notar que, a cada novo download de javascript, o código JS não será exatamente o mesmo, mas terá uma estrutura semelhante.

Para desobscurecer o código incorporado em todos os estágios do Javascript, o seguinte trecho de código pode ser usado:

Este trecho de código pode ser usado para desobscursar o código incorporado

Figura 5: Desofuscando o JavaScript

Passo 2

A variável “prove” (a string longa ofuscada) na verdade contém o código Javascript ofuscado da próxima etapa incorporado que se desobscursa em:

O Javascript da próxima etapa se desobfusca neste código

Figura 6: A variável “prova”.

Observe que, para cada novo download de Javascript, o id exclusivo é representado pelo caminho do registro gerado dentro do “HKCU/<Linhas aleatórias 5>.” A função “criar” é então chamada com a execução do código Javascript na próxima etapa.

Passo 3

Como visto na captura de tela abaixo, o Javascript contém três domínios com os quais o código tenta se comunicar. Vale ressaltar que eles também estão comprometidos (esses domínios mudam a cada dois dias).

Os três domínios contidos no Javascript

Figura 7: Os três domínios comprometidos com os quais o código se comunica.

O parâmetro para ‘pesquisa’ também é exclusivo por download. O script identifica se a máquina está localizada em um domínio gastando a variável de ambiente%USERDNSDOMAIN%. Dependendo do que recebe, ele envia uma solicitação de obtenção diferente para o site comprometido com uma alta possibilidade de um malware diferente.

FASE 2 – PERSISTÊNCIA JAVASCRIPT

O segundo estágio formatado Javascript é entregue apenas para endereços IP alemães. O código já inclui seu próximo estágio. Código NET, que será persistido no registro.

O código de segundo estágio que é entregue apenas para endereços IP na Alemanha

Figura 8: O segundo estágio formatado JavaScript.

Powershell de 32 bits executado usando CMD.

Figura 9: O JavaScript executando Powershell de 32 bits

Como visto acima, o código Javascript executará o Powershell de 32 bits usando cmd. Ele identifica a arquitetura do sistema operacional validando a extensão do nome do diretório dos arquivos do programa.

POWERSHELL – CARREGAMENTO REFLEXIVO

O comando Powershell executado carrega reflexivamente o próximo estágio. Executável NET do registro representado por “HKCU:\SOFTWARE\<nome de usuário>1”, mas não antes de aplicar um algoritmo minimalista de substituição de deofuscação no valor do registro :

O algoritmo minimalista de substituição de desobscuração no valor do registro

Figura 10: Carregamento reflexivo do próximo estágio.

Uma simples pesquisa no VirusTotal baseada na função de substituição “chba” levará a versões anteriores do Powershell que dependem de “HKCU:\SOFTWARE\<nome da máquina>1.”

. CARREGADOR LÍQUIDO

Como visto nos estágios anteriores, o . Carregador NET é um código de tamanho pequeno que é gravado no registro pelo segundo estágio Javascript e é carregado na memória pelo terceiro estágio Powershell reflective loader

O . Carregador NET

Figura 11: O . Carregador NET

O . O carregador NET adicionará persistência adicional e será responsável por decodificar a próxima etapa. Variante NET hollower, que está localizada em “HKCU:\SOFTWARE\<nome da máquina>” (sem o 1).

Persistência adicional adicionada pelo . Carregador NET

Figura 12: O . Variante de oco NET.

O . O código NET em <nome de usuário> é obviamente muito maior do que o carregador, pois inclui tanto a funcionalidade de escavação quanto o código Osíris.

O . Código NET que inclui escavação e Osíris

Figura 13: O . Código NET contendo escavação e Osíris.

Isso. O escavador NET injeta o executável Osiris em um executável legítimo “ImagingDevice” que vem pré-instalado com o Windows como parte do software Windows Photo Viewer.

O . Oco NET injetando Osíris

Figura 14: O . Oco NET injetando Osíris.

OSIRIS TROJAN

Após o esvaziamento, o executável Osiris usa seu componente mini-Tor empacotado para se comunicar com um painel Tor. Como pode ser visto abaixo, o cavalo de Tróia bancário ainda implementa muitas de suas funcionalidades bancárias originais.

Osíris se comunica com seu painel Tor

Figura 15: O executável Osiris usa um mini-Tor empacotado.

Executável Osiris

Figura 16: Osíris mantém alguma funcionalidade bancária.

Algumas das funcionalidades originais do banqueiro

Figura 17: Algumas funcionalidades bancárias em Osíris.

Arquivo de artefato – mini-Tor empacotado.

O mini-Tor empacotado

Figura 18: Um mini-Tor empacotado.

CONCLUSÃO

cavalo de Tróia de Osíris atacando endereços IP alemães continua o uso histórico do cavalo de Tróia. A plataforma Morphisec bloqueia a Osíris com uma abordagem de negação padrão de confiança zero para a segurança de terminais, alimentada pela defesa de alvo em movimento. Os clientes da Morphisec estão, portanto, protegidos de Osíris, independentemente das técnicas de evasão de defesa que os autores implantem.

IOC:

EC936B6BB7497FFB11577C14A9AB2860EC1DD705DC18225BBDAB5BF57804BDBC – JS

72C5EEB8807A4576340485377CACC582A3CA651C4632DB06903C125BE6692968 – . Módulo NET <username1>

63C62D6086A6CF2FCBB22A16C06EB0BC870CDB2F0BB029390D3BC815C06A6C6B – . Módulo NET <nome de usuário>

2FC970B717486762F6C890F525329962662074EB632F0827C901FB1081CBD98F – Osíris

91F1023142B7BABF6FF75DAD984C2A35BDE61DC9E61F45483F4B65008576D581 – Minitor www.underregnbuen[.]dk/? p=5739 – o site comprometido

hxxp://ylnfkeznzg7o4xjf[.]onion/kpanel/connect.php – Osiris C2

FONTE: MORPHISEC

POSTS RELACIONADOS