Pular para o conteúdo principal

Questão de Segurança da Informação — Ferramentas de Firewall (IPtables, Pfsense, etc.) — VUNESP 2023

Segurança da InformaçãoFerramentas de Firewall (IPtables, Pfsense, etc.)
Código
vu197139
Banca
VUNESP
Órgão
Pref SBO
Ano
2023
Cargo
Ana ( )

No iptables do sistema operacional Linux, a cadeia (chain) usada para avaliar pacotes a serem repassados pelo computador, mas que não provêm dele e não são destinados a ele, é denominada

  1. AINPUT.
  2. BOUTPUT.
  3. CFORWARD.
  4. DREJECT.
  5. EACCEPT.
Revelar gabarito e comentário

GabaritoC — FORWARD.

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

Cadeias do iptables: INPUT, OUTPUT e FORWARD

Gabarito: letra C. A cadeia FORWARD é usada para avaliar pacotes que estão sendo repassados pelo computador — ou seja, que não se originam nele nem têm ele como destino final, mas que passam por ele como roteador. Essa é a definição exata do enunciado, e é o que diferencia a FORWARD das cadeias INPUT e OUTPUT.

O iptables é a ferramenta de firewall do Linux que controla o tráfego de rede por meio de tabelas e cadeias (chains). As cadeias são os pontos de passagem dos pacotes dentro do kernel, onde as regras de filtragem são aplicadas. O Netfilter, sistema de filtragem embutido no kernel, define três cadeias principais na tabela filter (a tabela padrão, responsável pelo controle de acesso): INPUT, OUTPUT e FORWARD.

A lógica é simples: quando um pacote chega à máquina, o kernel decide qual caminho ele vai seguir. Se o pacote é destinado ao próprio computador, ele passa pela cadeia INPUT. Se o pacote é gerado pelo próprio computador e vai sair, ele passa pela cadeia OUTPUT. Mas se o computador está atuando como roteador — recebendo um pacote de uma interface e repassando-o por outra, sem que ele seja para o próprio host — o pacote passa pela cadeia FORWARD. É exatamente esse o caso descrito no enunciado: pacotes que não provêm do computador e não são destinados a ele, apenas repassados.

Para fixar, imagine um servidor Linux configurado como roteador entre duas redes: a rede interna (192.168.1.0/24) e a internet. Um pacote enviado por um computador da rede interna para um site na internet chega ao servidor Linux pela interface da rede interna. Como o destino final não é o próprio servidor, o pacote não entra na cadeia INPUT; ele é roteado e sai pela interface da internet, passando pela cadeia FORWARD. É nessa cadeia que o administrador cria regras para permitir ou bloquear esse tráfego de passagem.

A pegadinha da banca está em confundir o papel de cada cadeia. Muitos candidatos, ao verem a palavra "repassados", pensam em "entrada" e marcam INPUT, ou pensam em "saída" e marcam OUTPUT. Mas o termo-chave é repassados — o computador é apenas um intermediário, um roteador. As cadeias INPUT e OUTPUT tratam, respectivamente, do tráfego com destino ao host e do tráfego originado no host. A FORWARD é a única que lida com o tráfego que apenas atravessa a máquina.

NÃO CAIA NESSA!

A banca explora a confusão entre as cadeias de entrada/saída e a de repasse. O candidato lê "repassados" e pensa em "entrada" (INPUT) ou "saída" (OUTPUT), mas o termo decisivo é que o pacote não provém do computador e não é destinado a ele — ele apenas passa por ele. Guarde: INPUT = para o host, OUTPUT = do host, FORWARD = através do host. Com esse critério, você elimina as alternativas A e B na hora.

Cadeias do iptables (tabela filter)
  • 1INPUT
    • Pacotes destinados ao próprio host
  • 2OUTPUT
    • Pacotes gerados pelo próprio host
  • 3FORWARD
    • Pacotes repassados (nem origem, nem destino)
    • Host atua como roteador
  • 4Alvos (targets)
    • ACCEPT
      • Libera o pacote
    • REJECT
      • Descarta e avisa o remetente
LEVEL · soulevel.com.br

Alternativa A — ❌ Incorreta

A cadeia INPUT é usada para avaliar pacotes destinados ao próprio computador, ou seja, que têm o host como destino final. O enunciado diz explicitamente que os pacotes "não são destinados a ele", o que exclui a INPUT. A banca tenta induzir o candidato a pensar que "repassar" é o mesmo que "receber", mas são fluxos distintos.

Alternativa B — ❌ Incorreta

A cadeia OUTPUT é usada para avaliar pacotes gerados pelo próprio computador, ou seja, que se originam no host e vão para a rede. O enunciado diz que os pacotes "não provêm dele", o que exclui a OUTPUT. A confusão aqui é achar que "repassar" é o mesmo que "enviar", mas o tráfego de saída é aquele que o próprio host cria.

Alternativa C — ✅ Correta ⟵ GABARITO

A cadeia FORWARD é exatamente a que avalia pacotes que estão sendo repassados pelo computador, sem que ele seja a origem ou o destino. É o caso clássico de um roteador ou firewall que encaminha tráfego entre redes. O termo "forward" significa "encaminhar", o que casa perfeitamente com a definição do enunciado.

Alternativa D — ❌ Incorreta

REJECT não é uma cadeia, mas sim um alvo (target) de uma regra no iptables. Quando um pacote corresponde a uma regra com o alvo REJECT, ele é descartado e uma mensagem de erro (como ICMP port unreachable) é enviada ao remetente. É uma ação, não um ponto de passagem do tráfego.

Alternativa E — ❌ Incorreta

ACCEPT também não é uma cadeia, mas um alvo (target) de uma regra. Quando um pacote corresponde a uma regra com o alvo ACCEPT, ele é liberado para seguir seu caminho. Assim como REJECT, é uma ação aplicada dentro de uma cadeia, não uma cadeia em si.

Gabarito: letra C.

Link permanente: /questoes/vu197139