ANÁLISE DETALHADA
O DLL em si tem múltiplas funções de exportação, indo de DllEntry00 para DllEntry33. A maioria dessas exportações simplesmente retornam laços de sono, uma medida anti-análise provável. A principal funcionalidade reside dentro do DllEntry28 e DllEntry18:
Exportações dll do backdoor PortDoor
Para obter as informações de configuração, o backdoor primeiro descriptografa as strings usando uma tecla XOR 0xfe codificada:
Rotina de descriptografia de cordas
Os dados descriptografados incluem as seguintes informações de configuração:
As cordas descriptografadas na memória
Corda descriptografada | propósito |
45.63.27[.] 162 | Endereço C2 |
Kr*^j4 | N/A |
B-JDUN | Identificador da vítima |
58097616.tmp | Nome do arquivo de dados escrito para %temp% |
0987654321fedcba | Chave AES-CBC |
Vale ressaltar que, durante a análise, a comunicação com o C2 não foi bem sucedida e, portanto, algumas informações de análise podem estar incompletas.
Após a verificação de presença de depuração e a descriptografia de string, o malware cria então um arquivo adicional em %temp% com o nome codificado “58097616.tmp”, e escreve o valor GetTickCount multiplicado por um número aleatório para ele:
Valor escrito para o arquivo “58097616.tmp”
Isso pode ser usado como um identificador adicional para o alvo, e também como um espaço reservado para a presença anterior deste malware.
O malware então passa a tentar estabelecer uma conexão com o C2 que suporta a transferência de dados usando TCP sobre tomadas brutas, ou HTTPS usando o método CONNECT. Além disso, o backdoor parece estar ciente de proxy, distinguindo entre dois tipos de resposta HTTP: resposta “200” e “407” (Proxy Autenticação Necessária):
Hardcoded HTTP headers with proxy support
PortDoor also has the ability to achieve privilege escalation by applying the Access Token Theft technique to steal explorer.exe tokens and run under a privileged security context:
Acesso ao roubo de tokens do explorador.exe
Eventualmente, o malware aguarda por instruções adicionais do C2 para continuar sua execução. Isso é feito através do seguinte caso de switch:
Alguns dos métodos implementados pelo switch
Por exemplo, o caso get_pc_info() reúne informações básicas do PC a serem enviadas ao C2, e a sequência “B-JDUN” provavelmente está sendo usada como um identificador exclusivo para a campanha/vítima:
As informações coletadas no PC infectado
Por fim, antes de enviar as informações para o servidor C2, o backdoor usa AES para criptografar os dados de informações do PC roubados:
Informações criptografadas da AES coletadas no PC
A principal funcionalidade de comando C2 do backdoor é resumida na tabela abaixo:
caso | ação |
0x08 | Obter informações do PC, concat com o identificador “B-JDUN” |
0x30 | Liste processos em execução |
0x31 | Processo aberto |
0x41 | Obtenha espaço livre em unidades lógicas |
0x42 | Enumeração de arquivos |
0x43 | Excluir arquivo |
0x44 | Mover arquivo |
0x45 | Criar processo com uma janela oculta |
0x28 | Abrir arquivo para operações simultâneas |
0x29 | Escrever para arquivar |
0x2a | Alça próxima |
0x2b | Abra arquivo e escreva diretamente para o disco |
0x01 | Procure a string “Kr*^j4” |
0x10 | Criar tubo, copiar dados dele e criptografar AES |
0x11 | Gravar dados para arquivar, anexar com “\n” |
0x12 | Gravar dados para arquivar, anexar com “exit\n” |
Funcionalidade de comando C2 resumida
Outra técnica anti-análise observada sendo usada pelo backdoor do PortDoor é a resolução dinâmica da API. O backdoor é capaz de ocultar a maior parte de sua funcionalidade principal e evitar a detecção estática de chamadas suspeitas de API, resolvendo dinamicamente suas chamadas de API em vez de usar importações estáticas:
Resolução dinâmica de API
A execução maliciosa do DLL backdoor do PortDoor é detectada pela Cybereason Defense Platform:
PortDoor Backdoor DLL detectado pela Cybereason
ATRIBUIÇÃO
No momento desta análise, não havia informações suficientes disponíveis para atribuir o backdoor recém-descoberto a um ator de ameaça conhecido com certeza razoável. No entanto, existem alguns grupos chineses conhecidos que compartilham algumas semelhanças com o ator de ameaças por trás das novas amostras de malware analisadas neste blog.
Com base em trabalhos anteriores realizados por nao_sec,a Equipe Nocturnus foi capaz de determinar que o arquivo RTF discutido neste blog foi armado com royalRoad v7, que carrega a codificação indicativa de cabeçalho “b0747746” e foi previamente observado sendo usado pela Equipe Tonto, TA428 e atores de ameaça rancor, como pode ser visto abaixo:
Matriz de atribuição da RoyalRoad. Crédito: nao_sec
Tanto a Equipe Tonto quanto os atores de ameaça TA428 foram observados atacando organizações russas no passado, e mais especificamente atacando alvos relacionados à pesquisa e defesa. Por exemplo, foi relatado anteriormente que a Equipe Tonto é conhecida por ter atacado organizações russas no passado usando o malware Bisonal.
Ao comparar o e-mail de phishing e documentos maliciosos nesses ataques com e-mails de phishing previamente examinados e documentos de atração usados pela Equipe Tonto para atacar organizações russas, há certas semelhanças no estilo linguístico e visual usado pelos atacantes nos e-mails e documentos de phishing.
O backdoor recém-descoberto não parece compartilhar semelhanças significativas de código com malwares anteriormente conhecidos usados pelos grupos acima mencionados, além de semelhanças anedóticas que são bastante comuns aos backdoors, levando-nos à conclusão de que não é uma variante de um malware conhecido, mas é de fato um novo malware que foi desenvolvido recentemente.
Por fim, também estamos cientes de que pode haver outros grupos, conhecidos ou ainda desconhecidos, que poderiam estar por trás do ataque e do desenvolvimento do Backdoor do PortDoor. Esperamos que com o passar do tempo, e com mais evidências reunidas, a atribuição possa ser mais concreta.
CONCLUSÃO
A RoyalRoad tem sido um dos mais usados com armas RTF na esfera de atores de ameaças chinesas nos últimos anos. É observado principalmente na fase inicial de compromisso de ataques direcionados onde o spear-phishing é usado para atrair vítimas para abrir documentos maliciosos que, por sua vez, exploram as vulnerabilidades do Microsoft Equation Editor para lançar diferentes malwares.
Neste relatório, discutimos as últimas mudanças que foram feitas no armador RoyalRoad que se desviam de alguns de seus indicadores bem documentados e previsíveis. Talvez seja uma indicação de que os atores de ameaça que a operam estão tentando evitar detecções de “frutas penduradas baixas”.
Além disso, relatamos a descoberta do novo Backdoor PortDoor, uma ferramenta anteriormente não documentada e furtiva projetada para dar aos atacantes acesso às máquinas de seus alvos, coletar informações e implantar cargas adicionais.
No momento da redação deste relatório, ainda não está claro qual ator de ameaça está por trás do novo backdoor, no entanto identificamos dois potenciais suspeitos que se encaixam no perfil. Atualmente não há informações suficientes disponíveis para comprovar a hipótese declarada com alto nível de certeza.
Procurando os IOCs? CLIQUE NO CHATBOT EXIBIDO NO LADO INFERIOR DIREITO DA TELA.