Instalação e configuração de servidores – Aula 06

AULA 06 · MÓDULO 4
Princípios da Segurança da Informação
Ataques, Defesas e Protocolos Seguros
Duração: 90 minutosPré-requisito: Aulas 01 a 05Demonstração em Ubuntu Server

Aula 06 — Princípios da Segurança da Informação: Ataques, Defesas e Protocolos Seguros

Instalação e Configuração de Servidores — IFPE Campus Palmares

Objetivos de Aprendizagem

Ao final desta aula, o estudante deverá ser capaz de:

  • explicar os pilares da segurança da informação (confidencialidade, integridade e disponibilidade), além de autenticidade e não repúdio;
  • diferenciar ameaça, vulnerabilidade, risco, ataque e incidente;
  • reconhecer as principais técnicas e tipos de ataques: engenharia social, malware, ataques a senhas, negação de serviço, interceptação e ataques a aplicações web;
  • descrever as principais técnicas de defesa e o conceito de defesa em profundidade;
  • diferenciar criptografia simétrica, criptografia assimétrica e hash, e reconhecer onde cada uma é usada;
  • identificar protocolos inseguros e suas versões seguras, e aplicar cuidados básicos na configuração de serviços em um servidor Linux.

Introdução

Imagine chegar ao campus numa segunda-feira e descobrir que o sistema acadêmico está fora do ar. Na tela dos computadores da secretaria, aparece uma mensagem: os arquivos foram cifrados e só serão devolvidos mediante pagamento. Notas, matrículas e documentos estão inacessíveis. Ninguém quebrou uma porta nem levou um computador embora. Tudo começou, dias antes, com um e-mail aparentemente comum, aberto por um funcionário.

Esse tipo de ataque, chamado ransomware, já atingiu hospitais, prefeituras, universidades e empresas no mundo inteiro. Ele mostra que proteger um servidor não é só instalá-lo e configurá-lo corretamente: é preciso pensar, o tempo todo, em quem pode tentar abusar dele e como.

Ao longo da disciplina, a segurança apareceu várias vezes de forma pontual. Na Aula 02, vimos a segurança física do datacenter, a disponibilidade e a redundância. Na Aula 04, estudamos o modelo de responsabilidade compartilhada da nuvem, o controle de identidade e acesso (IAM) e a criptografia de dados. Na Aula 05, vimos os cuidados básicos com contêineres. Agora chegou a hora de organizar esse conhecimento: entender o que é segurança da informação, como os ataques funcionam, como nos defendemos e como tornar seguros os protocolos e serviços que rodam em um servidor.

ATENÇÃO

Ética e legalidade

Esta aula explica como os ataques funcionam para que você saiba se defender. Testar ataques em sistemas, redes ou contas de terceiros sem autorização expressa é crime no Brasil (Lei nº 12.737/2012, que incluiu o art. 154-A no Código Penal, com penas aumentadas pela Lei nº 14.155/2021). Pratique apenas em máquinas virtuais e ambientes que são seus. Esta observação tem caráter informativo e não constitui orientação jurídica.

6.1Conceitos Fundamentais

A informação como ativo

Para uma organização, a informação é um ativo: algo que tem valor e, por isso, precisa ser protegido. Cadastros de clientes, notas de alunos, projetos, senhas, registros financeiros e até o código-fonte de um sistema são ativos. A informação pode estar armazenada (em um disco ou banco de dados), em trânsito (circulando pela rede) ou em uso (sendo processada na memória). Cada um desses estados exige cuidados diferentes.

CONCEITO

Conceito Importante

Segurança da informação é a proteção da informação contra ameaças, com o objetivo de preservar sua confidencialidade, integridade e disponibilidade, garantir a continuidade das atividades e reduzir os riscos para a organização.

Os pilares: a tríade CID

Toda a segurança da informação se apoia em três pilares, conhecidos como tríade CID (em inglês, CIA Triad):

  • Confidencialidade: a informação só é acessada por quem tem autorização. Quando alguém lê as notas de outro aluno ou um banco de dados de clientes vaza na internet, a confidencialidade foi violada.
  • Integridade: a informação não é alterada sem autorização, seja de forma intencional ou acidental. Se alguém modifica uma nota no sistema ou altera o valor de um boleto, a integridade foi violada.
  • Disponibilidade: a informação e os serviços estão acessíveis quando são necessários. Um site fora do ar por um ataque, ou um servidor parado por falta de energia, viola a disponibilidade. Esse pilar se conecta diretamente ao que estudamos na Aula 02 (SLA, redundância e alta disponibilidade).

Dois princípios complementam a tríade:

  • Autenticidade: garante que a informação vem de quem diz ser o seu autor e que o usuário é quem afirma ser.
  • Não repúdio (irretratabilidade): impede que o autor de uma ação negue tê-la realizado. A assinatura digital, que veremos na seção 6.3, é o principal mecanismo para isso.
Triângulo com as letras C, I e D nos vértices e quadros explicando confidencialidade, integridade, disponibilidade, autenticidade e não repúdio
Figura 1 — Os pilares da segurança da informação: a tríade CID, a autenticidade e o não repúdio.

Ameaça, vulnerabilidade, risco, ataque e incidente

Esses termos são usados no dia a dia como se fossem sinônimos, mas têm significados diferentes. Uma analogia ajuda: pense numa casa com uma janela aberta, em um bairro onde acontecem furtos.

  • Ameaça é algo ou alguém que pode causar dano: o ladrão. Em TI, pode ser um criminoso, um malware, um funcionário mal-intencionado, mas também um incêndio, uma enchente ou um simples erro humano.
  • Vulnerabilidade é uma fraqueza que pode ser explorada: a janela aberta. Em TI, um sistema desatualizado, uma senha fraca, uma configuração errada ou um serviço exposto sem necessidade.
  • Risco é a combinação da chance de a ameaça explorar a vulnerabilidade com o tamanho do prejuízo que isso causaria. De forma simplificada: risco = probabilidade × impacto.
  • Ataque é a tentativa intencional de explorar uma vulnerabilidade: o ladrão pulando a janela.
  • Incidente é o evento que de fato compromete a segurança: os objetos foram levados.

As medidas que reduzem o risco são chamadas de controles: fechar a janela, instalar grade ou alarme. Repare que nunca é possível zerar o risco. O trabalho do administrador de sistemas é reduzir o risco a um nível aceitável, com custo compatível com o valor do que está sendo protegido.

Diagrama: ameaça mais vulnerabilidade igual a risco, com quadros sobre ataque, incidente e controle
Figura 2 — Ameaça, vulnerabilidade e risco, ilustrados pela analogia da casa com a janela aberta.

VOCÊ SABIA?

Em 2 de novembro de 1988, um programa criado por Robert Tappan Morris, então estudante de pós-graduação da Universidade Cornell, espalhou-se pela internet da época e deixou lentos ou inutilizáveis milhares de computadores. O Worm de Morris é considerado um dos primeiros grandes incidentes de segurança da internet e levou à criação do primeiro centro de resposta a incidentes, o CERT/CC, na Universidade Carnegie Mellon. No Brasil, o papel equivalente é exercido pelo CERT.br.

6.2Técnicas e Tipos de Ataques

Os ataques podem mirar pontos diferentes: a pessoa que usa o sistema, o próprio sistema, a rede por onde os dados passam ou a aplicação que roda no servidor. A Figura 3 resume as categorias que veremos nesta seção.

Seis quadros: engenharia social, malware, ataques a senhas, negação de serviço, interceptação e aplicações web
Figura 3 — Principais técnicas e tipos de ataques.

6.2.1 Engenharia social e phishing

A engenharia social explora o fator humano: em vez de quebrar uma proteção técnica, o atacante convence a vítima a entregar a informação ou a executar uma ação. Ela se aproveita de sentimentos como medo, urgência, curiosidade, ganância e vontade de ajudar. É o ataque mais comum porque costuma ser o mais barato e o mais eficaz.

A forma mais conhecida é o phishing (do inglês fishing, pescar): mensagens falsas que imitam bancos, lojas, órgãos públicos ou a própria instituição, para levar a vítima a clicar em um link, abrir um anexo ou digitar sua senha em uma página falsa. Há variações:

  • spear phishing: mensagem personalizada para uma pessoa ou um grupo específico, usando informações reais (nome, cargo, colegas);
  • smishing: o golpe chega por SMS;
  • vishing: o golpe é feito por ligação telefônica (voz);
  • golpes por aplicativos de mensagem, como o falso pedido de dinheiro de um parente com número novo.
E-mail falso de um banco fictício com cinco sinais de alerta numerados e explicados
Figura 4 — Sinais de alerta em um e-mail de phishing (exemplo fictício).

ATENÇÃO

Atenção: o cadeado não garante que o site é confiável

O cadeado na barra do navegador indica apenas que a conexão é cifrada (HTTPS), ou seja, que ninguém no caminho consegue ler os dados. Ele não garante que o site é legítimo. Hoje, a maioria das páginas de phishing também usa HTTPS, porque obter um certificado é fácil e gratuito. Sempre confira o endereço completo do site.

6.2.2 Malware

Malware (de malicious software) é qualquer programa criado para executar ações danosas sem o consentimento do usuário. Os tipos se diferenciam pela forma como se espalham e pelo que fazem:

Tipo Como age
Vírus Insere-se em outros arquivos ou programas e depende de uma ação do usuário (abrir o arquivo) para se espalhar.
Worm Propaga-se sozinho pela rede, explorando vulnerabilidades, sem precisar de ação do usuário.
Trojan (cavalo de Troia) Disfarça-se de programa legítimo (um jogo, um “crack”, um utilitário) e executa ações escondidas.
Ransomware Cifra os arquivos da vítima e exige pagamento (resgate) para devolvê-los. Muitos grupos também copiam os dados e ameaçam publicá-los.
Spyware e keylogger Espionam a vítima: coletam dados de navegação, capturam o que é digitado (senhas) ou a tela.
Bot e botnet Um bot é uma máquina infectada controlada remotamente. Uma botnet é uma rede com milhares delas, usada em ataques de negação de serviço e envio de spam.

VOCÊ SABIA?

Em 12 de maio de 2017, o ransomware WannaCry infectou centenas de milhares de computadores em mais de 150 países, afetando inclusive hospitais do sistema público de saúde do Reino Unido (NHS). Ele se espalhava como um worm, explorando uma falha do protocolo SMB do Windows. A Microsoft já havia publicado a correção em março de 2017, no boletim MS17-010. As máquinas atingidas eram, em grande parte, as que não tinham sido atualizadas. Moral da história: aplicar atualizações é uma das defesas mais eficazes que existem.

6.2.3 Ataques a senhas

Senhas continuam sendo a forma de autenticação mais usada e, por isso, um alvo constante:

  • Força bruta: testar todas as combinações possíveis até acertar. Quanto mais curta a senha, mais rápido o ataque.
  • Ataque de dicionário: testar listas de senhas comuns e palavras conhecidas (“123456”, “senha”, nomes de times, datas).
  • Credential stuffing: usar pares de e-mail e senha vazados de um site para tentar entrar em outros. Funciona porque muitas pessoas repetem a mesma senha em vários serviços.

Em um servidor Linux exposto à internet, é comum ver no log de autenticação centenas de tentativas automáticas de login por SSH por dia, vindas de robôs que testam usuários como root e admin com senhas comuns. Veremos como se proteger disso na seção 6.4.

6.2.4 Negação de serviço (DoS e DDoS)

O ataque de negação de serviço (DoS, Denial of Service) tenta tirar um serviço do ar, sobrecarregando o servidor ou a rede com mais requisições do que eles conseguem atender. Seu alvo é a disponibilidade. Quando o ataque parte de milhares de máquinas ao mesmo tempo, geralmente uma botnet, ele é chamado de DDoS (Distributed Denial of Service).

Lembre-se do dimensionamento automático da Aula 04: ele ajuda a absorver picos de acesso, mas, diante de um DDoS, também pode multiplicar a conta da nuvem. Por isso, os provedores oferecem serviços específicos de mitigação de DDoS, que filtram o tráfego malicioso antes que ele chegue ao servidor.

6.2.5 Interceptação de tráfego

Na interceptação, o atacante se posiciona no caminho dos dados:

  • Sniffing: captura dos pacotes que circulam na rede. Se o protocolo não usa criptografia, senhas e conteúdos podem ser lidos diretamente.
  • Man-in-the-middle (homem no meio): o atacante se coloca entre as duas partes, fazendo cada uma acreditar que fala diretamente com a outra, e pode ler ou alterar a comunicação.
  • Wi-Fi falso: uma rede aberta com nome atraente (“Wi-Fi Grátis Shopping”) criada pelo atacante para capturar o tráfego de quem se conecta.

A principal defesa contra a interceptação é a criptografia do canal de comunicação, que veremos nas seções 6.3 e 6.4.

6.2.6 Ataques a aplicações web

Para quem vai desenvolver para a web, esta é a categoria mais importante. A OWASP (Open Worldwide Application Security Project), uma fundação sem fins lucrativos, publica periodicamente o OWASP Top 10, uma lista dos riscos mais críticos em aplicações web. A edição mais recente, de 2025, tem no topo a quebra de controle de acesso (Broken Access Control), seguida por erros de configuração de segurança e por falhas na cadeia de suprimentos de software (bibliotecas e dependências de terceiros comprometidas).

Dois ataques clássicos ajudam a entender o problema:

Injeção de SQL (SQL injection). Acontece quando a aplicação monta um comando SQL juntando diretamente o texto digitado pelo usuário. Observe uma consulta de login escrita de forma insegura:

-- A aplicação junta o texto digitado ao comando SQL (forma INSEGURA)
SELECT * FROM usuarios WHERE login = '<texto digitado>' AND senha = '<texto digitado>';

-- Se o atacante digitar no campo login:   ' OR '1'='1' -- (com espaço no final)
-- o comando montado passa a ser:
SELECT * FROM usuarios WHERE login = '' OR '1'='1' -- ' AND senha = '';
-- '1'='1' é sempre verdadeiro e o resto vira comentário (--):
-- o banco devolve todos os usuários e o login é aceito sem senha.

A defesa é nunca montar comandos juntando texto: usam-se consultas parametrizadas (prepared statements), em que os dados do usuário são enviados separadamente do comando e nunca interpretados como código SQL. Todas as linguagens e frameworks modernos oferecem esse recurso.

Cross-Site Scripting (XSS). O atacante consegue fazer com que um código JavaScript seu seja exibido e executado no navegador de outros usuários, por exemplo, gravando um script em um campo de comentário que a aplicação mostra sem tratamento. Esse script pode roubar a sessão da vítima. A defesa é validar as entradas e tratar (escapar) toda saída exibida na página.

6.2.7 Vulnerabilidades e zero-day

Todo software tem falhas. Quando uma vulnerabilidade de segurança é descoberta e divulgada, ela recebe um identificador público chamado CVE (Common Vulnerabilities and Exposures), por exemplo CVE-2024-XXXXX, e o fabricante publica uma correção (patch). O perigo está no intervalo entre a divulgação e a aplicação da correção: os atacantes passam a explorar a falha em massa, procurando sistemas não atualizados. Uma vulnerabilidade zero-day é aquela explorada antes mesmo de o fabricante conhecê-la ou corrigi-la, ou seja, o fabricante teve “zero dias” para reagir.

6.3Técnicas e Tipos de Defesa

Defesa em profundidade

Nenhuma proteção é perfeita. Por isso, a segurança é organizada em camadas, como as muralhas de um castelo medieval: se o invasor passar pela primeira, ainda encontra a segunda, a terceira, e assim por diante. Esse princípio se chama defesa em profundidade e combina medidas sobre pessoas, processos e tecnologia.

Círculos concêntricos com as camadas pessoas e políticas, física e perímetro, rede, servidor e aplicação, e dados no centro
Figura 5 — Defesa em profundidade: camadas de proteção em torno dos dados.

6.3.1 Autenticação forte

Autenticar é comprovar a identidade de quem acessa o sistema. Algumas boas práticas:

  • Senhas longas valem mais do que senhas complicadas. Uma frase-senha como cafe-com-tapioca-no-campus-palmares é mais forte e mais fácil de lembrar que S3nh@1, porque o número de combinações cresce muito com o comprimento.
  • Uma senha diferente para cada serviço. Assim, o vazamento de um site não compromete os outros. Um gerenciador de senhas (como Bitwarden ou KeePassXC) guarda todas elas de forma cifrada, e você só precisa memorizar uma senha mestra.
  • Autenticação multifator (MFA). Combina fatores de categorias diferentes, de modo que roubar a senha não basta para entrar.
Três quadros: algo que você sabe, algo que você tem, algo que você é
Figura 6 — Os três fatores de autenticação e o que caracteriza a autenticação multifator.

CONCEITO

Para quem desenvolve: como guardar senhas

Um sistema nunca deve guardar a senha do usuário em texto claro, nem cifrada de forma reversível. O correto é guardar um hash da senha, gerado por um algoritmo próprio para isso (como bcrypt ou Argon2), combinado com um valor aleatório chamado salt. No login, o sistema calcula o hash da senha digitada e compara com o hash guardado. Assim, mesmo que o banco de dados vaze, as senhas não aparecem diretamente.

6.3.2 Controle de acesso e menor privilégio

O princípio do menor privilégio diz que cada usuário, programa ou serviço deve ter apenas as permissões necessárias para realizar sua tarefa, e nada além. Em um servidor Linux, isso significa:

  • não trabalhar logado como root: usar uma conta comum e o comando sudo apenas quando for necessário;
  • criar contas separadas para cada pessoa, nunca compartilhar a mesma conta;
  • executar cada serviço (servidor web, banco de dados) com um usuário próprio, sem privilégios administrativos;
  • ajustar as permissões de arquivos e diretórios (chmod, chown) para que cada um acesse só o que precisa;
  • remover contas de quem saiu da organização.

É a mesma ideia do IAM que vimos na nuvem (Aula 04): se uma conta for comprometida, o estrago fica limitado ao que aquela conta podia fazer.

6.3.3 Atualizações e redução da superfície de ataque

Manter o sistema atualizado fecha as vulnerabilidades já conhecidas, como mostrou o caso WannaCry. No Ubuntu Server, as atualizações são feitas com o gerenciador de pacotes, e o pacote unattended-upgrades permite aplicar automaticamente as atualizações de segurança.

# Atualiza a lista de pacotes disponíveis e instala as atualizações
sudo apt update
sudo apt upgrade

Outra regra simples: o que não está instalado não pode ser atacado. Cada serviço em execução e cada porta aberta aumenta a superfície de ataque. Instale apenas o necessário e desative os serviços que não usa. O comando abaixo lista as portas que estão aguardando conexões no servidor:

# Lista as portas TCP e UDP em escuta e o processo responsável por cada uma
sudo ss -tulpn

6.3.4 Firewall, IDS e IPS

O firewall controla o tráfego que entra e sai de uma rede ou de uma máquina, permitindo ou bloqueando conexões de acordo com regras (endereço de origem, destino, porta e protocolo). A boa prática é bloquear tudo por padrão e liberar apenas o necessário. Pode haver um firewall na borda da rede da organização e outro em cada servidor.

No Ubuntu, a ferramenta padrão para configurar o firewall local é o ufw (Uncomplicated Firewall), que vem desativado por padrão:

# Verifica se o firewall está ativo e quais regras existem
sudo ufw status verbose

# Política padrão: bloqueia tudo o que entra e libera o que sai
sudo ufw default deny incoming
sudo ufw default allow outgoing

# Libera o SSH ANTES de ativar (senão o acesso remoto é cortado)
sudo ufw allow ssh
# Libera HTTP e HTTPS se o servidor hospedar um site
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp

# Ativa o firewall
sudo ufw enable

Complementando o firewall, existem os sistemas de detecção e prevenção de intrusão. O IDS (Intrusion Detection System) analisa o tráfego ou os registros do sistema em busca de padrões de ataque e emite alertas. O IPS (Intrusion Prevention System) vai além e bloqueia automaticamente o tráfego suspeito. Um exemplo simples de IPS para servidores Linux é o fail2ban, que lê os logs e bloqueia temporariamente endereços IP com muitas tentativas de login malsucedidas.

6.3.5 Criptografia e hash

Criptografia é a técnica de transformar uma informação legível (texto claro) em algo ilegível (texto cifrado), de modo que só quem possui a chave correta consiga revertê-la. Ela protege a confidencialidade dos dados armazenados e em trânsito. Existem dois tipos:

  • Criptografia simétrica: a mesma chave cifra e decifra. É rápida e adequada para grandes volumes de dados. Seu problema é a distribuição da chave: como entregá-la ao destinatário sem que alguém a intercepte? O algoritmo mais usado é o AES.
  • Criptografia assimétrica (de chave pública): cada pessoa tem um par de chaves. A chave pública pode ser divulgada a todos e serve para cifrar mensagens destinadas ao seu dono. A chave privada fica em segredo e é a única capaz de decifrá-las. Exemplos: RSA e algoritmos de curvas elípticas.
Comparação entre criptografia simétrica e assimétrica com Ana enviando uma mensagem a Bruno
Figura 7 — Criptografia simétrica (uma chave) e assimétrica (par de chaves pública e privada).

Na prática, as duas trabalham juntas. No HTTPS e no SSH, a criptografia assimétrica é usada no início da conexão para combinar com segurança uma chave simétrica, e essa chave simétrica cifra o restante da comunicação, que é mais rápido.

O par de chaves também permite a assinatura digital. O autor gera um resumo do documento e o cifra com sua chave privada. Qualquer pessoa pode conferir a assinatura com a chave pública do autor. Se a conferência der certo, sabemos que o documento veio daquele autor (autenticidade), que não foi alterado (integridade) e que o autor não pode negar a autoria (não repúdio).

Esse resumo é gerado por uma função hash: um cálculo que transforma qualquer conteúdo, de uma palavra a um arquivo enorme, em uma sequência de tamanho fixo. A menor alteração na entrada produz um resultado completamente diferente, e não é possível fazer o caminho inverso. Por isso, o hash funciona como uma “impressão digital” dos dados e é usado para verificar a integridade. Hash não é criptografia: não há chave nem como “decifrar”.

Duas frases que diferem em uma letra e seus hashes SHA-256 totalmente diferentes
Figura 8 — A troca de uma única letra gera um hash SHA-256 completamente diferente.

NA PRÁTICA

Na prática: conferindo a integridade de um download

Quando instalamos o Ubuntu Server, baixamos um arquivo ISO de alguns gigabytes. Junto dele, o site oficial publica um arquivo SHA256SUMS com o hash esperado. Calculando o hash do arquivo baixado com sha256sum ubuntu-24.04-live-server-amd64.iso e comparando com o valor publicado, confirmamos que o arquivo não foi corrompido nem adulterado no caminho.

6.3.6 Backup

Quando todas as outras defesas falham, o backup é o que permite recuperar os dados. Ele é a principal resposta ao ransomware: com uma cópia íntegra, a organização restaura os dados em vez de pagar o resgate. A recomendação clássica é a regra 3-2-1.

Três quadros com os números 3, 2 e 1: três cópias, dois tipos de mídia, uma cópia fora do local
Figura 9 — A regra de backup 3-2-1.

Dois cuidados completam a regra: testar a restauração periodicamente (um backup que nunca foi restaurado pode não funcionar quando for preciso) e manter pelo menos uma cópia desconectada ou imutável, já que o ransomware procura e cifra também os backups que estão acessíveis pela rede.

6.3.7 Registros (logs) e monitoramento

Não é possível se defender do que não se vê. Os servidores registram eventos em logs: logins bem-sucedidos e malsucedidos, uso do sudo, erros de serviços. Analisar esses registros permite detectar ataques em andamento e investigar incidentes depois que acontecem. No Ubuntu, os eventos de autenticação ficam em /var/log/auth.log e também podem ser consultados com o journalctl. Em ambientes maiores, os logs de todos os servidores são centralizados e analisados por ferramentas de monitoramento, como as que vimos na Aula 04.

# Mostra as últimas linhas do log de autenticação
sudo tail -n 20 /var/log/auth.log

# Filtra as tentativas de login por SSH que falharam
sudo grep "Failed password" /var/log/auth.log

6.3.8 Pessoas, processos, normas e legislação

A tecnologia sozinha não resolve. Como a engenharia social mostrou, o usuário treinado é uma das melhores defesas. Por isso, as organizações mantêm programas de conscientização e definem uma Política de Segurança da Informação (PSI): um documento aprovado pela direção que estabelece regras de uso de senhas, e-mail, internet, dispositivos pessoais, backup e resposta a incidentes.

Para estruturar a segurança, existem normas e referências reconhecidas:

  • ABNT NBR ISO/IEC 27001: define os requisitos de um Sistema de Gestão de Segurança da Informação (SGSI) e permite que uma organização seja certificada.
  • ABNT NBR ISO/IEC 27002: reúne um conjunto de controles de segurança, com orientações de implementação.
  • NIST Cybersecurity Framework (CSF) 2.0: referência norte-americana, de uso livre, que organiza as atividades de segurança em seis funções: Governar, Identificar, Proteger, Detectar, Responder e Recuperar.

No Brasil, a Lei Geral de Proteção de Dados Pessoais (LGPD, Lei nº 13.709/2018) obriga quem trata dados pessoais a adotar medidas de segurança, técnicas e administrativas, para protegê-los contra acessos não autorizados e situações acidentais ou ilícitas. Um vazamento de dados, portanto, não é só um problema técnico: pode gerar sanções para a organização. Esta menção tem caráter informativo e não constitui orientação jurídica.

6.4Segurança em Protocolos e Serviços

Muitos protocolos da internet foram criados nas décadas de 1970 e 1980, quando a rede ligava poucas instituições que confiavam umas nas outras. Por isso, protocolos como Telnet, FTP e HTTP transmitem tudo em texto claro, inclusive usuários e senhas. Qualquer pessoa que capture o tráfego (sniffing) consegue ler o conteúdo. A solução foi criar versões seguras, que acrescentam criptografia à comunicação.

Tabela comparando HTTP, Telnet, FTP, SMTP, POP3, IMAP e DNS com suas versões seguras e portas
Figura 10 — Protocolos inseguros, suas versões seguras e as portas padrão.

A regra para o administrador é direta: em um servidor, use sempre a versão segura. Telnet e FTP sem criptografia não devem ser usados para administrar servidores; no lugar deles, usam-se SSH e SFTP.

6.4.1 HTTPS, TLS e certificados digitais

O HTTPS é o HTTP transportado dentro de uma conexão protegida pelo TLS (Transport Layer Security), o sucessor do antigo SSL. O TLS garante três coisas: confidencialidade (os dados são cifrados), integridade (alterações no caminho são detectadas) e autenticidade do servidor (você está falando com o site certo, e não com um impostor).

A autenticidade do servidor é comprovada por um certificado digital: um documento eletrônico que associa a chave pública do servidor ao seu nome de domínio. O certificado é assinado por uma Autoridade Certificadora (AC), uma entidade em que os navegadores e sistemas operacionais já confiam. Ao acessar um site, o navegador confere se o certificado é válido, se está dentro do prazo, se pertence àquele domínio e se foi assinado por uma AC confiável. Se algo falhar, ele exibe um alerta.

Até alguns anos atrás, certificados eram pagos, e muitos sites continuavam sem HTTPS. O cenário mudou com o Let’s Encrypt, uma AC gratuita, automatizada e aberta, mantida pela organização sem fins lucrativos ISRG (Internet Security Research Group). Com uma ferramenta como o Certbot, o administrador obtém e renova o certificado do seu servidor automaticamente.

6.4.2 SSH seguro

O SSH (Secure Shell) é a principal porta de entrada para administrar um servidor Linux e, por isso, um dos alvos preferidos dos robôs de ataque. Algumas medidas reduzem bastante o risco:

  • Usar autenticação por chave em vez de senha. O administrador gera um par de chaves no seu computador (ssh-keygen), copia a chave pública para o servidor (ssh-copy-id) e passa a entrar sem digitar senha. A chave privada nunca sai do seu computador.
  • Desativar o login direto do root e o login por senha, depois que o acesso por chave estiver funcionando.
  • Limitar tentativas com o fail2ban e liberar o SSH no firewall apenas para as redes necessárias.
  • Manter o OpenSSH atualizado.

Essas opções ficam no arquivo de configuração do servidor SSH, em /etc/ssh/sshd_config (ou em arquivos dentro de /etc/ssh/sshd_config.d/):

# Trecho de /etc/ssh/sshd_config com opções de endurecimento
PermitRootLogin no            # impede login direto como root
PasswordAuthentication no     # aceita apenas autenticação por chave
MaxAuthTries 3                # limita as tentativas por conexão

# Confere a configuração efetivamente em uso (sem alterar nada)
sudo sshd -T | grep -Ei "permitrootlogin|passwordauthentication|maxauthtries"

ATENÇÃO

Atenção antes de desativar o login por senha

Só desative PasswordAuthentication depois de testar, em outra janela, que o login por chave funciona. Caso contrário, você pode se trancar para fora do servidor. Em uma máquina virtual, ainda resta o console da VirtualBox; em um servidor na nuvem, a recuperação é bem mais trabalhosa.

VOCÊ SABIA?

Trocar a porta do SSH de 22 para outra (por exemplo, 2222) reduz o “ruído” de robôs nos logs, mas não é uma medida de segurança de verdade: uma varredura de portas encontra o serviço em segundos. Esconder algo em vez de protegê-lo é chamado de segurança por obscuridade. Pode ser usada como camada extra, mas nunca no lugar de autenticação forte e atualizações.

6.4.3 Endurecimento (hardening) de serviços

Hardening é o processo de reduzir as vulnerabilidades de um sistema, removendo o que é desnecessário e ajustando as configurações para o modo mais seguro. Ele reúne tudo o que vimos nesta aula. Uma lista mínima para um servidor recém-instalado:

  1. aplicar todas as atualizações e ativar as atualizações automáticas de segurança;
  2. criar uma conta administrativa pessoal e usar sudo, sem login direto do root;
  3. configurar o SSH com autenticação por chave;
  4. ativar o firewall, liberando apenas as portas dos serviços oferecidos;
  5. remover ou desativar serviços e pacotes que não serão usados;
  6. trocar senhas padrão de aplicações e bancos de dados;
  7. usar HTTPS nos serviços web;
  8. configurar backup e testar a restauração;
  9. acompanhar os logs.

Para servidores web, os próprios softwares oferecem recomendações. Por exemplo, ocultar a versão do Apache ou do Nginx nas páginas de erro e nos cabeçalhos dificulta que um atacante saiba quais falhas conhecidas tentar.

6.5Demonstração em Sala: Segurança no Ubuntu Server

O professor fará, em uma máquina virtual com Ubuntu Server, uma demonstração dos conceitos desta aula. Acompanhe os comandos e o resultado de cada um:

Comando O que demonstra
sha256sum arquivo.txt O hash muda completamente após a alteração de um único caractere no arquivo (integridade).
sudo ss -tulpn Quais serviços estão escutando conexões (superfície de ataque).
sudo ufw status verbose O estado do firewall e suas regras.
sudo sshd -T | grep -i permitrootlogin A configuração efetiva do SSH.
sudo grep "Failed password" /var/log/auth.log Tentativas de login que falharam (logs).
openssl s_client -connect www.ifpe.edu.br:443 O certificado digital de um site real: quem o emitiu e sua validade.

Recursos Gratuitos para Estudo

Todos os recursos abaixo são gratuitos e podem ser acessados sem cadastro:

  • Cartilha de Segurança para Internet (cartilha.cert.br) — material do CERT.br, em português, com fascículos ilustrados sobre golpes, senhas, códigos maliciosos, redes sociais e privacidade. Excelente para revisar esta aula e para compartilhar com a família.
  • Phishing Quiz do Google (phishingquiz.withgoogle.com) — teste interativo em que você precisa identificar se cada mensagem é legítima ou um golpe. Tem versão em português.
  • Have I Been Pwned (haveibeenpwned.com) — informa se um endereço de e-mail apareceu em vazamentos de dados conhecidos. Consulte apenas os seus próprios endereços.
  • OWASP Top 10 (owasp.org/Top10) — a lista dos riscos mais críticos em aplicações web, com explicações e formas de prevenção. Leitura recomendada para quem vai seguir no desenvolvimento web.
  • Let’s Encrypt (letsencrypt.org/pt-br) — explica, em português, como funcionam os certificados gratuitos e o HTTPS.

Resumo

Nesta aula vimos que a segurança da informação protege a confidencialidade, a integridade e a disponibilidade da informação, complementadas pela autenticidade e pelo não repúdio. Diferenciamos ameaça, vulnerabilidade, risco, ataque e incidente, com a analogia da casa com a janela aberta. Estudamos as principais técnicas de ataque: engenharia social e phishing, malware (com destaque para o ransomware), ataques a senhas, negação de serviço, interceptação de tráfego e ataques a aplicações web, como a injeção de SQL e o XSS.

Do lado da defesa, vimos que a proteção é feita em camadas (defesa em profundidade): autenticação forte e MFA, menor privilégio, atualizações, firewall e IDS/IPS, criptografia e hash, backup 3-2-1, logs e monitoramento, além de pessoas conscientes, políticas, normas e legislação. Por fim, vimos que protocolos como Telnet, FTP e HTTP trafegam em texto claro e devem ser substituídos por SSH, SFTP e HTTPS, que o TLS e os certificados digitais garantem a autenticidade dos sites, e como endurecer o SSH e os serviços de um servidor.

Encerramento da Aula 06

Ao longo da disciplina, aprendemos a instalar e configurar servidores, virtualizá-los, levá-los para a nuvem e empacotar aplicações em contêineres. Esta aula acrescenta a pergunta que deve acompanhar todas as outras: e se alguém tentar abusar disso? Segurança não é um produto que se instala uma vez, nem uma etapa no fim do projeto. É um processo contínuo, presente em cada decisão: na senha escolhida, na porta liberada no firewall, na biblioteca adicionada ao projeto, no backup que foi ou não foi testado.

Um bom administrador de sistemas, e também um bom desenvolvedor web, pensa como quem constrói e como quem tenta invadir.

Referências Bibliográficas

ASSOCIAÇÃO BRASILEIRA DE NORMAS TÉCNICAS. ABNT NBR ISO/IEC 27001: segurança da informação, segurança cibernética e proteção à privacidade: sistemas de gestão da segurança da informação: requisitos. Rio de Janeiro: ABNT, 2022.

ASSOCIAÇÃO BRASILEIRA DE NORMAS TÉCNICAS. ABNT NBR ISO/IEC 27002: segurança da informação, segurança cibernética e proteção à privacidade: controles de segurança da informação. Rio de Janeiro: ABNT, 2022.

BRASIL. Lei nº 12.737, de 30 de novembro de 2012. Dispõe sobre a tipificação criminal de delitos informáticos; altera o Decreto-Lei nº 2.848, de 7 de dezembro de 1940 – Código Penal; e dá outras providências. Diário Oficial da União: Brasília, DF, 3 dez. 2012. Disponível em: https://www.planalto.gov.br/ccivil_03/_ato2011-2014/2012/lei/l12737.htm. Acesso em: 25 out. 2026.

BRASIL. Lei nº 13.709, de 14 de agosto de 2018. Lei Geral de Proteção de Dados Pessoais (LGPD). Diário Oficial da União: Brasília, DF, 15 ago. 2018. Disponível em: https://www.planalto.gov.br/ccivil_03/_ato2015-2018/2018/lei/l13709.htm. Acesso em: 25 out. 2026.

CENTRO DE ESTUDOS, RESPOSTA E TRATAMENTO DE INCIDENTES DE SEGURANÇA NO BRASIL. Cartilha de segurança para internet. Versão 4.0. São Paulo: Comitê Gestor da Internet no Brasil, 2012. Disponível em: https://cartilha.cert.br/. Acesso em: 25 out. 2026.

FERREIRA, Fernando Nicolau Freitas. Segurança da informação. Rio de Janeiro: Ciência Moderna, 2003.

FONTES, Edison. Praticando a segurança da informação. Rio de Janeiro: Brasport, 2008.

INTERNET SECURITY RESEARCH GROUP. Sobre o Let’s Encrypt. Disponível em: https://letsencrypt.org/pt-br/about/. Acesso em: 25 out. 2026.

NATIONAL INSTITUTE OF STANDARDS AND TECHNOLOGY. The NIST Cybersecurity Framework (CSF) 2.0. Gaithersburg: NIST, 2024. (NIST CSWP 29). Disponível em: https://csrc.nist.gov/pubs/cswp/29/the-nist-cybersecurity-framework-csf-20/final. Acesso em: 25 out. 2026.

OWASP FOUNDATION. OWASP Top 10:2025. Disponível em: https://owasp.org/Top10/2025/. Acesso em: 25 out. 2026.

UBUNTU. Firewalls. Ubuntu Server documentation. Disponível em: https://documentation.ubuntu.com/server/how-to/security/firewalls/. Acesso em: 25 out. 2026.

Material livre para distribuição e cópia.

Fim da Aula 06

Click to listen highlighted text!