🚀 Capítulo 05: OWASP Top 10 - Introdução (Tema: Batman)

NOTE

Este capítulo utiliza a temática de Batman para explicar o OWASP Top 10. Conhecer os arquivos de Arkham sobre os piores criminosos é o primeiro passo para proteger Gotham!


1. 🎯 Objetivo da Aula

Compreender o que é a organização OWASP e conhecer o famoso documento Top 10, que lista as vulnerabilidades mais críticas e comuns em aplicações web em todo o mundo.

2. 🏢 O Cenário Prático (Seu Desafio)

O Batman mantém no Batcomputador os arquivos secretos do Asilo Arkham.

  • Ele sabe exatamente como o Coringa ataca (caos e explosivos).
  • Ele sabe como o Charada ataca (enigmas e armadilhas).
  • Ele sabe como o Pinguim ataca (guarda-chuvas falsos e capangas). Ele estuda os criminosos mais perigosos para saber como defender a cidade!

No mundo da segurança web, nós temos a OWASP (Open Web Application Security Project). Eles lançam periodicamente uma lista chamada Top 10, que são os 10 “supervilões” (vulnerabilidades) que mais atacam os sites e sistemas do mundo. Seu desafio é estudar essa lista para proteger o seu sistema!


3. 🧠 Fundamentos: A Teoria Traduzida

A OWASP é uma fundação sem fins lucrativos que trabalha para melhorar a segurança do software. O OWASP Top 10 é o guia de conscientização mais famoso do mundo para desenvolvedores.

🗂️ Os 3 Principais Vilões do Top 10 (Versão 2021):

  1. A01:2021 - Quebra de Controle de Acesso (Broken Access Control):
    • O que o vilão faz: Permite que usuários acessem recursos ou funções que não deveriam (Ex: O usuário comum acessando a área do administrador).
  2. A03:2021 - Injeção (Injection):
    • O que o vilão faz: O atacante envia dados maliciosos que o interpretador executa como comando (Ex: SQL Injection).
  3. A07:2021 - Falhas de Identificação e Autenticação:
    • O que o vilão faz: O sistema não garante que o usuário é quem ele diz ser (Ex: Permitir senhas muito fáceis ou ataques de força bruta).

Nota: A lista completa contém 10 categorias, que mudam de posição conforme os ataques evoluem no mundo real.


4. 📖 Exemplo Guiado: O Checklist do Batman

Para garantir que o seu sistema está protegido contra o Top 10, você deve usar um checklist de segurança no seu projeto, assim como o Batman faz antes de sair com o Batmóvel:

CHECKLIST DE SEGURANÇA OWASP (Simplificado):
[ ] Nós verificamos as permissões de acesso em TODAS as páginas? (Contra A01)
[ ] Nós usamos consultas preparadas para o banco de dados? (Contra A03)
[ ] Nós exigimos senhas fortes e usamos criptografia? (Contra A07)
[ ] Nós atualizamos todas as bibliotecas do projeto? (Contra A06)

5. 🛠️ Prática Obrigatória 1: Associando o Vilão

Com base nos 3 vilões apresentados na teoria, diga qual categoria do OWASP Top 10 está associada a cada situação:

  1. Um site permitia que qualquer um digitasse site.com/dados_secretos.txt no navegador e baixasse a lista de clientes sem fazer login.
  2. Um formulário de contato permitia que o usuário digitasse um comando que apagava a tabela de produtos do banco de dados.

6. 🛠️ Prática Obrigatória 2: A Evolução da Lista

A lista do OWASP Top 10 não é fixa. Ela é atualizada a cada poucos anos (as últimas grandes atualizações foram em 2017 e 2021). Por que essa lista precisa mudar? Os hackers inventam truques novos ou os programadores aprendem a se defender dos truques antigos?


7. 📤 Instruções de Entrega (GitHub Desktop + Microsoft Teams)

  1. Faça o Commit: No GitHub Desktop, digite a mensagem (ex: Finaliza Capítulo 05 Seguranca) e clique em Commit to main.
  2. Envie para a Nuvem (Push): Clique em Push origin.

8. 📂 Estrutura de Pastas

mod_12_desenvolvimento_seguro/
├── capitulos/
│   ├── capitulo_05_owasp.md
│   └── codigos/
│       └── cap05/
│           └── checklist_seguranca.txt

💡 Checkpoint de Lógica

O OWASP Top 10 não cobre todas as falhas possíveis do universo, mas foca nas 10 mais perigosas. Se você proteger seu sistema contra essas 10, você já estará mais seguro do que a maioria dos sites da internet!

10. 🔥 Desafio de Fixação

Acesse o site oficial da OWASP (owasp.org) e procure a lista completa do último Top 10 para ver quais são os outros 7 vilões que não citamos aqui.

🔑 Gabarito de Código/Fórmulas

Gabarito da Prática 1:

  1. A01:2021 - Quebra de Controle de Acesso (Acesso direto a arquivos sem permissão).
  2. A03:2021 - Injeção (Comando executado indevidamente).

Capitulo Anterior | Proximo Capitulo