Questão nº 22
Questão de Tecnologia da Informação · FCC PGE-AM 2022 (nº 22)
A transição de DevOps para DevSecOps requer a compreensão e utilização de técnicas e práticas específicas que podem garantir a segurança do software. Uma especialista em Engenharia de Software recomendou, dentre outras, as seguintes ferramentas e tecnologias para essa transição em uma empresa:
I. É usado para verificar o código sem realmente executá-lo. Este tipo de ferramenta ajuda a encontrar vulnerabilidades em potencial no código-fonte, evitando que ocorram várias vulnerabilidades do tipo zero-day. Common Weakness Enumeration (CWE) é uma das classificações de avisos mais comuns produzidos por estas ferramentas. CWE é uma lista oficial ou dicionário de pontos fracos de segurança comuns exploráveis por invasores para obter acesso não autorizado ao sistema.
II. Da mesma forma que as ferramentas que executam testes de caixa preta, estes analisadores dinâmicos podem identificar vulnerabilidades do programa, como injeções de SQL, estouros de buffer e similares.
III. Este tipo de ferramenta analisa o comportamento do aplicativo, implementando uma análise de segurança contínua, sendo uma das tecnologias de segurança usadas em tempo de execução.
Os itens I, II e III correspondem, correta e respectivamente, a
- ARASP (Runtime Application Self-Protection) − SAST (Static Application Security Testing) − IAST (Interactive Application Security Testing).
- BIAST (Interactive Application Security Testing) − SAST (Static Application Security Testing) − DAST (Dynamic Application Security Testing).
- CSAST (Static Application Security Testing) − IAST (Interactive Application Security Testing) − DAST (Dynamic Application Security Testing).
- DIAST (Interactive Application Security Testing) − SAST (Static Application Security Testing) − RASP (Runtime Application Self-Protection).
- ESAST (Static Application Security Testing) − DAST (Dynamic Application Security Testing) − RASP (Runtime Application Self-Protection). (alternativa correta)
Resposta comentada
Gabarito Alternativa E
No DevSecOps, a segurança é integrada em todas as fases do desenvolvimento, e ferramentas como SAST, DAST e RASP ajudam a encontrar e proteger contra vulnerabilidades. O SAST (Static Application Security Testing) analisa o código-fonte antes de ele ser executado, como um revisor de texto que encontra erros de gramática na segurança. O DAST (Dynamic Application Security Testing) testa o aplicativo enquanto ele está rodando, atacando-o de fora como um hacker faria. O RASP (Runtime Application Self-Protection) é como um sistema imunológico para o aplicativo, protegendo-o em tempo real contra ataques enquanto ele está em produção.
(A) Incorreta: A descrição I não corresponde a RASP, pois RASP atua em tempo de execução, não analisando código-fonte estático.
(B) Incorreta: A descrição I não corresponde a IAST, pois IAST é uma análise interativa que ocorre durante a execução, não apenas no código-fonte estático.
(C) Incorreta: A descrição II não corresponde a IAST, pois IAST combina análise estática e dinâmica durante a execução, enquanto a descrição II foca em testes dinâmicos de caixa preta.
(D) Incorreta: A descrição I não corresponde a IAST, e a descrição III não corresponde a RASP na ordem apresentada.
(E) Correta:
- I. SAST (Static Application Security Testing): A descrição "verificar o código sem realmente executá-lo" e "encontrar vulnerabilidades em potencial no código-fonte" com referência a CWE (Common Weakness Enumeration) se encaixa perfeitamente na definição de SAST, que realiza análise estática do código.
- II. DAST (Dynamic Application Security Testing): A descrição "testes de caixa preta" e "analisadores dinâmicos" que identificam vulnerabilidades como injeções de SQL e estouros de buffer, atuando no programa em execução a partir de uma perspectiva externa, é a característica principal do DAST.
- III. RASP (Runtime Application Self-Protection): A descrição "analisa o comportamento do aplicativo, implementando uma análise de segurança contínua, sendo uma das tecnologias de segurança usadas em tempo de execução" descreve precisamente o RASP, que protege o aplicativo de dentro para fora durante sua execução.
Fonte: FCC PGE-AM 2022 Técnico em Gestão Procuratorial - Especialidade Engenharia de Software (Caderno Tipo 001). Reproduzida para fins de estudo.