Após notícias de que os membros do infame grupo de ransomware REvil, que tem como alvo grandes empresas, foram presos pelas autoridades russas, efetivamente acabando com suas operações, é provável que os afiliados do grupo migrem para outros provedores de Ransomware como serviço (RaaS).
O Varonis Threat Labs observou que um desses provedores de RaaS, o ALPHV (também conhecido como ransomware BlackCat), vem ganhando força desde o final de 2021, recrutando ativamente novos afiliados e visando organizações em vários setores no mundo todo.
Aqui estão algumas das principais lições aprendidas:
O local de vazamento do grupo, ativo desde o início de dezembro de 2021, nomeou mais de vinte organizações vítimas no final de janeiro de 2022, embora o número total de vítimas, incluindo aquelas que pagaram para evitar a exposição, seja provavelmente maior.
O intuito deste artigo é fornecer uma visão geral dessa ameaça emergente de ransomware, detalhando as variantes para Linux e Windows de sua ferramenta de criptografia.
O ALPHV, também conhecido como ALPHV-ng, BlackCat e Noberus, apareceu pela primeira vez em novembro de 2021 e é uma ameaça de Ransomware como serviço (RaaS) que tem como alvo organizações em vários setores no mundo todo usando a tática de Triple Extortion.
A Triple Extortion se baseia na tática comum de Double Extortion, na qual os dados confidenciais são roubados antes da criptografia e a vítima é ameaçada com a divulgação ao público, mas acrescenta a ameaça de um ataque distribuído de negação de serviço (DDoS) se as demandas do grupo de ransomware não forem atendidas.
Esse ataque demonstra experiência neste domínio de ameaças, como o uso de táticas, técnicas e procedimentos (TTP) comprovados de ataques a grandes empresas e seus resultados bem-sucedidos recentes, por isso deve ter sido criado não por um principiante, mas por um ex-membro do grupo de ransomware.
Além disso, alguns usuários do fórum de crimes cibernéticos comentaram que o ALPHV pode até ser uma evolução ou rebranding do BlackMatter, um spin-off ou sucessor do REvil e DarkSide.
De acordo com anúncios anteriores em fóruns de crimes cibernéticos em russo (Figura 1), os afiliados são atraídos a se juntar ao grupo com retornos de até 90% de qualquer resgate coletado.
Figura 1 – ‘Procurando pentesters WINDOWS/LINUX/ESX’ do ALPHV
Em colaboração com esses novos afiliados, a intrusão inicial da rede de uma vítima provavelmente usará técnicas testadas e comprovadas. Um exemplo disso seria a exploração de vulnerabilidades comuns em dispositivos de infraestrutura de rede, como gateways VPN, e o uso indevido de credenciais por meio de hosts de protocolo de área de trabalho remota (RDP) expostos.
Em seguida, os invasores ALPHV foram observados usando o PowerShell para modificar as configurações de segurança do Windows Defender em toda a rede da vítima e iniciando o binário de ransomware, um processo interativo, em vários hosts usando PsExec.
Depois de obter acesso inicial à rede de uma vítima, o grupo certamente conduzirá fases de reconhecimento e movimento lateral nas quais dados confidenciais e valiosos serão identificados para exfiltração e posterior criptografia.
O agente da ameaça usa o próprio executável de ransomware, criado do zero em vez de ser baseado em alguma ameaça existente, para gerar uma ameaça específica para a vítima que leva em consideração elementos como o desempenho da criptografia, talvez optando por criptografar apenas partes de arquivos grandes e credenciais da vítima incorporadas para permitir a propagação automatizada da carga útil do ransomware para outros servidores.
Ao contrário de muitas outras ameaças de ransomware, o ALPHV foi desenvolvido usando Rust, uma linguagem de programação conhecida por seu desempenho rápido e recursos multiplataforma. Com isso, foram observadas variantes para Linux e Windows ao longo de dezembro de 2021 e janeiro de 2022.
Embora muitos sugiram que o ALPHV pode ser a primeira ameaça de ransomware da história a usar essa linguagem, uma prova de conceito do ransomware Rust foi publicada no GitHub em junho de 2020, mesmo não havendo nada que sugira que os dois estejam de alguma forma relacionados.
Em especial, o uso de Rust, entre outras linguagens modernas, incluindo Golang e Nim, parece ser uma tendência crescente entre os agentes de ameaças de crime cibernético nos últimos dois anos.
Além de criar novas ameaças multiplataforma e de alto desempenho, alguns agentes de ameaças também reescreveram suas ameaças mais antigas com probabilidade de escapar da detecção e impedir a análise, como observado com o downloader “Buer” atualizado chamado “RustyBuer”.
A análise das amostras do ALPHV coletadas recentemente indica que o processo de desenvolvimento provavelmente ocorreu durante o início e meados de novembro de 2021, dado o histórico de lançamento das “caixas” Rust (bibliotecas de programação) usadas.
Especificamente, amostras do ALPHV observadas recentemente usam a versão 1.4.3 do “Zeroize”, que só foi lançada em 4 de novembro de 2021, enquanto também usam versões de criptografia de chave pública que foram substituídas por versões lançadas em 16 e 17 de novembro de 2021.
Muitas das caixas Rust usadas são óbvias, como o uso de interfaces de linha de comando e bibliotecas de criptografia, mas o uso do Zeroize, uma biblioteca que limpa com segurança os segredos da memória, parece ser uma tentativa deliberada de impedir que segredos de criptografia sejam recuperados de um host comprometido.
Cada binário de ransomware ALPHV específico da vítima tem uma estrutura de dados JSON incorporada (Figura 2) que contém uma configuração personalizada levando em consideração o conhecimento do agente da ameaça sobre a rede da vítima.
Figura 2 – Exemplo de estrutura de dados JSON incorporada
As amostras observadas recentemente incluem configurações com um conjunto comum de opções (Tabela 1), algumas das quais se aplicam a ambas as variantes e outras específicas do sistema operacional.
Opção de configuração |
Descrição |
config_id |
Não definido em amostras observadas recentemente. |
public_key |
Chave pública RSA específica da vítima usada para proteger a chave de criptografia. |
extension |
Extensão específica da vítima adicionada a arquivos criptografados, uma string aparentemente gerada aleatoriamente de sete caracteres alfanuméricos minúsculos (expressão regular: [a-z0-9]{7}). |
note_file_name |
Nome do arquivo da nota de resgate definido como “RECOVER-${EXTENSION}-FILES.txt” em amostras observadas recentemente. |
note_full_text |
Texto da nota de resgate, consistente com amostras observadas recentemente, com um endereço de Tor onion específico da vítima usado para negociações. |
note_short_text |
Texto do papel de parede do Windows direcionando a vítima para a nota de resgate, consistente com amostras observadas recentemente. |
default_file_mode |
Normalmente definido como “Auto”, embora tenham sido observados dois valores “SmartPattern”, o que resultou em um número específico de megabytes de cada arquivo sendo criptografado em etapas de dez:
Esses valores são definidos por motivos de desempenho em hosts de vítimas específicas, como ao lidar com arquivos muito grandes. |
default_file_cipher |
Definido como “Best” em todas as amostras observadas recentemente, tenta usar a criptografia AES primeiro e volta para ChaCha20. |
credentials |
Específico para a vítima e provavelmente usado para propagação. As credenciais de domínio e do administrador local foram observadas em algumas amostras. |
kill_services |
Lista típica de serviços comuns do Windows relacionados a aplicações, utilitários de backup, soluções de segurança e servidores, com alguns serviços específicos para a vítima observados em amostras recentes. |
kill_processes |
Lista típica de processos comuns do Windows relacionados a aplicações, utilitários de backup, soluções de segurança e servidores, com processos específicos para a vítima observados em amostras recentes. |
exclude_directory_names |
Lista típica de diretórios do sistema Windows para garantir que o host permaneça estável após a criptografia (o que permite acesso à nota de resgate). |
exclude_file_names |
Lista típica de arquivos do sistema Windows para garantir que o host permaneça estável após a criptografia (o que permite acesso à nota de resgate). |
exclude_file_extensions |
Lista típica de extensões de arquivos do sistema Windows para garantir que o host permaneça estável após a criptografia (o que permite acesso à nota de resgate). |
exclude_file_path_wildcard |
Não definido em amostras observadas recentemente, exclui os caminhos de arquivo especificados do processo de criptografia por host/vítima. |
enable_network_discovery |
Valor booleano, definido como “true” em amostras observadas recentemente e permitindo a descoberta de rede via NetBIOS/SMB em busca de outros hosts para criptografar. |
enable_self_propagation |
Valor booleano, as configurações mistas observadas em amostras recentes sugerem que o sistema é configurado por host/vítima. |
enable_set_wallpaper |
Valor booleano, definido como “true” em amostras observadas recentemente, o que faz com que o papel de parede do Windows mostre “note_short_text”. |
enable_esxi_vm_kill |
Valor booleano, determina se as máquinas virtuais VMware ESXi serão encerradas. |
enable_esxi_vm_snapshot_kill |
Valor booleano, determina se os instantâneos da máquina virtual VMware ESXi serão excluídos (opção de configuração presente apenas em amostras do Linux observadas recentemente). |
strict_include_paths |
Não definido em amostras observadas recentemente, resulta no seguinte: o processo de criptografia processa apenas arquivos localizados nos caminhos especificados. |
esxi_vm_kill_exclude |
Valor booleano, exclui as máquinas virtuais VMware ESXi especificas do processo de encerramento. |
Tabela 1 – Opções de configuração do ALPHV
Embora muitas opções apareçam nas configurações integradas de ambas as amostras, parece que o ransomware ignora aquelas que não se aplicam ao host. Por exemplo, amostras recentemente observadas do Windows incluem referências ao VMware ESXi, uma plataforma suportada pela variante Linux, enquanto as amostras recentemente observadas do Linux mantêm referências a diretórios, arquivos e extensões de arquivo do Windows.
Com base nas opções de comando disponíveis para ambas as variantes, é provável que muitas das opções de configuração integradas possam ser substituídas na execução.
Iniciar o ransomware com o parâmetro “--help” mostra as opções disponíveis (Figura 3) e fornece uma visão de seus recursos.
Figura 3 – Opções “Core” do ALPHV (variante do Windows)
As diferenças nas opções exibidas podem indicar uma versão mais antiga ou uma variante específica da vítima/Windows, com muitas opções que permitem ao agente da ameaça substituir qualquer configuração integrada.
Além desses recursos principais, a análise de uma variante recente do Linux fornece informações (Figura 4) sobre o suporte a hosts VMware ESXi, incluindo a capacidade de desligar máquinas virtuais e, se ativado, limpar instantâneos de máquinas virtuais para impedir os esforços de recuperação.
Figura 4 – Opções “ESXi” do ALPHV (variante do Linux)
Quando iniciadas, as variantes do Linux e do Windows incluem um pool de trabalho multithread que gera um “pool de trabalhadores de arquivos” composto por quatro trabalhadores que são usados para abrir e modificar cada arquivo de destino, substituindo o conteúdo original por dados criptografados.
Depois de inicializar suas funções básicas, incluindo a criação do pool de trabalhadores de arquivos, os recursos de escalonamento de privilégios podem ser executados pela variante do Windows sob determinadas condições.
Como a execução manual do elemento ransomware ocorre após a invasão, após as etapas de reconhecimento e exfiltração de dados, espera-se que o agente da ameaça tenha privilégios elevados.
Independentemente disso, as seguintes capacidades de escalonamento de privilégios parecem estar incorporadas ao ransomware e provavelmente aumentarão as chances de sucesso se propagadas para outros hosts do Windows:
Além disso, a variante do Windows executa vários processos antes da fase de criptografia que diferem das ameaças comuns de ransomware, como:
Além de suprimir a exibição da caixa de diálogo de licença do PsExec (-accepteula), o processo de disseminação do ransomware será executado usando a conta SYSTEM (-s) em uma sessão não interativa (-d), negando assim a necessidade de aguardar a conclusão do processo remoto, com o executável do ransomware sendo copiado para o host remoto (-c) e sobrescrevendo qualquer arquivo existente (-f).
Especificamente, o executável PsExec legítimo é integrado na variante do Windows e colocado no diretório %TEMP% da vítima.
Como esperado, as características comuns do ransomware do Windows também são executadas:
Como padrão para a criptografia AES, representada pela opção de configuração “best”, o processo pode recuar ou ser substituído para usar o ChaCha20.
Depois que um arquivo é criptografado, a extensão de arquivo alfanumérica de sete caracteres pré-configurada é anexada ao nome do arquivo, um valor que parece ser diferente entre as vítimas.
Após a fase de criptografia, várias tarefas finais são executadas:
Figura 5 – Papel de parede após a criptografia
Se as opções do ESXi não estiverem desabilitadas, o utilitário de interface de linha de comando VMware ESXi (esxcli) será chamado e gerará uma lista separada por vírgulas de todas as máquinas virtuais em execução:
A saída desse comando é então “canalizada” para o AWK, um utilitário de processamento de texto, para analisar o resultado e iniciar o utilitário de interface de linha de comando ESXI para forçar o desligamento de cada máquina virtual:
Usando o utilitário VMware Virtual Infrastructure Management (vimcmd), outra lista de máquinas virtuais é coletada e verificada, cujos resultados são retornados ao vimcmd com o comando “snapshot.removeall” que faz com que todos os instantâneos sejam excluídos:
Como costuma ser o caso das ameaças de ransomware “big-game hunter”, as vítimas geralmente são grandes organizações das quais resgates maiores podem ser extorquidos. Relatórios sugerem que as demandas variam de US$ 400 mil a US$ 3 milhões a serem pagos em criptomoeda.
Embora o número real de vítimas seja desconhecido, mais de vinte organizações foram nomeadas no “site de vazamento” Tor do grupo, em diversos setores e países, como:
Os seguintes processos legítimos, embora suspeitos, foram gerados pela variante Linux/VMware ESXi:
Os seguintes processos legítimos, embora suspeitos, foram gerados pela variante Windows:
Como cada amostra é específica para a vítima, os executáveis a seguir são fornecidos para fins de pesquisa, e não para detecção:
Como cada amostra é específica para a vítima, os executáveis a seguir são fornecidos para fins de pesquisa, e não para detecção: