Uma ilustração técnica abstrata gerada sobre um fundo cinza-azulado pálido, desenhada com traços finos em ardósia escura e ciano. À esquerda ergue-se uma pilha alta de blocos semelhantes a servidores, com três dos seus compartimentos laterais desenhados abertos e iluminados por dentro por um brilho ciano frio. A partir da abertura central, um único filamento âmbar sai da máquina e atravessa uma ténue grelha de planta técnica, deixando um rasto pontilhado de pequenos nós quadrados; o rasto continua para além da moldura, enquanto um anel fino e fechado à direita assinala o posto de controlo humano ausente. Uma pequena linha limite tracejada percorre a base, e finas marcas de medição cruzam a aresta superior. Não aparecem textos, números, rostos, mãos, robôs, logótipos de software nem marcas de organizações. O logótipo OrcaRouter está composto no canto inferior direito.
AI Safety Incidents

O Agente Hermes operou sem supervisão contra o Ministério das Finanças da Tailândia, e os seus logs ficaram online

Autor

Magnus Corvin

Data de publicação

Modelos mais recentes · 20Ver todos os modelos →
Benchmarks: Artificial Analysis · atualizado diariamente
Voltar para todas as publicações

Entre 9 e 13 de julho de 2026, a empresa de inteligência de ameaças Hunt.io e o pesquisador Bob Diachenko encontraram três diretórios abertos em um servidor de staging em Hong Kong pertencente a uma intrusão contra o Ministério das Finanças da Tailândia. Os 585 arquivos e 470 MB de material incluíam os logs do Hermes Agent, o framework de agente de código aberto da Nous Research, executado no modo "YOLO" com a etapa de aprovação humana desativada. Sem supervisão, ele executou verificações de privilégio do LinPEAS, enumerou binários SUID e rastreou recursivamente uma raiz web pertencente ao Gabinete do Secretário Permanente de Finanças, catalogando registros de pessoal que datam de 2012. O mesmo host continha um implante Go anteriormente não relatado que o operador chamou de Hades. A Hunt.io não encontrou evidências de que arquivos tenham sido exfiltrados e não conseguiu estabelecer como os invasores entraram pela primeira vez. O registro completo, datado de 30 de julho de 2026 e classificado com confiança A, está em o arquivo de incidentes de IA, ao lado dos demais registros de intrusão conduzidos por agentes nesta série.

Os diretórios estavam em 43.246.208[.]207, um host na AS132883 (TOPIDC) em Hong Kong, e o Attack Capture da Hunt.io os arquivou em 9, 10 e 13 de julho: 145 arquivos, depois 62, depois 378, num total de 585. O IP tinha um histórico documentado como controlador de ShadowPad e estava executando um servidor de comando e controle VShell na porta 21083 quando a Hunt.io examinou. Os pesquisadores dizem que não têm "evidências que confirmem ou neguem" que o VShell tenha sido usado contra o ministério. O arquivo data o registro em 30 de julho de 2026; a pesquisa por trás dele é mais antiga, publicada pela Hunt.io em 23 de julho após uma janela de divulgação de sete dias, e noticiada pelo The Record em 27 de julho e pela Dark Reading em 28 de julho.

Self-authored HTML card headed 'The server, in three captures', kicker 'What Hunt.io archived', title 'Three open directories on one Hong Kong host', subtitle '43.246.208[.]207, AS132883 (TOPIDC), Hong Kong. The dates are the directory labels Hunt.io uses.' Three rows: 9 July, 145 files, exploit and CVE code, mailer scripts, MOF ICT session material and Hermes logs; 10 July, 62 files, Go-compiled executables and ELF binaries including Hades; 13 July, 378 files, additional exploit code and files identifying MOF internal access. A band below reads 'Total: 585 files, 470 MB. Ports 80, 8443 and 8080. The host also ran a VShell C2 server on port 21083; Hunt.io could not confirm whether VShell was used against the ministry.' A footer cites Hunt.io, 23 July 2026. The OrcaRouter logo sits bottom-right.

Os cinco registros de chamadas do agente

Dentro do diretório de 9 de julho havia uma pasta chamada hermes-results, contendo cinco ficheiros, cada um com o nome call_00_ seguido de uma cadeia aleatória. A Hunt.io descreve-os como registos das próprias chamadas do agente e resume o que cada uma devolveu. O primeiro é uma avaliação de escalonamento de privilégios e uma verificação de vulnerabilidades do kernel contra um host de um ministério. O segundo é uma segunda execução do LinPEAS, que enumera serviços. O terceiro enumera binários SUID e SGID com o find. O quarto lista contêineres e sistemas de ficheiros e é pontuado por erros de pipe quebrado, que a Hunt.io interpreta como o agente a produzir mais saída do que o servidor conseguia suportar. O quinto é o que mais importa: uma pesquisa recursiva da raiz web ligada ao gabinete do Secretário Permanente, que continha documentos Office padrão, formulários de avaliação de desempenho e registos de pessoal que remontam a 2012.

Nada disso exigia uma pessoa ao teclado. A Hunt.io afirma que o operador executou o Hermes Agent "em modo não assistido ou YOLO, contornando solicitações de aprovação para comandos que pudessem ser considerados perigosos". A estrutura, lançada em fevereiro de 2026, é executada como um daemon persistente e mantém memória entre sessões; YOLO é a opção que remove as solicitações. A Hunt.io informa que o projeto já tinha ultrapassado 140.000 estrelas no GitHub até julho de 2026. A análise dos registros pela Cloud Security Alliance descreve um agente avaliando cada resultado e selecionando a próxima etapa — um fluxo de trabalho que, visto de fora, lembra como um analista humano procederia, no ritmo de uma máquina.

A Hunt.io é criteriosa quanto ao que os logs estabelecem. A varredura do diretório raiz da web mostra o agente chegando a arquivos de pessoal; não mostra que eles tenham saído. “Não há evidências de que os arquivos tenham sido exfiltrados”, diz o relatório. Seu resumo de todo o servidor é que os arquivos “descrevem uma intrusão ainda em curso: ferramentas preparadas, acesso interno em expansão e nenhum sinal de que dados tenham saído da rede, embora o operador estivesse claramente catalogando conteúdo web.”

Self-authored HTML card headed 'The agent's five call logs', kicker 'hermes-results, captured 9 July', title 'What the agent was asked to do, and what came back', subtitle 'The five call logs and their result files, as listed by Hunt.io. Descriptions are the report's.' Five rows, each giving an index, a call_00_ filename ending .txt, and Hunt.io's description: call_00_EE5atKwDPZemr8R1wc1f4466.txt, a primary privilege-escalation assessment and kernel vulnerability scanning against a MOF host; call_00_RMhbTh6e79QZi9R0zWgA9333.txt, a second LinPEAS run enumerating services; call_00_r8hfBizhxfPf4OhtO6z65472.txt, SUID and SGID binary enumeration using the find command; call_00_Q6iateZ5qnlWMMgAtWtd1047.txt, a container and filesystem listing with broken-pipe errors showing more output than the server could carry; call_00_Hu9InX5bIcCp55iwJTzn6181.txt, a recursive search of the web root connected to the Permanent Secretary office, holding Office files, performance evaluation forms and personnel records back to 2012. A band below reads 'YOLO mode removed the approval prompts. The custom linpeas.sh also checked CVE-2026-43503 (DirtyClone), CVE-2026-31431 (Copy Fail) and CVE-2026-43284 / CVE-2026-43500 (Dirty Frag). No evidence the enumerated files were exfiltrated.' A footer cites Hunt.io, 23 July 2026. The OrcaRouter logo sits bottom-right.

O trabalho que o humano ainda fazia

A divisão do trabalho é o aspecto mais útil do relatório. O agente cuidou do reconhecimento genérico e repetível — trabalho que pode ser automatizado por scripts e não exige conhecimento do alvo. O operador forneceu o que o agente não poderia saber: uma wordlist de senhas criada a partir de abreviações dos departamentos internos e programas do ministério, nomes de host internos, endereços não roteáveis e scripts escritos em torno de serviços específicos. A nota de pesquisa da Cloud Security Alliance, publicada em 26 de julho, faz o mesmo ponto: o humano manteve as “técnicas específicas do alvo”, enquanto o agente executou as partes que escalam.

O exemplo mais claro é a cadeia do Hadoop. O diretório de 13 de julho continha mais de uma dúzia de arquivos destinados ao Apache HiveServer2, incluindo hive_rce_py2.py, que abre um socket bruto para um nó interno na porta 10000 e se autentica com SASL PLAIN. O modo de autenticação padrão do HiveServer2 é NONE, que aceita quaisquer credenciais sem validá-las, e o script foi escrito para contar exatamente com isso. Em seguida, ele registra uma função definida pelo usuário Java maliciosa empacotada como HiveCmd.jar e passa comandos de shell por meio do Hive SQL, recuperando a saída via WebHDFS de um segundo nó interno na porta 50070. Um payload Ambari separado nomeia um DataNode HDFS interno por hostname, atacando a camada de gerenciamento em vez dos dados.

O restante do kit de ferramentas segue o mesmo padrão de preparação. Scripts Node.js com prefixo gf_ acionam uma instância headless do Chrome por meio de um proxy SOCKS5 para alcançar um console de administração interno do GlassFish, fazer login com credenciais padrão e implantar um arquivo WAR; a Hunt.io não conseguiu confirmar se qualquer um dos WARs foi implantado. Um web shell em PHP disfarçado de arquivo de cache de journal foi colocado em /storage/Counter/nine/.journald-cache.php em um servidor web do ministério. Um script Perl, mail4.pl, testa autenticação SMTP contra a infraestrutura de e-mail do ministério com endereços de caixa de correio codificados diretamente no código e senhas construídas a partir dos tokens extraídos; scripts Python chamados mail_test.py e mail3.py fazem o mesmo. Um arquivo de texto, alf_cookie.txt, contém material de sessão do Alfresco para um endereço interno do ministério. Ambos os diretórios também contêm código de exploit para CVE-2021-3156, o estouro de heap do sudo, CVE-2021-4034, PwnKit, e CVE-2017-7269, o estouro do WebDAV do IIS 6.0, além de shellcode e caminhos que apontam para a intranet do ministério.

Nada aqui constitui uma técnica inédita. O que os registos acrescentam é que a enumeração decorreu continuamente, sem as pausas que um operador humano deixa entre comandos — a nota da Cloud Security Alliance argumenta que a deteção concebida em torno de atividade ao ritmo de digitação não se adequa bem a isso.

Hades, preparado mas sem confirmação de que está em execução

O diretório de 10 de julho era um servidor de distribuição: 62 binários Go compilados, Windows PE e Linux ELF, muitos nomeados em homenagem a processos legítimos do sistema — ctfmon, csrss, conhost e MicrosoftEdgeUpdate no Windows; kworker, multipathd e accounts-daemon no Linux. Dois carregam o nome do projeto, hades_linux_amd64 e hades_windows_amd64. A Hunt.io analisou uma amostra de cada plataforma e constatou que provinham do mesmo código-fonte; os outros 60 compartilham a mesma faixa de tamanho e as mesmas características de compilação, mas não foram examinados individualmente.

A análise estática e dinâmica encontrou comando e controle HTTPS disfarçado de ativos web estáticos: /assets/app.min.js para check-in, /assets/vendor.js para envio de tarefas, /assets/main.js para upload. As cargas úteis são criptografadas com AES-256-GCM sob uma chave embutida por build. As variáveis de ambiente incluem uma data de encerramento, HADES_KILLDATE, e um cronograma de horário de funcionamento que faz o implante dormir fora de uma janela configurada. A build do Windows persiste por meio de uma chave Run do Registro e de uma tarefa agendada, é executada em memória por carregamento reflexivo em um svchost.exe com processo esvaziado, captura capturas de tela via GDI e oferece um proxy SOCKS; a build do Linux usa um cron job, um PTY padrão e execução de shellcode. Ambos suportam transferência de arquivos em blocos, com retomada.

As duas amostras analisadas apontavam para controladores diferentes: o executável Windows dwm_33b7.exe envia beacons para o servidor de staging na porta 443, e o binário Linux multipathd_04d0 para 202.181.27[.]115 na porta 12443 — o host encontrado através da impressão digital do certificado compartilhada. A Hunt.io observa que a nomenclatura pode ser coincidente: na mitologia grega, Hermes guia as almas para Hades.

O que nenhuma fonte estabelece é que o Hades estivesse em execução dentro do ministério. A Hunt.io recuperou os binários do próprio servidor do operador. A nota da Cloud Security Alliance afirma que nenhum artefato recuperado mostra o Hades chegando a uma máquina do ministério, e a Dark Reading relata que a pesquisa não especificou onde ele foi implantado. O implante é uma capacidade que o operador havia construído e preparado, não um residente confirmado em um host do ministério.

Quem estava por trás disso?

A Hunt.io não nomeou um grupo. Ela avaliou, com confiança de baixa a média, que o operador é falante de chinês ou intimamente familiarizado com o idioma, com base em quatro indicadores: o histórico do host como controlador ShadowPad, infraestrutura em Hong Kong, uma senha da interface web do Hermes contendo a palavra chinesa "Leishen", que significa deus do trovão, e uma chave de API para o FOFA, um serviço chinês de reconhecimento de ativos da internet. Um snapshot do ambiente também registra o cliente SSH 103.97.0[.]57, no AS133073 (HK Kwaifong Group Limited), conectando-se ao servidor de staging. Nada disso constitui atribuição a um Estado ou a um cluster nomeado, e a Hunt.io afirma isso mesmo.

Duas coisas sobre a intrusão em si permanecem desconhecidas. O caminho de acesso inicial é uma delas: "O método de acesso inicial permanece desconhecido", conclui o relatório. A outra é o escopo. A Hunt.io diz que cookies de sessão ativos, web shells implantados e acesso à rede interna indicam que o operador "conseguiu comprometer vários sistemas dentro da rede da MOF", mas também adverte que os valores dos cookies por si só não provam um login, porque o Laravel emite tokens de sessão e CSRF para qualquer visitante. O comprometimento é uma avaliação construída a partir de artefatos, não um inventário confirmado de hosts.

O que a Tailândia fez em seguida

A Hunt.io afirma que ela e Diachenko notificaram o CERT nacional da Tailândia e a Agência Nacional de Cibersegurança em 15 de julho de 2026, e que ambos confirmaram o recebimento no mesmo dia; a publicação foi então retida por um período de sete dias. Não foi encontrado nenhum aviso público do ThaiCERT que fizesse referência ao ministério na cobertura analisada para este artigo.

Em 27 de julho, o dia em que The Record noticiou a intrusão, o Comitê Nacional de Segurança Cibernética da Tailândia realizou sua segunda reunião de 2026 e aprovou medidas voltadas às ameaças de agentes de IA. O relato da própria agência diz que o comitê designou o ThaiCERT para monitorar, analisar e rastrear ameaças de agentes de IA, alertar agências em risco e apoiar a resposta a incidentes e a perícia digital; incumbiu os CERTs setoriais de reforçar verificações e relatórios; e endossou medidas proativas, incluindo verificações de sistemas expostos à internet, gestão de contas privilegiadas, segmentação de rede, backups e testes de recuperação. Também orientou diretrizes para o uso seguro, transparente e auditável de agentes de IA dentro das organizações, e exercícios conjuntos do ThaiCERT e dos CERTs setoriais simulando ataques de agentes de IA. A publicação não nomeia o Ministério das Finanças nem a Hunt.io, e The Record observou que as autoridades "não fizeram referência direta à investigação da Hunt.io" ao avaliar as medidas aparentemente voltadas à ameaça. Qualquer vínculo causal entre a reunião e esta intrusão é uma inferência, não uma declaração da agência.

Theerawut Wittayakorn, secretário-geral adjunto do Comitê Nacional de Segurança Cibernética, afirmou após a reunião que a Tailândia "deve ser capaz de se beneficiar plenamente da IA enquanto gerencia sistematicamente os riscos associados", informou o The Record. O próprio Ministério da Fazenda permaneceu em silêncio: o The Record informou em 27 de julho que o ministério não havia reconhecido publicamente o incidente e não respondeu a um pedido de comentário, e o Dark Reading informou no dia seguinte que o governo não havia se pronunciado. O registro do arquivo, datado de 30 de julho, registra o mesmo.

O que está estabelecido, o que é avaliado, o que está em falta

O arquivo classifica o registro como um incidente concretizado, severidade crítica, confiança A, incontestável, com dano real registrado e a etiqueta de tipo WEAPON; não está marcado como marco. A classificação de confiança descreve a documentação, e a documentação é invulgarmente direta: a Hunt.io arquivou o servidor de preparação dos operadores, não os registros de uma vítima. Não descreve verificação independente, e nesse ponto o registro é escasso.

• Constatado: três diretórios abertos em um host entre 9 e 13 de julho, contendo 585 arquivos e 470 MB; cinco logs de chamadas do Hermes mostrando LinPEAS, enumeração de SUID, listagem de contêineres e varredura do web-root; Hermes Agent em execução no modo YOLO; 62 binários Go, incluindo Hades; o script HiveServer2 e sua UDF; o caminho do web-shell; material de credenciais e sessão; nenhuma evidência de exfiltração; a notificação da Hunt.io ao ThaiCERT e ao NCSA em 15 de julho, reconhecida no mesmo dia.

• Avaliado: que o operador é falante de chinês, com confiança baixa a média; que vários sistemas ministeriais foram comprometidos; que as medidas da NCSA de 27 de julho foram uma resposta a esta intrusão.

• Faltam: o caminho de acesso inicial; quantos hosts ou registros o operador alcançou; se algum arquivo saiu da rede; alguma confirmação do ministério; algum alerta público do ThaiCERT; algum exame forense independente.

Uma fonte secundária foi mais longe do que o relatório primário. O resumo de segurança em chinês do iThome de 27 de julho, que sintetiza a mesma pesquisa da Hunt.io, afirma que os invasores entraram por meio de um web shell PHP em um servidor do ministério exposto à internet e que o ambiente continha pelo menos 47 hosts, 54,9 TB de dados financeiros governamentais, 14 bancos de dados Microsoft SQL, sistemas biométricos e um gateway de área de trabalho remota. Nenhum desses números aparece no relatório da Hunt.io, que afirma que o método de acesso inicial permanece desconhecido, e o registro do arquivo segue o relatório. Leitores que viram os números maiores devem tratá-los como sem suporte na fonte primária.

Existe reportagem independente, mas não evidências independentes. The Record (27 de julho), Dark Reading (28 de julho) e Cloud Security Alliance (26 de julho) recorrem todas aos dados da Hunt.io; nenhuma descreve o seu próprio exame forense, acesso às vítimas ou análise de amostras. A Dark Reading acrescenta uma entrevista com o chefe de pesquisa da Hunt.io, Esteban Borges, que afirma que a empresa não encontrou evidências de exfiltração e que as operações com uso intensivo de IA que ele observou deixam mais vestígios, não menos. The Record acrescenta a declaração da NCSA. A nota da CSA acrescenta análise e uma cautela útil: nenhum artefato recuperado mostra o Hades em uma máquina de um ministério. Além desses acréscimos, os fatos do incidente na cobertura remontam ao mesmo relatório primário.

Self-authored HTML card titled 'Established, assessed, missing', badged 'Evidence check', subtitle 'One primary investigation, secondary reporting that relays it, and no independent forensics.' Three columns. The first, headed 'Established' and badged 'On the record', lists: three open directories on 43.246.208[.]207 from 9 to 13 July, 585 files and 470 MB; five Hermes call logs showing LinPEAS, SUID enumeration, container listing and a web-root crawl including personnel records to 2012; Hermes Agent in YOLO mode; 62 Go binaries including Hades; HiveServer2 default NONE authentication and a HiveCmd.jar UDF; web shell at /storage/Counter/nine/.journald-cache.php; credential and session material; no evidence of exfiltration; ThaiCERT and NCSA notified 15 July. The second, headed 'Assessed' and badged 'Not proven', lists: a Chinese-speaking operator at low-to-medium confidence, from ShadowPad history, Hong Kong infrastructure, the 'Leishen' password and a FOFA key; compromise of multiple ministry systems, inferred from cookies, shells and internal access; that the 27 July NCSA measures respond to this intrusion, which the agency does not say. The third, headed 'Missing' and badged 'Open', lists: the initial access path; host and record counts; whether any file left the network; any ministry statement; any public ThaiCERT advisory; independent forensic examination. A footer lists the sources: Hunt.io, 23 July 2026; Cloud Security Alliance, 26 July 2026; The Record, 27 July 2026; NCSA Thailand, 27 July 2026; Dark Reading, 28 July 2026. The OrcaRouter logo sits bottom-right.

O que foi dito aos defensores

As recomendações da Hunt.io abordam as partes com correções claras. Revise o modo de autenticação do HiveServer2 e aplique a lista de bloqueio de UDF; audite recursivamente as raízes web em busca de arquivos PHP com nomes iniciados por ponto que imitam caches do sistema; aplique patch no sudo para 1.9.5p2 ou posterior e verifique as versões do polkit em relação à CVE-2021-4034; desative o WebDAV em qualquer instância restante do IIS 6.0 ou migre para fora da plataforma; gere alertas quando processos de servidor web abrirem conexões de saída para portas internas, como 10000 ou 50070; e altere as credenciais padrão nos consoles administrativos do GlassFish, restringindo o acesso a redes confiáveis. Para organizações que executam frameworks de agentes, a Cloud Security Alliance acrescenta um controle que teria sido relevante aqui: audite se um modo não assistido ou equivalente ao YOLO está habilitado em qualquer lugar e desative-o, a menos que haja um motivo registrado e com risco aceito.

O Hunt.io também transformou o incidente em uma forma de encontrar outros painéis expostos. A interface web do Hermes, segundo a empresa, retorna um cabeçalho Server e um realm de autenticação básica característicos, e uma consulta de banner para o HermesWebUI retornou cerca de 5.900 eventos no mês anterior; uma busca por diretórios abertos contendo o caminho /hermes-results/ do agente retornou 575 acertos. Essas são contagens do conjunto de dados de um único fornecedor no momento da publicação, não uma contagem de vítimas, e elas mudam à medida que os painéis aparecem e desaparecem. A parte útil é o indicador: painéis de agente expostos e seus diretórios de saída são detectáveis, e foi assim que esta operação veio à tona.

O arquivo não marca a entrada como um marco, e o registro técnico respalda essa moderação. LinPEAS, abuso de Hive UDF, credenciais padrão e um exploit público de 2017 são ferramentas antigas; o que há de novo é a alocação de pessoal — um agente fazendo a enumeração continuamente, e um operador fazendo a preparação específica do alvo. É esse arranjo em duas partes que os logs documentam. O que eles não conseguem documentar é o impacto: até onde o operador chegou dentro do ministério, o que os arquivos de pessoal continham, ou se algo saiu da rede. Até que o ministério ou um investigador independente responda a essas perguntas, o registro descreve uma intrusão bem documentada cujo custo ainda é desconhecido.