← Questões de Programação

Programação · FGV · 2023

Questão comentada de Programação

Considerando as práticas de programação segura e revisão de código, avalie se os itens a seguir são falsos (F) ou verdadeiros (V). ( ) A revisão do código é um método que visa a garantir que as ferramentas de inteligência artificial adotem técnicas de desenvolvimento seguro. Uma regra geral é que um teste de funcionalidade não deve descobrir nenhuma vulnerabilidade em aplicativos relacionadas ao código desenvolvido após o aplicativo ter passado por uma revisão duplo cego adequada do código de segurança. ( ) Todas as revisões de código de segurança são uma combinação de esforço humano e suporte tecnológico. Em uma extremidade é uma pessoa com um editor de texto. No outro extremo da escala está um especialista em segurança com uma ferramenta avançada de análise estática. ( ) As ferramentas de verificação automática de código são boas para avaliar grandes quantidades de código pois podem apontar possíveis problemas, mas um desenvolvedor precisa verificar cada resultado para que se determine se é um problema real e se é realmente explorável e avalie os riscos. As afirmativas são, respectivamente,

Gabarito: E

Revisão de código e teste automatizado aparecem muito em segurança de software, mas cada um tem seu papel. A revisão de código serve para identificar falhas, más práticas e riscos antes que o sistema chegue ao usuário, e pode ser feita por colegas, por especialistas ou com apoio de ferramentas. Já o teste funcional não substitui a análise de segurança: um sistema pode funcionar perfeitamente e ainda assim ter vulnerabilidades escondidas no código. Por isso, a primeira afirmativa erra ao dizer que a revisão garante o uso de técnicas seguras por ferramentas de IA e ao sugerir uma regra que não existe nesses termos. A segunda afirmativa está correta porque a revisão de código de segurança realmente pode variar de uma análise manual simples, feita com editor de texto, até uma revisão apoiada por ferramentas sofisticadas de análise estática. Isso está alinhado com a prática descrita em guias de desenvolvimento seguro, como os de OWASP e de segurança de software em geral: a combinação entre olhar humano e apoio tecnológico é o padrão. A terceira também está certa. Ferramentas automáticas ajudam muito a examinar grandes bases de código e apontar suspeitas, mas elas não decidem sozinhas se há vulnerabilidade real. Sempre precisa de validação humana para confirmar o achado, entender explorabilidade e estimar risco. Em segurança, ferramenta ajuda, mas não faz milagre - ela levanta a bandeira, você faz a perícia. Assim, o julgamento fica F, V, V, que corresponde à alternativa E.

Continue treinando

Questões relacionadas