Logo UFPR Logo Licenciatura em Computação

CÓDIGO DA DISCIPLINA: DEE345

SEGURANÇA DIGITAL - Aula 5

Professor Jéfer Benedett Dörr

Prof. Jéfer Benedett Dörr

Departamento de Engenharias e Exatas - UFPR/Palotina

Docente de Segurança da Informação

Aula 5: Aprofundando no Reconhecimento e Defesa de Credenciais

1. Reconhecimento Ativo e Passivo (Footprint & Fingerprint)

1.1 Footprint (Coleta Passiva de Informações)

O footprint é a fase inicial de um teste de intrusão, na qual o pentester coleta o máximo de informações públicas sobre o alvo antes de iniciar qualquer interação direta.

Ferramentas OSINT Essenciais

Prática: Criar conta gratuita no Shodan, buscar por product:"nginx" e observar os metadados exibidos.

  • Wappalyzer (Extensão de Navegador): Identifica tecnologias usadas em sites (servidores web, frameworks, CMS):
    • Instalar a extensão no navegador e visitar um site conhecido (ex.: wordpress.com) para visualizar o Content Management System, ou Sistema de Gerenciamento de Conteúdo - CMS e versões usadas.

    Prática: Usar Wappalyzer para descobrir o servidor web e o framework de uma página governamental (ex.: gov.br).

  • Maltego, theHarvester & SpiderFoot (Ferramentas OSINT Adicionais):
    • Maltego: Interface gráfica para mapeamento de relações entre e-mails, domínios e perfis sociais.
    • theHarvester: Coleta e-mails, subdomínios e hosts de múltiplas fontes (ex.: theHarvester -d exemplo.com -b all).
    • SpiderFoot: Framework automatizado para varredura OSINT que agrega dados de várias APIs e fontes públicas.

    Prática: Executar theHarvester -d ufpr.br -b google para listar subdomínios expostos e avaliar riscos de exposição.

  • Extração de Metadados de Imagens: Metadados EXIF podem revelar localizações e datas:
    • Instalar o exiftool no Linux (`sudo apt install libimage-exiftool-perl`).
    • Executar exiftool foto.jpg para exibir metadados como GPS, data, modelo da câmera.

    Prática: Baixar uma imagem pública (ex.: de conferência) e usar exiftool para inspecionar se há coordenadas GPS embutidas.

  • lanmap (Mapeamento Visual de Rede): Gera diagramas 2D da topologia de rede:
    • Instalar: sudo apt install lanmap2.
    • Executar a interface gráfica: lanmap2 e brincar adicionando hosts manualmente para entender visualmente a estrutura.

    Prática: Em laboratório, criar uma rede fictícia com três VMs e usar lanmap2 para desenhar a topologia.

  • Recon-ng: Framework OSINT com módulos para coleta de dados (ex.: recon-ng -m recon/domains-hosts/hackertarget -o SOURCE=exemplo.com enumera subdomínios). github.com/lanmaster53/recon-ng

    Nota: Em 2023, subdomínios expostos do Tribunal de Justiça de SP, identificáveis por Recon-ng, facilitaram ataques de phishing.

  • Amass: Enumera subdomínios via OSINT e brute-force (ex.: amass enum -d ufpr.br -o subdominios.txt). github.com/OWASP/Amass

    Nota: O vazamento do Serpro (2022) expôs subdomínios que poderiam ter sido mapeados por Amass, reforçando a necessidade de proteção.

  • dnsdumpster: Ferramenta online para mapear registros DNS e subdomínios graficamente. Acesse dnsdumpster.com e insira um domínio (ex.: ufpr.br).
  • Extração de Metadados:
    • exiftool documento.pdf para extrair metadados como autor e data de criação.

    Nota: Em 2024, documentos públicos de uma prefeitura brasileira vazaram coordenadas GPS via metadados, detectáveis por exiftool.

  • Prática: Em um laboratório, use Recon-ng e Amass para mapear subdomínios de um domínio fictício (ex.: site-teste.com). Compare resultados com dnsdumpster e discuta riscos de exposição.

    🔍 Shodan — Exemplo Prático

    1. Instalação e Configuração
      > pip3 install shodan
      > shodan init SUA_API_KEY
    2. Buscar Servidores Web Nginx
      > shodan search "nginx" --fields ip_str,port,org,hostnames --limit 5
      — Lista 5 hosts com Nginx expostos (IP, porta, organização, hostnames).
    3. Detalhes de um Host
      > shodan host 1.2.3.4
      — Exibe todas as portas abertas, banners de serviço e localização geográfica.
    4. Exemplo Avançado: Câmeras IP
      > shodan search 'title:"Live View / - AXIS"' --fields ip_str,port
      — Encontrar câmeras Axis expostas publicamente.
    5. Aplicação
      • Reconhecimento inicial em pentests para mapear serviços vulneráveis.
      • Auditoria de ativos IoT e servidores legados.

    🔎 Censys — Exemplo Prático

    1. Instalação e Configuração
      > pip3 install censys
      > censys config (insira sua API ID e Secret)
    2. Buscar Hosts com HTTP 200
      > censys search 'services.http.response.status_code: 200' --fields ip,services.http.port --format table --limit 5
      — Exibe 5 endereços IP que responderam sucesso (porta HTTP).
    3. Detalhes de um Host
      > censys view ipv4 1.2.3.4 --format json
      — Retorna JSON completo com certificados TLS, protocolos suportados e metadados.
    4. Exemplo Avançado: Servidores SSH Antigos
      > censys search 'services.ssh.banner: "OpenSSH_5"' --fields ip,services.ssh.port
      — Localiza hosts ainda executando versões antigas do OpenSSH.
    5. Aplicação
      • Comparar com Shodan para cobertura mais ampla.
      • Identificar serviços TLS mal configurados ou expirados.

    1.2 Coleta de Informações Públicas de Registro

    • Whois: Recupera dados de registro de domínio:
      whois exemplo.com
      Informações: registrante, datas, contatos, DNS. whois -h whois.registro.br ufpr.br para obter registrante e datas de um domínio .br.
    • Dig & Nslookup: Consultas a servidores DNS:
      dig exemplo.com any
      nslookup -type=mx exemplo.com
      Obtém IPs, servidores de e-mail, subdomínios.

    Prática: Executar whois ufpr.br, dig ufpr.br any e nslookup -type=mx ufpr.br. dig +short exemplo.com A para listar IPs associados rapidamente. Quais informações podem ajudar um atacante?

  • Nslookup: nslookup -type=soa exemplo.com para obter registros SOA (autoridade do domínio).
  • Prática: Execute whois ufpr.br e dig +short ufpr.br MX. Analise como essas informações podem ser usadas em ataques de engenharia social.

    1.3 Fingerprint (Coleta Ativa de Informações)

    • Nmap para Fingerprinting de SO:
      nmap -F -O 192.168.1.10
      Explicação: o parâmetro -O tenta identificar o sistema operacional; -F faz scan rápido de portas comuns.
    • Nmap Avançado: nmap -sV --script=vuln 192.168.1.10 para detectar serviços, versões e vulnerabilidades conhecidas.
    • Inferência de SO por TTL (Time To Live): Valor padrão de TTL em ICMP pode indicar sistema operacional:
      • Linux: TTL = 64
      • Windows: TTL = 128
      • TTL Analysis: traceroute exemplo.com para analisar TTL e inferir saltos na rede.
      Ofuscação: o administrador pode alterar o TTL padrão via sysctl -w net.ipv4.ip_default_ttl=65.

    Prática: Executar ping -c 3 8.8.8.8 e observar o TTL retornado. Depois pingar uma máquina Linux local e analisar diferença de TTL.

    Prática: Em um laboratório, use nmap -O -sV 192.168.1.0/24 para mapear sistemas e identificar SOs. Combine com ping para verificar TTL.

    Ferramentas de Reconhecimento e Pesquisa

    Google Hacking / Google Dorks: Técnica que utiliza operadores avançados de busca do Google para encontrar informações sensíveis expostas inadvertidamente na web. Através de comandos específicos como site:, filetype:, inurl: e intitle:, é possível localizar arquivos confidenciais, páginas de login, configurações de servidores e outros dados que não deveriam estar públicos.

    Shodan: Motor de busca especializado em dispositivos conectados à internet (IoT). Diferente do Google que indexa páginas web, o Shodan mapeia servidores, câmeras, roteadores, sistemas industriais e outros equipamentos conectados. É amplamente usado para pesquisa de segurança, identificação de vulnerabilidades e monitoramento de infraestrutura.

    Censys: Plataforma de pesquisa que oferece visibilidade completa da internet através de varreduras regulares. Fornece informações detalhadas sobre hosts, certificados SSL/TLS, protocolos e serviços em execução. É utilizado para descoberta de ativos, análise de superfície de ataque e pesquisa de segurança cibernética.

    WHOIS: Protocolo e base de dados que fornece informações sobre propriedade e registro de domínios e endereços IP. Através de consultas WHOIS é possível obter dados como registrante, contatos administrativos, servidores DNS, datas de criação e expiração do domínio, além de informações sobre blocos de IP e suas organizações responsáveis.

    TTL (Time To Live): Valor que determina por quanto tempo uma informação DNS deve ser mantida em cache antes de ser consultada novamente no servidor autoritativo. TTLs baixos permitem mudanças mais rápidas mas geram mais tráfego DNS, enquanto TTLs altos reduzem consultas mas tornam propagação de mudanças mais lenta. É também usado em protocolos de rede para limitar o tempo de vida de pacotes.

    Recon-ng: Framework modular de reconhecimento escrito em Python que automatiza coleta de informações OSINT (Open Source Intelligence). Possui módulos para enumerar domínios, subdomínios, emails, redes sociais e outras fontes públicas, organizando os dados coletados em base de dados local para análise posterior.

    DNSdumpster: Ferramenta online gratuita para descoberta de DNS que mapeia subdomínios, registros MX, TXT e outros tipos de registro DNS. Oferece visualização gráfica da infraestrutura DNS do domínio alvo, facilitando o reconhecimento da superfície de ataque de uma organização.

    ExifTool: Biblioteca e aplicação multiplataforma para leitura, escrita e edição de metadados em arquivos de imagem, áudio e vídeo. Extrai informações como localização GPS, data/hora de criação, modelo de câmera, software utilizado e outros dados EXIF que podem revelar informações sensíveis sobre o criador do arquivo.

    Nslookup: Ferramenta de linha de comando para consulta de registros DNS. Permite verificar resolução de nomes, registros A, AAAA, MX, NS, TXT e outros tipos de registro DNS. Útil para diagnóstico de problemas de DNS e verificação de configurações de domínio.

    Lanmap: Ferramenta de mapeamento de rede local que utiliza técnicas passivas e ativas para descobrir hosts, serviços e topologia de redes LAN. Gera mapas visuais da infraestrutura de rede identificando dispositivos conectados, suas funcionalidades e relacionamentos.

    Nota: Estas ferramentas devem ser utilizadas apenas para fins legítimos de pesquisa, auditoria de segurança autorizada e proteção de infraestruturas próprias.

    2. Ameaças e Contramedidas de Senhas

    2.1 Importância da Força da Senha

    Senhas fortes reduzem drasticamente a probabilidade de sucesso em ataques de força bruta e dicionário. Fatores críticos:

    Senhas fortes são cruciais para resistir a ataques. A entropia pode ser estimada com ferramentas como zxcvbn (ex.: python -m zxcvbn "P@ssw0rd" avalia força).

    • Comprimento: cada caractere adicional dobra o espaço de busca (ex.: 8 caracteres vs. 12 caracteres).
    • Variedade de caracteres: incluir maiúsculas, minúsculas, números e símbolos dificulta ataques baseados em dicionário.
    • Entropia: medir a imprevisibilidade da senha (ex.: “P@ssw0rd!” vs. “1qazxsw2!”).

    2.2 Ataques de Quebra de Senhas (Teoria e Prática Ética)

    Ataque de Dicionário

    Utilização de listas de senhas e combinações comuns para tentar descascar hashes:

    • Gerar wordlists com crunch: criar dicionários personalizados:
      crunch 8 12 abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!@# -o wordlist.txt
      Explicação: gera palavras de comprimento de 8 a 12 usando conjuntos especificados.
    • Hashcat: hashcat -m 0 -a 0 hash.txt wordlist.txt para quebrar hashes MD5 com uma wordlist.

      Nota: Em 2023, o vazamento do Banco Pan expôs hashes MD5 de senhas, quebráveis por Hashcat devido à falta de salting.

    • John the Ripper: ferramenta de quebra de hashes local:
      john --wordlist=wordlist.txt hashes.txt
      “hashes.txt” deve conter a lista de hashes a serem testados. Use apenas em ambiente controlado e com permissões.
    • John the Ripper Avançado: john --format=sha512crypt --wordlist=wordlist.txt hashes.txt para hashes SHA512.
    • Salted Hashes: adição de um salt (valor aleatório) antes do hash:
      echo -n "senha@123abc" | openssl dgst -sha256 -salt "randomsalt"
      Explicação: aumenta a resistência contra rainbow tables e ataques de dicionário pré-computados.

    Prática: Usar John the Ripper para quebrar um pequeno conjunto de hashes MD5 gerados em aula, utilizando uma wordlist de 10 palavras comuns.

    Prática: Em um laboratório, gere hashes MD5 com echo -n "senha123" | md5sum e use Hashcat para quebrá-los com uma wordlist pequena.

    Ataque Remoto de Força Bruta

    Ferramenta para testes de autenticação em serviços de rede:

    • Burp Suite: Configure o módulo Intruder para testar logins em um site de teste (ex.: dvwa.local) com uma wordlist (https://medium.com/@abdelrahman.usama.au/exploiting-and-analyzing-vulnerabilities-in-dvwa-on-metasploitable-2-a-comprehensive-write-up-8153edd5189f).

      Nota: O ataque à Claro (2024) usou ransomware.

    • THC-Hydra:
      hydra -l usuario_test -P wordlist.txt ftp://192.168.1.20
      Explicação: tenta combinar “usuario_test” com cada senha em “wordlist.txt” contra serviço FTP em 192.168.1.20.
    • THC-Hydra Avançado: hydra -l admin -P wordlist.txt http-post-form "/login:username=^USER^&password=^PASS^:F=incorrect" 192.168.1.20 para brute-force em formulários HTTP.
    • pwndb: Busca credenciais vazadas via Tor (ex.: curl -s --socks5-hostname 127.0.0.1:9050 http://pwndb2am4tzkvold.onion -d "email=exemplo@ufpr.br"). pwndb.onion

    Prática: Em uma VM de teste com servidor FTP, executar o comando Hydra acima para verificar senhas simples (não use em sistemas de produção).

    Prática: Configure Damn Vulnerable Web Application - DVWA em uma VM e use Burp Suite para testar brute-force em um formulário de login. Verifique credenciais vazadas com pwndb em um ambiente controlado.

    Ferramentas de Análise de Senhas e Testes de Segurança

    zxcvbn: Biblioteca de análise de força de senhas desenvolvida pelo Dropbox que avalia a segurança de senhas considerando padrões comuns, dicionários, teclados e sequências. Diferente de medidores tradicionais baseados apenas em caracteres, o zxcvbn estima o tempo real necessário para quebrar uma senha através de ataques automatizados.

    Crunch: Gerador de wordlists customizáveis que cria listas de senhas baseadas em critérios específicos como comprimento, conjunto de caracteres e padrões. Permite gerar combinações sistemáticas de caracteres para uso em testes de força bruta, sendo amplamente utilizado em auditorias de segurança.

    Hashcat: Ferramenta avançada de recuperação de senhas que utiliza processamento em GPU para quebrar hashes criptográficos. Suporta mais de 300 algoritmos de hash diferentes e múltiplos modos de ataque incluindo dicionário, força bruta, híbrido e baseado em regras, sendo considerada uma das mais rápidas do mercado.

    John the Ripper: Cracker de senhas multiplataforma que detecta automaticamente tipos de hash e aplica diferentes técnicas de ataque. Inclui modos de dicionário, força bruta incremental e ataques baseados em regras, sendo especialmente eficaz contra senhas de sistemas Unix e Windows.

    Burp Suite: Plataforma integrada para testes de segurança em aplicações web que inclui proxy interceptador, spider, scanner automatizado, intruder para ataques customizados, repeater para manipulação de requisições e outras ferramentas especializadas em análise de vulnerabilidades web.

    THC-Hydra: Ferramenta de ataque de força bruta paralela que suporta mais de 50 protocolos incluindo HTTP, HTTPS, FTP, SSH, Telnet, SMTP, POP3 e muitos outros. Permite ataques rápidos e eficientes contra serviços de rede utilizando listas de usuários e senhas.

    pwndb: Base de dados de credenciais comprometidas obtidas de vazamentos públicos. Permite verificar se emails e senhas foram expostos em breaches de segurança conhecidos, sendo útil para verificação de comprometimento de contas e conscientização sobre reutilização de senhas.

    Salted Hashes: Técnica de segurança que adiciona dados aleatórios (salt) às senhas antes do processo de hash. O salt torna cada hash único mesmo para senhas idênticas, impedindo ataques de rainbow table e dificultando significativamente ataques de força bruta pré-computados. É considerado uma prática essencial na proteção de senhas armazenadas.

    Rainbow Tables: Tabelas pré-computadas que contêm hashes de senhas comuns junto com seus valores originais, permitindo reversão rápida de hashes através de lookup ao invés de cálculo em tempo real. Embora eficazes contra hashes simples, são ineficazes contra senhas com salt adequado devido ao espaço de armazenamento proibitivo necessário.

    DVWA (Damn Vulnerable Web Application): Aplicação web intencionalmente vulnerável desenvolvida para treinamento e prática de testes de segurança. Inclui vulnerabilidades como SQL Injection, XSS, CSRF, Command Injection e outras falhas do OWASP Top 10 (https://owasp.org/Top10/pt_BR/). Pode ser configurada localmente via XAMPP, Docker ou máquinas virtuais, oferecendo diferentes níveis de dificuldade (baixo, médio, alto) para aprendizado progressivo de técnicas de exploração e correção de vulnerabilidades.

    Aviso: Estas ferramentas devem ser utilizadas exclusivamente para testes de segurança autorizados, auditorias éticas e proteção de sistemas próprios. O uso não autorizado pode constituir crime.

    2.3 Políticas e Administração de Senhas (Hardening)

    Gerenciar senhas de usuários com ferramentas de administração Linux:

    • Chage: gerenciar datas de expiração de senha:
      sudo chage -d 0 usuario_test
      Explicação: força o usuário a trocar a senha no próximo login.
    • Usermod: definir parâmetros de senha:
      sudo usermod -e 2025-12-31 usuario_test
      Explicação: define data de expiração da conta para 31/12/2025.
    • li> PAM (Pluggable Authentication Modules): Configure regras de senha em /etc/security/pwquality.conf (ex.: minlen=12 exige senhas de 12 caracteres).
    • Fail2ban: Protege contra brute-force (ex.: fail2ban-client set sshd banip 192.168.1.100 bloqueia IPs suspeitos).

    Prática: Criar usuário “aluno1” e usar chage -d 0 aluno1 para forçar troca de senha no login, depois configurar expiração com usermod -e.

    Prática: Configure Fail2ban em uma VM Linux para bloquear tentativas de login SSH após 3 falhas. Teste com hydra em um ambiente ético.

    Ferramentas de Hardening e Segurança do Sistema

    Hardening: Processo de fortalecimento da segurança de sistemas computacionais através da redução da superfície de ataque. Envolve desabilitação de serviços desnecessários, aplicação de patches de segurança, configuração adequada de permissões, implementação de políticas de senha robustas, configuração de firewalls e outras medidas preventivas para minimizar vulnerabilidades e riscos de comprometimento.

    PAM (Pluggable Authentication Modules): Framework de autenticação modular utilizado em sistemas Unix/Linux que permite configurar diferentes métodos de autenticação de forma flexível. Através de módulos plugáveis, o PAM pode implementar autenticação por senha, certificados, biometria, tokens, além de controles de acesso, políticas de senha e logging de tentativas de autenticação.

    chage: Comando Linux para gerenciamento de informações de expiração de senhas de usuários. Permite configurar prazo de validade da senha, período de aviso antes da expiração, dias de inatividade permitidos após expiração, data de expiração da conta e outras políticas temporais relacionadas à autenticação de usuários do sistema.

    usermod: Ferramenta de linha de comando para modificação de contas de usuário em sistemas Unix/Linux. Permite alterar informações como grupo primário, grupos secundários, diretório home, shell padrão, UID, bloqueio/desbloqueio de conta, data de expiração e outras propriedades da conta sem necessidade de recriação do usuário.

    fail2ban: Sistema de prevenção contra intrusão que monitora arquivos de log em busca de padrões suspeitos e executa ações automatizadas de bloqueio. Detecta tentativas de força bruta, ataques de dicionário e outros comportamentos maliciosos em serviços como SSH, HTTP, FTP e email, bloqueando temporariamente IPs atacantes através de regras de firewall.

    Nota: Estas ferramentas são fundamentais para manutenção da segurança de sistemas em produção e devem ser configuradas adequadamente conforme as necessidades específicas de cada ambiente.

    2.4 Autenticação de Múltiplo Fator (MFA / 2FA)

    Adicionar camada extra de segurança além da senha:

    • Fatores de Autenticação:
      • SYK (Something You Know - Algo que Você Sabe): senha, PIN.
      • SYH (Something You Have - Algo que Você Tem): token, smartphone, chave OTP (YubiKey).
      • SYA (Something You Are - Algo que Você É): biometria (impressão digital, reconhecimento facial).
    • Implementação Prática:
      • Ativar 2FA em contas pessoais (e-mail, redes sociais, serviços bancários) usando app autenticador (Google Authenticator, Authy).
      • Demonstrar configuração em um site de teste (ex.: GitHub ou Google), gerando QR Code e inserindo código de 6 dígitos.

    Prática: Cada aluno deve ativar 2FA em uma conta pessoal e documentar o processo (captura de tela do QR Code, primeiros códigos gerados) para apresentar em aula.

    • PAM com OTP: Configure 2FA em SSH com pam_google_authenticator.so em /etc/pam.d/sshd.

      Nota: A ausência de 2FA no ataque ao Siafi (2024) permitiu desvios de R$ 10 milhões, evitáveis com autenticação robusta.

    Prática: Configure 2FA em uma VM Linux com Google Authenticator e teste o login SSH com um código One-Time Password - OTP.

    Código OTP (One-Time Password)

    OTP (One-Time Password): Senha de uso único gerada automaticamente que expira após um curto período de tempo e só pode ser utilizada uma vez. Consiste em um código numérico ou alfanumérico que adiciona uma camada extra de segurança ao processo de autenticação, sendo fundamental na implementação de Autenticação de Dois Fatores (2FA). Combina algo que o usuário sabe (senha tradicional) com algo que possui (dispositivo receptor do OTP).

    Métodos de Entrega: SMS, aplicativos autenticadores (Google Authenticator, Authy), tokens físicos (YubiKey), e-mail. Cada método oferece diferentes níveis de segurança e conveniência, sendo os aplicativos autenticadores e tokens físicos considerados mais seguros que SMS devido à resistência contra ataques de SIM swapping e interceptação.

    Aplicação: Amplamente utilizado em sistemas bancários, redes sociais, serviços corporativos e qualquer aplicação que requeira autenticação robusta para proteção contra acesso não autorizado.

    Ferramentas de Hardening e Segurança do Sistema

    Hardening: Processo de fortalecimento da segurança de sistemas computacionais através da redução da superfície de ataque. Envolve desabilitação de serviços desnecessários, aplicação de patches de segurança, configuração adequada de permissões, implementação de políticas de senha robustas, configuração de firewalls e outras medidas preventivas para minimizar vulnerabilidades e riscos de comprometimento.

    PAM (Pluggable Authentication Modules): Framework de autenticação modular utilizado em sistemas Unix/Linux que permite configurar diferentes métodos de autenticação de forma flexível. Através de módulos plugáveis, o PAM pode implementar autenticação por senha, certificados, biometria, tokens, além de controles de acesso, políticas de senha e logging de tentativas de autenticação.

    chage: Comando Linux para gerenciamento de informações de expiração de senhas de usuários. Permite configurar prazo de validade da senha, período de aviso antes da expiração, dias de inatividade permitidos após expiração, data de expiração da conta e outras políticas temporais relacionadas à autenticação de usuários do sistema.

    usermod: Ferramenta de linha de comando para modificação de contas de usuário em sistemas Unix/Linux. Permite alterar informações como grupo primário, grupos secundários, diretório home, shell padrão, UID, bloqueio/desbloqueio de conta, data de expiração e outras propriedades da conta sem necessidade de recriação do usuário.

    fail2ban: Sistema de prevenção contra intrusão que monitora arquivos de log em busca de padrões suspeitos e executa ações automatizadas de bloqueio. Detecta tentativas de força bruta, ataques de dicionário e outros comportamentos maliciosos em serviços como SSH, HTTP, FTP e email, bloqueando temporariamente IPs atacantes através de regras de firewall.

    Nota: Estas ferramentas são fundamentais para manutenção da segurança de sistemas em produção e devem ser configuradas adequadamente conforme as necessidades específicas de cada ambiente.

    2.5 Ferramentas de Conscientização

    • Have I Been Pwned: verificar se e-mail foi exposto em vazamento:
    • How Secure Is My Password: testar força de senha sem enviá-la:

    Ferramentas Online de Verificação de Senhas

    haveibeenpwned.com: Serviço gratuito criado por Troy Hunt que permite verificar se endereços de e-mail ou senhas foram comprometidos em vazamentos de dados conhecidos. Mantém uma base de dados com bilhões de credenciais expostas em breaches públicos, permitindo que usuários verifiquem se suas informações foram comprometidas. Inclui API para integração com outros sistemas e notificações automáticas sobre novos vazamentos.

    howsecureismypassword.net: Ferramenta online que estima o tempo necessário para quebrar uma senha através de ataques de força bruta. Analisa fatores como comprimento, complexidade e uso de caracteres especiais para calcular o tempo aproximado que um computador levaria para descobrir a senha. Fornece feedback educativo sobre práticas de criação de senhas seguras.

    passwordmeter.com: Medidor de força de senhas que avalia múltiplos critérios incluindo comprimento, uso de maiúsculas e minúsculas, números, símbolos, sequências e repetições. Fornece pontuação detalhada e sugestões específicas para melhorar a segurança da senha, explicando os pontos fortes e fracos identificados na análise.

    Precaução: Embora estas ferramentas sejam úteis para educação e verificação, evite inserir senhas reais em uso em ferramentas online. Para senhas ativas, prefira verificadores offline ou gerencie através de gerenciadores de senhas confiáveis.

    3. Vazamento de Dados e Suas Consequências

    3.1 Causas e Implicações de Vazamentos

    • Furto de dados por atacantes (ex.: acesso via credenciais vazadas ou vulnerabilidades XSS/SQLi).
    • Códigos maliciosos (malwares que extraem bases de dados).
    • Senhas fracas ou reutilizadas em múltiplos sistemas.
    • Erro ou negligência interna (funcionário que expõe documentos ou HDDs sem limpeza).
    • Engenharia Social: Técnicas como phishing (ex.: e-mails falsos) roubam credenciais.
    • Misconfiguration: Servidores expostos, como no vazamento, detectáveis por Shodan.

    “Elo Mais Fraco”: A segurança de um sistema depende de seu elemento mais vulnerável, frequentemente o usuário, cuja senha fraca ou engenharia social podem levar a invasões que resultam em vazamentos.

    3.2 Conexão com Vulnerabilidades Web (OWASP Top 10)

    Muitos vazamentos são consequência da exploração de falhas em aplicações web (já estudadas em Aula 4):

    • SQL Injection (A03:2021): permite ao atacante extrair dados diretamente do banco.
    • XSS (A07:2021): pode roubar sessões de usuários e eventualmente senhas armazenadas em cookies.
    • Broken Access Control (A01:2021): usuários não autorizados acessam dados sensíveis.
    • sqlmap: sqlmap -u "https://site.com?id=1" --dbs para testar injeções SQL.

      Nota: O vazamento da Netshoes (2023) foi causado por SQL Injection, explorável por sqlmap, resultando em multa de R$ 5 milhões pela LGPD.

    • Nuclei: nuclei -u https://site.com -t owasp-top10/ para identificar falhas do OWASP Top 10.

    3.3 Estudos de Caso Reais

    • Ministério da Saúde (2023): senha vazada expôs dados de 16 milhões de brasileiros—uso de senha fraca permitiu acesso a função administrativa que fez dump de banco de dados.
    • Notebook VENDIDO no eBay (2022): Ex-funcionário vendeu laptop corporativo sem apagar HD; 1 milhão de correntistas do banco X tiveram dados pessoais expostos.
    • vazamento de CPF e e-mails; dados coletados por ferramentas OSINT (theHarvester) facilitaram operações de phishing em larga escala.
    • Phishing direcionado para roubar credenciais explorando senhas reutilizadas.
    • Misconfiguration em um servidor pode expôr milhões de dados de clientes, detectável por ferramentas como Shodan.

    3.4 Implicações Legais (LGPD)

    A Lei Geral de Proteção de Dados Pessoais (Lei nº 13.709/2018) impõe responsabilidades e penalidades:

    • Notificação obrigatória de vazamentos em até 72 horas.
    • Multas de até 2% do faturamento anual, limitadas a R$ 50 milhões por infração.
    • Obrigatoriedade de demonstrar medidas de segurança adequadas (hashing, salting, MFA).
    • LGPD: Multas de até R$ 50 milhões e notificação em 72 horas.
    • PNSI: Exige auditorias regulares e criptografia (ex.: openssl enc -aes-256-cbc para proteger dados).

    Leitura Recomendada: Resumo da LGPD com ênfase em artigos sobre comunicação de incidentes de segurança.

    Prática: Use sqlmap em um ambiente DVWA para simular uma injeção SQL. Analise o impacto de um vazamento com base na LGPD.

    3.5 Recursos Complementares

    Quiz de Avaliação – Aula 5

    1. Qual operador Google Dork pode ser usado para localizar arquivos SQL em sites governamentais brasileiros?

    2. Qual comando Nmap é usado para detectar o sistema operacional do alvo?

    3. Qual valor de TTL em um pacote ICMP sugere que o sistema operacional alvo é Linux?

    4. Qual ferramenta é usada para gerar wordlists personalizadas na seção de quebra de senhas?

    5. Ao aplicar um salt antes de gerar o hash de uma senha, qual é o principal benefício?

    6. Qual comando Linux força um usuário a trocar a senha no próximo login?

    7. Qual das seguintes opções é um fator de autenticação em um sistema MFA?

    8. Segundo a LGPD, em quanto tempo uma empresa deve notificar a Autoridade Nacional em caso de vazamento de dados pessoais?