Em vez de implantar arquivos de malware tradicionais no servidor comprometido, os invasores usaram a JVM embutida do Oracle e a instrução CREATE JAVA SOURCE para compilar e armazenar todo o toolkit de pós-exploração como objetos de esquema Java dentro do banco de dados Oracle . Essa abordagem tornou o toolkit invisível para as defesas padrão do sistema operacional, pois as ferramentas de EDR e antivírus focam em processos, binários e arquivos no sistema operacional — elas geralmente não inspecionam classes Java e wrappers PL/SQL armazenados dentro do Oracle .
O toolkit khunt incluía estes componentes, cada um armazenado como um objeto de banco de dados:
| Componente | Função |
|---|---|
| KhuntCmd | Carrega o cmd.exe e executa comandos arbitrários do sistema operacional, embutindo-os em instruções SQL enviadas ao banco de dados |
| KhuntHash | Extrai nomes de usuário e hashes de senhas das tabelas internas de usuários do Oracle e os salva em um arquivo |
| KhuntFS / KhuntFS2 | Exploradores de arquivos para listar, ler, pesquisar e verificar tamanhos de arquivos no sistema comprometido |
| KhuntT | Uma ferramenta simples de "ping" para confirmar se o toolkit está instalado e acessível antes de prosseguir |
| KhuntUnzip | Utilitário para descompactar arquivos |
| wrappers PL/SQL khunt_* | Procedimentos wrapper PL/SQL usados para chamar os métodos Java subjacentes |
Os invasores não pararam no nível de acesso ao banco de dados. Eles usaram o toolkit khunt para migrar da camada do banco de dados para o sistema operacional Windows subjacente em um processo de várias etapas:
cmd.exe /c whoami, que confirmou que estavam operando com privilégios de nível SYSTEM no servidor Windows, estabelecendo RCE do banco de dados para o sistema operacional .reg.exe e copiar os hives de registro SECURITY e SYSTEM, salvando-os como khuntSECURITY.hiv e khuntSYSTEM.hiv em F:\Oracle\ .tasklist /svc e salvaram a saída como khunttasks.txt .esentutl.exe para copiar o SAM e uma segunda cópia do hive SECURITY, salvando-os como khuntSAM.hiv e khunt_SECURITY.hiv .Os hives de registro exfiltrados poderiam ser usados offline para extrair e decodificar hashes de senhas para todas as contas locais no sistema .
A investigação da Huntress revelou vários pontos cegos críticos que permitiram que este ataque tivesse sucesso e evitasse a detecção:
Com base neste ataque, a Huntress recomendou várias mitigações :
Este ataque serve como um lembrete contundente de que mecanismos de banco de dados com ambientes de programação embutidos (como a JVM do Oracle) podem se tornar plataformas de ataque furtivas quando combinados com um único campo de entrada não validado. As equipes de segurança devem estender seu monitoramento além do sistema operacional para incluir a camada de objetos do banco de dados.