Recentemente, o concurso do Tribunal Superior Eleitoral (TSE) abordou técnicas de análise de segurança das aplicações, destacando as metodologias SAST (Static Application Security Testing) e DAST (Dynamic Application Security Testing).
A questão estava estruturada assim:
PROVA DISCURSIVA — A respeito de técnicas de análise de segurança das aplicações, redija um texto dissertativo atendendo ao que se pede a seguir.
1 Explique o que é análise estática de código-fonte (SAST). [valor: 10,00 pontos]
2 Discorra sobre o princípio de funcionamento da SAST. [valor: 10,00 pontos]
3 Explique o que são testes dinâmicos de segurança (DAST). [valor: 10,00 pontos]
4 Discorra sobre o princípio de funcionamento do DAST. [valor: 10,00 pontos]
5 Identifique, justificando, qual análise entre a SAST e o DAST é considerada white box e qual é considerada black box. [valor: 7,50 pontos]
Assim para abordar o assunto o aluno poderia citar que a análise estática de código-fonte, conhecida como SAST, é uma técnica que avalia o código-fonte de um software sem executá-lo. Essa abordagem busca identificar vulnerabilidades em fases iniciais do desenvolvimento, como erros de validação de entradas, injeção de SQL e falhas de controle de acesso.
Ferramentas especializadas analisam o código em busca de padrões inseguros, baseando-se em regras predefinidas ou heurísticas. Por acessar diretamente o código, a SAST é classificada como uma abordagem white box, pois oferece total visibilidade da estrutura interna do software.
Por outro lado, os testes dinâmicos de segurança, ou DAST, avaliam a aplicação em tempo de execução. Eles simulam interações externas, como ataques maliciosos, para identificar vulnerabilidades exploráveis em um sistema em funcionamento.
A DAST é amplamente utilizada para detectar problemas como autenticação insegura, falhas de configuração de servidores e vulnerabilidades em APIs. Como opera sem acessar o código-fonte, essa técnica é considerada black box, simulando a visão de um atacante externo.
A principal diferença entre SAST e DAST está no momento em que cada técnica é aplicada e na perspectiva adotada. A SAST é ideal para ser utilizada durante o desenvolvimento, permitindo a correção de falhas antes que o software entre em produção. Já o DAST é mais eficaz para testar sistemas em produção, garantindo que eles resistam a ataques reais.
Essas técnicas não são excludentes, mas complementares. A integração de SAST e DAST proporciona uma abordagem robusta de segurança, cobrindo vulnerabilidades tanto na lógica interna do código quanto em possíveis falhas de execução.
No contexto de concursos, compreender essas metodologias é essencial para quem busca atuar na área de tecnologia da informação, especialmente em órgãos que lidam com dados sensíveis, como o TSE.
Quer ficar por dentro dos concursos públicos abertos e previstos pelo Brasil? Clique nos links abaixo:
Receba gratuitamente no seu celular as principais notícias do mundo dos concursos. Clique no link abaixo e inscreva-se:
Participe da conversa