Pular para o conteúdo principal

Questão de Segurança da Informação — Testes de Segurança em Desenvolvimento (SAST e DAST) — CESPE / CEBRASPE 2023

Segurança da InformaçãoTestes de Segurança em Desenvolvimento (SAST e DAST)
Código
ce398045
Banca
CESPE / CEBRASPE
Órgão
DATAPREV
Ano
2023
Cargo
Ana TI ( )
De acordo com o que dispõem os conceitos de segurança da informação, julgue o item a seguir.   Uma das diferenças entre DAST e SAST é que enquanto o primeiro é uma abordagem de caixa preta, sem acesso ao código-fonte, o outro, é uma abordagem de caixa branca, que analisa o código fonte durante a fase de desenvolvimento.
  1. CCerto
  2. EErrado
Revelar gabarito e comentário

GabaritoC — Certo

Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.

SAST e DAST: caixa branca × caixa preta

✅ CERTO. A afirmação está correta: o DAST (Dynamic Application Security Testing) é uma abordagem de caixa preta, que testa a aplicação em execução sem acesso ao código-fonte, enquanto o SAST (Static Application Security Testing) é uma abordagem de caixa branca, que analisa o código-fonte durante a fase de desenvolvimento. Essa é a distinção clássica entre as duas técnicas de teste de segurança de aplicações.

O SAST e o DAST são duas das principais categorias de ferramentas de segurança de aplicações, ao lado do IAST e do RASP. A diferença fundamental entre eles está no momento em que o teste é aplicado e no nível de acesso ao código interno da aplicação. O SAST é um teste estático: ele examina o código-fonte, bytecode ou binário antes da execução, identificando vulnerabilidades sem precisar rodar o programa. Por isso, é aplicado durante o desenvolvimento, permitindo que os desenvolvedores corrijam problemas cedo no ciclo de vida do software, reduzindo custos e riscos futuros. Já o DAST é um teste dinâmico: ele simula ataques externos contra a aplicação em execução, buscando vulnerabilidades exploráveis, como falhas de autenticação e vazamento de dados, sem precisar acessar o código-fonte. Essa abordagem é essencial para validar a segurança de aplicações web e APIs em um ambiente mais próximo do real.

A nomenclatura "caixa preta" e "caixa branca" vem da engenharia de software e se refere ao nível de conhecimento interno que o testador possui. No teste de caixa preta, o testador não tem conhecimento da implementação interna — ele enxerga apenas as entradas e saídas do sistema, como um atacante externo. No teste de caixa branca, o testador tem total conhecimento da estrutura interna, incluindo o código-fonte, diagramas e configurações, permitindo uma análise mais profunda e direcionada. Essa distinção é exatamente o que a questão descreve.

Na prática, um exemplo ajuda a fixar: imagine uma aplicação web de e-commerce. Um teste SAST (caixa branca) analisaria o código-fonte da aplicação, procurando por padrões inseguros, como concatenação de strings em consultas SQL (que pode levar a injeção SQL) ou uso de bibliotecas desatualizadas com vulnerabilidades conhecidas. Já um teste DAST (caixa preta) executaria a aplicação e enviaria requisições maliciosas, como tentativas de injeção SQL no campo de busca, para verificar se a aplicação está vulnerável a ataques reais, sem nunca olhar o código-fonte. Ferramentas populares de SAST incluem SonarQube, Checkmarx e Veracode; de DAST, OWASP ZAP, Burp Suite e Acunetix.

A pegadinha que a banca poderia explorar é inverter os conceitos, afirmando que o SAST é caixa preta e o DAST é caixa branca, ou que o DAST analisa o código-fonte. Nesta questão, porém, a afirmação está perfeitamente alinhada com a definição técnica. Guarde a fronteira: SAST = estático + caixa branca + durante o desenvolvimento + acesso ao código; DAST = dinâmico + caixa preta + aplicação em execução + sem acesso ao código. É exatamente nessa fronteira que as questões sobre o tema se dividem.

Item — ✅ Correto ⟵ GABARITO

A afirmação está correta porque descreve com precisão as duas técnicas. O DAST é uma abordagem de caixa preta, pois testa a aplicação em execução simulando ataques externos, sem acesso ao código-fonte. O SAST, por sua vez, é uma abordagem de caixa branca, pois analisa o código-fonte durante a fase de desenvolvimento, antes da execução. A tabela abaixo resume a comparação:

Técnica

Tipo de Teste

Momento de Aplicação

Acesso ao Código

SAST

Caixa Branca (White-box)

Durante o desenvolvimento

Sim

DAST

Caixa Preta (Black-box)

Com a aplicação em execução

Não

A banca cobrou exatamente a definição canônica das duas ferramentas, sem qualquer inversão de conceitos. Portanto, o item está CERTO.

Gabarito: ✅ CERTO (letra C).

Link permanente: /questoes/ce398045