Questão nº 42
Questão de Segurança da Informação · FGV SEFAZ-MG 2022 - Tarde (nº 42)
Considere o seguinte diagrama para responder às questões a seguir:
Vamos assumir que:
O cenário representa a rede da empresa hipotética XPTO.
Nem todos os dispositivos foram representados
Os dispositivos possuem as seguintes configurações:
Servidor A: IP: 10.77.8.10/20 – Função: Servidor de banco de dados SQL.
Servidor B: IP: 10.77.8.11/20 – Função: Servidor de aplicações http / https. – As aplicações utilizam os bancos de dados no Servidor A.
Firewall A: WAN IP: 73.12.78.44/24 IP: 10.77.0.1/20 – Funções – NGFW, Servidor de VPN, DHCP, DNS.
Computador 1: WAN IP: 200.255.10.22/24 VPN IP: 10.17.16.22/23.
Computador 2: IP: 10.77.1.16/20
Dispositivo móvel 1: WAN IP: 65.12.8.33/24 VPN IP: 10.17.17.26/23.
As pessoas A, B e C são funcionários da empresa XPTO.
O Servidor B possui aplicações corporativas que atendem a funcionários e clientes e estão publicadas na internet.
Visando a melhorar a segurança de suas aplicações, os responsáveis pela empresa XPTO decidiram contratar uma empresa para fazer a análise do código fonte.
A consultoria utilizou uma ferramenta que fez a análise automática do código fonte e indicou o seguinte código como vulnerável:
<?php
$db = new SQLite3('test.db');
$count = $db->querySingle('select count(*) from secrets where id = ' . $_GET['id']);
echo "O resultado é: ".$count;
Baseado no resultado, assinale a opção que mostra corretamente: o nome da categoria a que pertence a ferramenta e a categoria da vulnerabilidade.
- ADynamic Application Security Testing (DAST) e Cross-site Scripting
- BStatic Application Security Testing (SAST) e SQL Injection (alternativa correta)
- CInteractive Application Security Testing (IAST) e Buffer Overflow
- DDynamic Application Security Testing (DAST) e SQL Injection
- EInteractive Application Security Testing (IAST) e Cross-site Scripting
Resposta comentada
Gabarito Alternativa B
Static Application Security Testing (SAST) é uma técnica de segurança que analisa o código-fonte de uma aplicação sem executá-la, buscando falhas de segurança. Uma SQL Injection é uma vulnerabilidade onde um atacante insere código SQL malicioso em campos de entrada para manipular consultas ao banco de dados.
- (A) Incorreta: DAST (Dynamic Application Security Testing) analisa a aplicação em execução, não o código-fonte. Cross-site Scripting (XSS) é uma vulnerabilidade diferente, relacionada à injeção de scripts no navegador do usuário, embora o
echopudesse ser um vetor secundário, a falha principal na construção da query é outra. - (B) Correta: A descrição "análise automática do código fonte" indica claramente SAST. O código PHP concatena diretamente a entrada do usuário (
$_GET['id']) na query SQL sem validação ou parametrização, o que é a definição clássica de SQL Injection. - (C) Incorreta: IAST (Interactive Application Security Testing) combina SAST e DAST, mas a análise foi do código fonte, não interativa. Buffer Overflow é uma vulnerabilidade de estouro de memória, tipicamente em linguagens de baixo nível como C/C++, e não se aplica a este código PHP.
- (D) Incorreta: DAST não analisa o código-fonte.
- (E) Incorreta: IAST não é a ferramenta primária para análise de código-fonte puro. Cross-site Scripting (XSS) não é a vulnerabilidade mais direta e crítica demonstrada na construção da query SQL.
Fonte: FGV SEFAZ-MG 2022 - Tarde Auditor Fiscal - Tecnologia da Informação (Caderno Tipo 1). Reproduzida para fins de estudo.
