O pipeline de vulnerabilidades da OpenAI explorou 948 bugs únicos de root no Linux; 20 de 200 sucessos iniciais usaram o bug errado
Em um post de 4 de novembro, o time de Cyber da OpenAI descreveu um pipeline de cinco etapas com um modelo de cyber que ainda não foi lançado. Agentes de reconhecimento escolheram 5.034 alvos de auditoria, cerca de 2,8 milhões de linhas ou perto de 7% do kernel Linux. Agentes analistas geraram 2.308 achados candidatos em 12 horas. Agentes de triagem escreveram uma prova de conceito para cada candidato, rodaram cada uma em uma máquina virtual com Kernel Address Sanitizer e reproduziram 1.724 (cerca de 74,7%) em 30 horas. Depois, agentes de exploit trabalharam em máquinas virtuais com SMEP, SMAP, KASLR e HARDENED_USERCOPY ligados. Eles escreveram 291 provas de conceito de vazamento de informação e 1.169 exploits funcionais de escalada local de privilégio. Depois de uma análise de variantes, a OpenAI escreveu 948 patches distintos para os bugs por trás desses exploits e usa esse número como sua contagem de bugs únicos de escalada de privilégio. A rodada de meados de outubro custou US$ 1.213.430 em créditos de API, e a OpenAI diz que os custos informados são "more an upper bound" (mais um teto). Pesquisadores de segurança revisam cada exploit e cada patch antes do reporte. A OpenAI diz que já enviou centenas de reportes e patches de bugs críticos e trabalha com parceiros do Patch the Planet para mandar o resto. O post omite os detalhes técnicos das 10 novas técnicas de exploração que, segundo a OpenAI, os agentes usaram, e o modelo não foi lançado. Por que importa: A OpenAI agora diz que, no curto e médio prazo, uma conta com poucos privilégios em um sistema com patches atrasados "should be considered functionally equivalent to root access for a well-resourced threat actor" (deve ser tratada como equivalente a acesso root para um atacante com recursos). O post também mostra como um pipeline desses pode contar errado os próprios sucessos. O pipeline contava um exploit como sucesso sempre que um shell de root abria. Numa rodada inicial, ele relatou 200 sucessos. Revisores humanos viram que 20 deles chegaram ao root por outro bug 0-day, diferente do que o agente recebeu. A OpenAI corrigiu com regras de tarefa mais rígidas e uma checagem independente de que cada exploit usou o bug atribuído. A lição do post é "verify the path to a result in addition to verifying the result itself" (verificar o caminho até o resultado, além do próprio resultado). A mesma falha vale para qualquer agente cujo teste de sucesso só olha o estado final.
Para testar: Escolha um fluxo com agente cuja checagem de sucesso só olha o estado final, como testes passando ou um arquivo criado. Acrescente uma segunda checagem de que o agente chegou lá pelo caminho atribuído: o diff mexe no arquivo combinado, ou o trace chama a ferramenta combinada. Rode suas execuções recentes que deram certo por essa checagem e conte quantas falham.
Para se aprofundar
- Help Net Security: o próximo modelo de IA da OpenAI criou 948 exploits de root para Linux em uma rodada ↗
Uma reportagem de 5 de novembro sobre o mesmo post, útil como resumo curto de fora para quem quer os números sem a metodologia completa.
- The Hacker News: pipeline de IA da OpenAI gera 948 exploits de escalada para root no Linux ↗
Cobertura da imprensa de segurança sobre o pipeline. A manchete fala em uma rodada de 30 horas, mas 30 horas foi só a etapa de reprodução, então confira os números no post da OpenAI.