A Verificação de IA para pull requests produz descobertas de segurança adicionais com um mecanismo de verificação baseado em IA que é executado em pull requests e complementa CodeQL. Ao contrário dos alertas CodeQL, os resultados da Verificação de IA estão disponíveis apenas em pull requests e não aparecem como alertas pendentes na visão de segurança do repositório.
O AI Scan expande a cobertura code scanning sem a necessidade de uma ferramenta de escaneamento ou configuração de build separada.
Availability
A disponibilidade depende de quem é o proprietário do repositório e sua visibilidade.
| Proprietário do repositório | Visibilidade | Disponibilidade e requisitos |
|---|---|---|
| Organização | Public | Disponível sem uma licença de committer ativo |
| Organização | Privado ou interno | Disponível com GitHub Code Security ou GitHub Advanced Security |
| Conta pessoal | Public | Available |
| Conta pessoal | Privada | Não disponível |
A Verificação de IA para solicitações de pull não está disponível para repositórios no namespace pessoal de conta de usuário gerenciada, mesmo que code scanning esteja habilitada para o repositório.
Você não precisa de uma licença GitHub Copilot para usar o AI Scan.
Billing
O uso do AI Scan é separado do licenciamento de committer ativo e é cobrado sob a SKU Code Security AI Credits. O uso só começa quando um pull request qualificado é verificado.
Para repositórios de propriedade da organização, o uso é cobrado à conta responsável pela cobrança da organização.
Para repositórios públicos de propriedade de uma conta pessoal, o uso é cobrado nessa conta pessoal, a menos que o proprietário do repositório tenha uma GitHub Copilot licença fornecida por uma organização ou empresa. Nesse caso, o uso é cobrado da organização ou empresa que fornece a licença.
Se a conta de cobrança receber AI credits incluídos por meio de um benefício GitHub Copilot, a Verificação de IA usará esses créditos primeiro. Depois que os créditos incluídos forem esgotados ou se a conta não tiver créditos incluídos, o uso será cobrado por consumo e regido pelos orçamentos aplicáveis. Se um orçamento rígido não deixar Code Security AI Credits disponíveis, o AI Scan não poderá produzir descobertas. A verificação é retomada quando um administrador aumenta o orçamento limitador ou um novo ciclo de cobrança começa.
Para obter detalhes sobre o modelo de cobrança, consulte GitHub Advanced Security cobrança de licença.
Como o AI Scan funciona
A Verificação de IA é executada automaticamente quando todas as seguintes condições são atendidas:
- Code scanning está habilitado para o repositório.
- A verificação de IA do repositório na configuração de pull requests está habilitada.
- Uma solicitação de pull que não é de uma bifurcação ou criada por Dependabot contém alterações em um idioma ou estrutura com suporte que CodeQL não abrange.
As verificações são executadas quando uma pull request é criada e após cada novo commit, como fazem para CodeQL.
A Varredura por IA não requer a configuração padrão CodeQL e não depende do status da análise CodeQL. Se a CodeQL análise falhar ou estiver em estado de espera, o AI Scan ainda será executado.
Os resultados são publicados no pull request à medida que são encontrados. Se a verificação CodeQL demorar mais para ser concluída, você poderá ver os resultados da Verificação de IA antes que os resultados de CodeQL apareçam, ou vice-versa.
As constatações são apenas para orientação. Eles não falham na Code scanning verificação e não podem bloquear mesclagens de pull request por meio dos requisitos do conjunto de regras. Eles fornecem sinais sobre onde a segurança de código pode ser melhorada sem interromper o fluxo de trabalho.
O mecanismo de verificação analisa o código de pull request sem exigir um sistema de build e pode usar a pesquisa de código para coletar mais contexto do repositório antes de sinalizar um problema. Ele usa prompts especializados, não arquivos de instrução personalizados, como /.github/copilot-instructions.md ou /CLAUDE.md.
Como os resultados do AI Scan aparecem em pull requests
As descobertas da Análise por IA aparecem ao lado de alertas CodeQL nas abas Conversa e Arquivos alterados de um pull request. Cada descoberta é rotulada com um indicador de "IA" para que você possa distingui-lo dos CodeQL alertas.
Cada descoberta descreve o problema de segurança e explica o risco. A maioria dos achados também inclui uma correção sugerida. Quando disponível, Copilot Autofix recomenda uma alteração de código, como faz para alertas CodeQL.
Você pode usar o controle de polegares para cima ou para baixo para fornecer comentários e ajudar a melhorar a qualidade da detecção.
Limitations
- A Análise por IA analisa apenas pull requests. Não há suporte para exames completos do repositório.
- Os resultados da varredura de IA ainda não podem ser usados em conjuntos de regras para exigir requisitos para mesclagem.
- O AI Scan não é executado em pull requests de forks nem em pull requests criadas por Dependabot.
- As categorias de detecção e os idiomas compatíveis podem mudar conforme o recurso evolui.
- Como qualquer ferramenta baseada em IA, os resultados do AI Scan podem incluir falsos positivos. Use o mecanismo de comentários para relatar resultados imprecisos.
Idiomas com suporte
AI Scan dá suporte a linguagens e estruturas selecionadas que CodeQL não abrangem atualmente. Os exemplos incluem PHP, Shell/Bash, HCL (configuração do Terraform), Dockerfiles, JSP para Java e Blazor para C#.
Para verificar se CodeQL oferece suporte a um idioma, consulte Verificação de código com CodeQL.
Categorias de detecção
Atualmente, o AI Scan classifica as descobertas nas categorias a seguir. A cobertura pode mudar à medida que o recurso evolui.
- Injeção de cadeias de caracteres – SQL, HTML, shell, JSON ou YAML inseguros criados direto de cadeia de caracteres com escape ou sanitização ausentes ou incorretos.
- Criptografia fraca – algoritmos fracos, chaves pequenas, aleatoriedade insegura, criptografia ausente ou hash de senha fraca.
- Controle de acesso quebrado — travessia de diretórios, falhas de CSRF ou redirecionamentos abertos acionados pelo usuário.
- Exposição de dados confidenciais – Segredos, tokens, senhas ou rastreamentos de pilha armazenados, registrados em log ou enviados sem a proteção adequada.
- Configuração incorreta de segurança – configurações ou padrões arriscados, como desabilitar controles de segurança ou habilitar recursos de depuração.
- Falhas de autenticação — Ausência de TLS ou de validação, fluxos de autenticação inseguros ou ausência de limitação de taxa de requisições.
- Falhas de integridade de dados – desserialização não segura, HTTP para ações confidenciais, poluição de protótipo ou execução de conteúdo não confiável.
- Falsificação de solicitação do lado do servidor (SSRF) — O servidor busca URLs, hosts ou protocolos controlados por um invasor.
- Riscos na cadeia de fornecedores – Ações, pacotes ou imagens de terceiros não fixados ou downloads sem verificação de integridade.
Habilitando a verificação de IA
Antes de habilitar a Verificação de IA em solicitações de pull para uma organização, confirme a qualificação do repositório, examine a franquia incluída AI creditsna conta de cobrança e configure os orçamentos para uso por consumo.
Habilitar a configuração da organização habilita a Verificação de IA imediatamente para todos os repositórios qualificados onde code scanning está habilitado. Os administradores do repositório podem então optar por não participar, mas as pull requests qualificadas podem consumir créditos de IA de Segurança de Código antes que isso aconteça.
Você não precisa selecionar um modelo para habilitar a Verificação de IA.
- Enterprise: os proprietários do Enterprise podem permitir ou impedir que as organizações habilitem o AI Scan. A política é definida como "Não permitida" por padrão. Permitir a Verificação de IA não a habilita automaticamente. Consulte Como impor políticas para segurança e análise de código na empresa.
- Organização: os proprietários da organização e os gerentes de segurança podem habilitar a Verificação de IA para solicitações de pull para repositórios qualificados. Repositórios herdam a configuração da organização. Consulte Configurações de segurança globais para sua organização.
- Repositório de propriedade da organização: pessoas com acesso de administrador ao repositório podem desativar a participação quando a organização tiver habilitado a Verificação de IA. Eles não podem aderir quando a configuração da organização está desabilitada.
- Repositório público de propriedade de uma conta pessoal: pessoas com acesso de administrador ao repositório habilitam ou desabilitam o AI Scan diretamente usando o botão de alternância AI Scan para pull requests em "Code scanning".
Os proprietários da organização e os gerentes de segurança podem examinar o status de habilitação efetivo do AI Scan para solicitações de pull na exibição "Cobertura" da visão geral de segurança. Consulte Avaliando a adoção de recursos de segurança.
Pessoas com acesso à visão geral de segurança também podem monitorar as descobertas do AI Scan em uma organização ou empresa:
- A guia Prevenção no painel de visão geral mostra tendências nos resultados do AI Scan, quantos resultados foram resolvidos e com que frequência os desenvolvedores aceitaram uma Copilot Autofix sugestão.
- A guia AI Scan no relatório "Verificação de código em solicitações de pull" mostra as descobertas ao longo do tempo, a disponibilidade de Copilot Autofix sugestões e os resultados das descobertas com e sem sugestões.
Para obter mais informações, consulte Verificação de código em pull requests.
Você pode usar a API REST para gerenciar a organização ou a configuração do repositório ai-scan . Consulte Pontos de extremidade da API REST para varredura de código.