Skip to content

Instantly share code, notes, and snippets.

@nunesfb
Last active August 28, 2025 22:36
Show Gist options
  • Select an option

  • Save nunesfb/9e6f53a533819bc0f3eccfa70a474a72 to your computer and use it in GitHub Desktop.

Select an option

Save nunesfb/9e6f53a533819bc0f3eccfa70a474a72 to your computer and use it in GitHub Desktop.
Atividade Prática – OWASP Juice Shop

📝 Atividade Prática – OWASP Juice Shop

1) Preparação

Faça o download da imagem e rode o container do OWASP Juice Shop
👉 Docker Hub: https://hub.docker.com/r/bkimminich/juice-shop

docker run --rm -p 3000:3000 bkimminich/juice-shop

2) Acesso

Acesse o site no endereço:
👉 http://localhost:3000/#/score-board

Esse é o painel onde você poderá acompanhar os desafios concluídos.


3) Tarefas Práticas

Realize as seguintes tarefas (mínimos obrigatórios por categoria):


🔹 Injection (mínimo 3 desafios)

  • Login Admin: bypass do login usando SQL Injection.
  • Database Schema: exfiltrar a estrutura do banco de dados.
  • User Credentials: recuperar lista de credenciais de usuários.

👉 Objetivo didático: compreender falhas em consultas SQL e a importância de prepared statements e validação de entradas.


🔹 XSS – Cross-Site Scripting (mínimo 2 desafios)

  • DOM XSS: executar um payload <iframe src="javascript:alert('xss')">.
  • Reflected XSS: injetar código via parâmetros refletidos.

👉 Objetivo didático: reconhecer como entradas não validadas permitem execução de scripts maliciosos e discutir mitigação (sanitização, CSP).


🔹 Broken Access Control (mínimo 3 desafios)

  • Admin Section: acessar área administrativa sem ser admin.
  • View Basket: visualizar carrinho de outro usuário.
  • Forged Review/Feedback: postar comentário em nome de outro usuário.

👉 Objetivo didático: reforçar que validação de permissões deve estar no backend (RBAC/ABAC), não apenas no frontend.


🔹 Sensitive Data Exposure (mínimo 3 desafios)

  • Exposed credentials: localizar credenciais em arquivos/client-side.
  • Confidential Document: acessar documento confidencial.
  • Forgotten Developer Backup: encontrar arquivo de backup esquecido.

👉 Objetivo didático: perceber como dados sensíveis expostos comprometem a confidencialidade e violam LGPD/GDPR.


🔹 Security Misconfiguration (mínimo 3 desafios)

  • Error Handling: provocar erro e observar mensagens expostas.
  • Deprecated Interface: utilizar uma API antiga não desativada.
  • Cross-Site Imaging: explorar configuração incorreta de recursos.

👉 Objetivo didático: discutir importância de hardening, atualizações e desativação de serviços não utilizados.


🔹 Broken Authentication (mínimo 3 desafios)

  • Password Strength: acessar conta admin com senha fraca.
  • Reset Jim’s Password: redefinir senha a partir de pergunta secreta.
  • Two Factor Authentication: explorar falha em mecanismo de 2FA.

👉 Objetivo didático: avaliar a importância de senhas fortes, MFA e boas práticas de autenticação.


📌 Entrega

Para cada desafio resolvido, anexe print da evidência (tela ou request/response) e escreva um parágrafo explicando:

  1. Qual foi a vulnerabilidade explorada.
  2. Qual princípio de Segurança da Informação (Confidencialidade, Integridade, Disponibilidade, Autenticidade ou Não Repúdio) foi afetado.
  3. Qual seria o impacto real em uma empresa (legal, técnico, reputacional).
  4. Como mitigar a falha.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment