- A OpenAI tornou open source a CLI e as ferramentas relacionadas do Codex Security, permitindo seu uso em ambientes locais de desenvolvimento e em CI
- Analisa repositórios autorizados para detectar vulnerabilidades de segurança e validar a possibilidade real de exploração, apresentando também o código relacionado e as evidências
- Permite escolher a análise não só do repositório inteiro, mas também de caminhos específicos, diffs entre commits ou apenas alterações locais ainda não commitadas
- Oferece um modo deep, que examina um escopo mais amplo do que a análise comum, e uma base de conhecimento que reflete a arquitetura, o modelo de ameaças e as políticas de segurança do projeto
- Fornece, de forma estruturada, severidade, confiança, evidências e formas de correção dos achados, além de permitir comparar históricos de análise ou conectar os resultados a políticas de CI
Detecção e validação de vulnerabilidades
- Não se limita a listar padrões de código suspeitos; analisa o fluxo do código e o contexto ao redor para validar se há de fato um problema de segurança
- Para cada achado, fornece as seguintes informações
- Tipo da vulnerabilidade e severidade
- Confiança no julgamento
- Arquivos afetados e posições no código
- Evidências usadas para classificar como vulnerabilidade
- Caminho possível de ataque ou exploração
- Método de correção recomendado
Escolha do escopo de análise
- É possível limitar o escopo da análise conforme o objetivo do trabalho
- Análise do repositório inteiro
- Análise apenas de um diretório ou pacote específico
- Análise das alterações entre um commit de referência e o commit atual
- Análise de alterações locais em staging ou ainda não commitadas
- Como permite analisar apenas código recém-adicionado ou modificado, pode ser usado em code review e em verificações antes do deploy
Modo deep
- Usa mais tempo e mais trabalho de análise do que a verificação comum para revisar o repositório de forma mais ampla
- É usado para analisar vulnerabilidades complexas que exigem rastrear relações entre vários arquivos e componentes, ou problemas difíceis de encontrar com verificações superficiais de padrões
- Pode ser aplicado não só ao repositório inteiro, mas também a caminhos especificados
Incorporação do conhecimento do projeto
- Em vez de analisar o código isoladamente, pode refletir na análise o contexto fornecido pelo projeto
- Julga riscos específicos do projeto com base em documentos de arquitetura, modelos de ameaças, políticas de segurança, regras internas etc.
- Também pode incluir no escopo da análise código que parece normal pelas regras gerais de segurança, mas viola os princípios de design daquele sistema
Relatório de resultados e completude da análise
- Registra não só as vulnerabilidades encontradas, mas também quais áreas foram efetivamente analisadas
- O relatório pode incluir os seguintes estados da análise
- Escopo analisado
- Áreas excluídas da verificação
- Trabalhos pendentes que não foram concluídos
- Perguntas que exigem confirmação adicional
- Com isso, é possível verificar não apenas a lista de resultados, mas também até que ponto o repositório foi revisado
Verificação contínua de segurança
- É possível reabrir resultados de análises anteriores ou reexecutar a mesma análise para acompanhar mudanças nos achados
- Permite comparar resultados antes e depois de alterações no código para verificar se novas vulnerabilidades surgiram ou se foram corrigidas
- Pode ser conectado a verificações antes de commit, code review, análises em lote de vários repositórios e verificações de políticas de segurança em pipelines de CI
1 comentários
Comentários do Hacker News
Sou Michael, cofundador da Promptfoo e estou desenvolvendo o Codex Security CLI na OpenAI. Obrigado por apontar o problema de autenticação; como acabamos de torná-lo open source, ainda há muito a melhorar e o produto deve evoluir rapidamente
Seria ótimo se vocês testassem e contassem o que funciona bem e o que pode melhorar; também responderei perguntas
Documentação do CLI: https://learn.chatgpt.com/docs/security/cli
Também estamos contratando gente para participar do desenvolvimento: https://openai.com/careers/full-stack-software-engineer-cybe...
Seria bom se menos gente acreditasse nisso, já que os próprios produtos do laboratório desmentem essa narrativa
Rodei em um repositório pequeno e ele parou depois de quase uma hora, consumindo metade da cota semanal do plano Pro
Executei
npx codex-security scan .para fazer a varredura com até 8 slots de worker, mas após 52 minutos apareceu um erro dizendo que oHEADdo repositório mudou durante a varredura e, por isso, não foi possível salvar os resultados, então eu deveria iniciar uma nova varreduraO scanner em si é a parte menos interessante; o verdadeiro produto é o sistema de execução ao redor, responsável por deduplicação entre execuções, rastreamento de falsos positivos, controle de orçamento e decisão sobre aprovação em CI. Acredito que as inovações mais interessantes também surgirão nessa camada
Vi exatamente o mesmo padrão ao criar o AQ, um sistema de execução de codificação para equipes. No começo achei que o modelo bruto em si fosse a resposta, mas mudei de ideia rapidamente, e sistemas de execução orientados a propósito são muito mais poderosos do que eu esperava
Continuo recebendo erro dizendo que está tentando fazer uma operação não permitida, o que é bem irritante. Queria saber em que tipos de projeto isso funciona e como a propriedade do código é verificada
Por exemplo, queria saber se simplesmente não funciona no kernel Linux, mesmo que inclua um patch escrito por mim
Ferramentas de segurança de empresas de IA parecem um corpo de bombeiros administrado por incendiários. São úteis, mas é difícil não pensar em quem se beneficia com tantos incêndios
Parece que isso já era oferecido antes como plugin do Codex; a principal novidade é que a OpenAI agora o tornou open source e o desenvolvimento está avançando rápido
Durante a varredura, quase não há informações interessantes na saída do CLI. Seria bom mostrar coisas como uso de tokens ou progresso
A Alibaba também lançou em open source uma ferramenta de revisão de código baseada em CLI: https://github.com/alibaba/open-code-review
Queria saber se esta ferramenta faz upload do código para o ChatGPT para análise. Em alguns projetos corporativos, pode não ser permitido enviar código para fora da empresa
Será que ferramentas assim podem levar empresas como a Snyk à falência? Uso Snyk no trabalho, mas nunca fiquei satisfeito