O Code Scanning do GitHub tem o objetivo de procurar vulnerabilidades como Remote Code Execution (RCE), SQL Injection e Cross Site Scripting (XSS).
A boa notícia, é que o Code Scanning é integrado de forma nativa na plataforma do GitHub e o recurso está disponível gratuitamente para repositórios públicos.
Um ano atrás o GitHub deu as boas vindas a Semmle. Desde então, eles trabalharam para trazer os recursos revolucionários de análise de código de sua tecnologia CodeQL aos usuários do GitHub como um recurso nativo. E logo lançaram a sua primeira versão beta da integração nativa: varredura de código (Code Scanning). Com apoio da comunidade que testaram e deram feedback, foi liberado oficialmente o Code Scanning.
Você pode habilitar o Code Scanning em seu repositório público hoje mesmo.
O Code Scanning ajuda a evitar problemas de segurança no código
Code Scanning é projetado para os desenvolvedores. Em vez de sobrecarregá-los com sugestões de linting, o Code Scanning executa apenas as regras de segurança acionáveis por padrão para que você possa manter o foco na tarefa em questão.
É integrado ao GitHub Actions – ou ao seu ambiente CI/CD existente – para maximizar a flexibilidade da sua equipe. Ele verifica o código conforme é criado e apresenta análises de segurança acionáveis em Pull Request e outros. Automatiza a segurança como parte do fluxo de trabalho. Isso ajuda a garantir que as vulnerabilidades nunca cheguem à produção.
Segundo o GitHub, o Code Scanning é fornecido pelo CodeQL – o mecanismo de análise de código mais poderoso do mundo. Você pode usar mais de 2.000 consultas CodeQL criadas pelo GitHub e pela comunidade ou então criar consultas personalizadas para encontrar e evitar facilmente novas questões de segurança.
Eles afirmam ainda, que o Code Scanning é construído no padrão SARIF, sendo extensível para que você possa incluir soluções de teste de segurança de aplicativo estático (SAST) e software livre na mesma experiência nativa do GitHub. Você pode integrar mecanismos de varredura de terceiros para visualizar os resultados de todas as suas ferramentas de segurança em uma única interface e também exportar vários resultados de varredura através de uma única API.
A comunidade aderiu o Code Scanning
Desde o seu lançamento na versão beta, teve uma excelente aceitação pela comunidade:
- Foi verificado mais de 12.000 repositórios 1,4 milhão de vezes e encontraram mais de 20.000 problemas de segurança, incluindo Execução Remota de Código (RCE), Injeção de SQL e vulnerabilidades de Cross Site Scripting (XSS).
- Desenvolvedores e mantenedores corrigiram 72% dos erros de segurança relatados em suas Pull Request antes da fusão nos últimos 30 dias. O GitHub (a POINTEC também) está orgulhoso de ver esse impacto, pois os dados do setor mostram que menos de 30% de todas as falhas são corrigidas um mês após a descoberta.
- Tiveram 132 contribuições da comunidade para o conjunto de consultas do CodeQL.
- Fizeram parceria com mais de uma dúzia de fornecedores de software livre e de segurança comercial para permitir que os desenvolvedores executem CodeQL e soluções líderes da indústria para SAST, varredura de contêineres e infraestrutura como validação de código lado a lado na experiência de varredura de código nativo do GitHub.
Um pouco de quem já está usando
O Code Scanning é gratuito para repositórios públicos e é um recurso de segurança avançada do GitHub para o GitHub Enterprise. Aqui está o que algumas equipes compartilharam sobre sua experiência com o Code Scanning:
“We chose Advanced Security for its out-of-the-box functionality and the custom functionality that we can build off of. Instead of it taking a full day to find and fix one security issue, we were able to find and fix three issues in the same amount of time.”
– Charlotte Townsley, Director of Security Engineering, Auth0
“GitHub allows us to enable security, versus enforcing it. The sooner we can catch vulnerabilities and product issues, the better it is for the company in the long run.”
– James Hurley, Director of Developer Services, McKesson Labs
“If Advanced Security reports error issues, the pull request isn’t allowed to be merged. If a security issue is found, we’re informed immediately. We go over anything GitHub has highlighted, and we make sure that it’s resolved before releasing a stable release. For the developer who will press the merge button, it inspires confidence.”
– Dimosthenis Kaponis, CTO, Netdata
Ative o Code Scanning para repositórios públicos e privados
Você pode ler mais sobre como ativar o Code Scanning em seus repositórios públicos.
É possível ativar o Code Scanning para repositórios privados, porém no GitHub Enterprise. Você precisa entrar em contato com o departamento de vendas para saber mais informações.
Você também pode contribuir ajudando a proteger o ecossistema Open Source. Ajude com a lista crescente de consultas CodeQL tornando-se parte da comunidade de segurança.
Artigo escrito a partir do orginal do GitHub.
Imagens desse post foram retiradas do Post do GitHub.
Já somos mais de 1.3k de download.