Pular para o conteúdo principal

Questão de Engenharia de Software — Desenvolvimento de Software — FGV 2024

Engenharia de SoftwareDesenvolvimento de Software
Código
fg084710
Banca
FGV
Órgão
EPE
Ano
2024
Nível
Superior
Cargo
Analista de Gestão Corporativa - Tecnologia da Informação (Soluções)
Desenvolvimento seguro é um conjunto de práticas que visam incorporar a segurança em todas as fases do ciclo de vida do desenvolvimento de software. As técnicas de análise de segurança de aplicações desempenham um papel crucial na identificação e mitigação de vulnerabilidades.Assinale a opção que indica a técnica usada para analisar o código-fonte de uma aplicação em busca de vulnerabilidades, sem executar essa aplicação.
  1. ADAST (Dynamic Application Security Testing).
  2. BSAST (Static Application Security Testing).
  3. CIAST (Interactive Application Security Testing).
  4. DBlack Box Testing.
  5. EFuzz Testing.
Revelar gabarito e comentário

GabaritoB — SAST (Static Application Security Testing).

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”.

Testes de Segurança de Aplicações: SAST vs. Outras Técnicas

Gabarito: letra B. A técnica que analisa o código-fonte sem executar a aplicação é o SAST (Static Application Security Testing). O DAST, IAST, Black Box e Fuzz Testing dependem da execução da aplicação para detectar vulnerabilidades, o que os torna inadequados para o cenário descrito.

A questão cobra a distinção fundamental entre análise estática e dinâmica. O SAST examina o código em repouso (estático), enquanto as demais técnicas exigem que a aplicação esteja em execução ou que interajam com ela.

Técnica

Descrição

Executa a Aplicação?

Analisa Código-Fonte?

SAST (Static Application Security Testing)

Analisa código-fonte, bytecode ou binário sem executar a aplicação

Não

Sim

DAST (Dynamic Application Security Testing)

Testa a aplicação em execução, simulando ataques externos

Sim

Não

IAST (Interactive Application Security Testing)

Combina elementos estáticos e dinâmicos, geralmente com instrumentação em execução

Sim

Parcialmente

Black Box Testing

Testa a aplicação em funcionamento sem conhecimento do código interno

Sim

Não

Fuzz Testing

Insere dados aleatórios/malformados na aplicação em execução para provocar falhas

Sim

Não

Testes de segurança
  • 1Estáticos (sem executar)
    • SAST (código-fonte)
  • 2Dinâmicos (com execução)
    • DAST (aplicação rodando)
    • IAST (instrumentada)
    • Fuzz (dados aleatórios)
    • Black Box (caixa-preta)
LEVEL · soulevel.com.br

Alternativa A — ❌ Incorreta

O DAST (Dynamic Application Security Testing) testa a aplicação em execução, simulando ataques externos. Não analisa o código-fonte sem executá-lo.

Alternativa B — ✅ Correta ⟵ GABARITO

O SAST (Static Application Security Testing) analisa o código-fonte, bytecode ou binário da aplicação sem precisar executá-la. Ferramentas como SonarQube (com plugins de segurança) e Checkmarx realizam essa varredura estática.

Alternativa C — ❌ Incorreta

O IAST (Interactive Application Security Testing) combina elementos estáticos e dinâmicos, mas geralmente requer a execução da aplicação com instrumentação. Não é exclusivamente estático.

Alternativa D — ❌ Incorreta

Black Box Testing é um método de teste que ignora o código interno (caixa-preta) e tipicamente é executado contra a aplicação em funcionamento. Não analisa o código-fonte.

Alternativa E — ❌ Incorreta

Fuzz Testing (ou fuzzing) insere dados aleatórios ou malformados na aplicação em execução para provocar falhas. É uma técnica dinâmica.

NÃO CAIA NESSA!

A banca explora a confusão entre SAST e DAST, que são siglas muito parecidas e opostas. Lembre-se: S de Static (código parado) vs. D de Dynamic (aplicação rodando). O SAST é como uma auditoria de código sem ligar o motor; o DAST é como um teste de colisão com o carro em movimento.

Gabarito: letra B

Link permanente: /questoes/fg084710