2 pontos por GN⁺ 3 시간 전 | 1 comentários | Compartilhar no WhatsApp
  • 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

 
GN⁺ 3 시간 전
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...

    • No app Codex, às vezes ao usar o 5.6 Sol ele dizia que havia encontrado uma vulnerabilidade, mas não podia informar qual era; queria saber como os guardrails de detecção de vulnerabilidades atuais lidam com isso
    • Queria saber quando devo usar esta ferramenta em vez do plugin do Codex, que pelo que entendo também pode ser chamado pelo CLI
    • Queria saber se chamadas à API da OpenAI são obrigatórias, ou se também dá para usar montando um endpoint de LLM compatível com OpenAI localmente
    • É exatamente por isso que não acredito na propaganda de “modelos incríveis que fazem tudo de uma vez e tornarão programadores desnecessários”. Ao contrário do que os laboratórios de LLM afirmam repetidamente, até nos produtos que eles próprios fazem continuam aparecendo falhas como problemas de autenticação
      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 o HEAD do repositório mudou durante a varredura e, por isso, não foi possível salvar os resultados, então eu deveria iniciar uma nova varredura

  • O 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

    • São produtos completamente diferentes
  • 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

    • Se for uma empresa que proíbe o uso do ChatGPT, é bem provável que também não possa usar uma ferramenta de análise de segurança do ChatGPT
    • Como forma de usar modelos GPT sem enviar dados para a OpenAI, dá para escolher o Amazon Bedrock
  • Será que ferramentas assim podem levar empresas como a Snyk à falência? Uso Snyk no trabalho, mas nunca fiquei satisfeito

    • Isso eleva o nível de exigência competitiva, e a especialização sustentável também terá de evoluir no mesmo ritmo
    • Não entendo como alguns trechos de código poderiam levar a Snyk à falência