Embora possam ser consideradas de "conhecimento comum" por muitos desenvolvedores, a grande maioria das vulnerabilidades de segurança recém-introduzidas se deve a vulnerabilidades como XSS (script entre sites), injeção de SQL e CSRF (solicitação entre sites). Essas vulnerabilidades podem ser mitigadas seguindo práticas de codificação seguras, como usar consultas parametrizadas, validar as entradas e evitar dados embutidos em código. O GitHub Copilot pode ajudar a detectar e resolver esses problemas.
Note
Embora o Copilot Chat possa ajudar a encontrar algumas vulnerabilidades de segurança comuns e ajudar a corrigi-las, você não deve depender dele para uma análise de segurança abrangente. O uso de ferramentas e recursos de segurança garantirá a segurança do código de maneira mais minuciosa. Para obter mais informações sobre os recursos de segurança do GitHub, confira Recursos de segurança do GitHub.
Cenário de exemplo
O código JavaScript abaixo tem uma vulnerabilidade de XSS potencial que pode ser explorada quando o parâmetro name
não é devidamente higienizado antes de ser exibido na página.
function displayName(name) {
const nameElement = document.getElementById('name-display');
nameElement.innerHTML = `Showing results for "${name}"`
}
Solicitação de exemplo
Você pode pedir que o Copilot Chat analise o código para detectar vulnerabilidades comuns de segurança e fornecer explicações e correções para os problemas encontrados.
Analyze this code for potential security vulnerabilities and suggest fixes.
Exemplo de resposta
Note
A resposta a seguir é um exemplo. Respostas do Copilot Chat são não determinísticas, portanto, você pode obter uma resposta diferente da mostrada aqui.
O Copilot responde com uma explicação da vulnerabilidade e sugere alterações no código para corrigi-la.
function displayName(name) {
const nameElement = document.getElementById('name-display');
nameElement.textContent = `Showing results for "${name}"`;
}