Intermediário 8 desafios
Autenticação e tokens
Depois do login, um site precisa lembrar quem é você de uma página para a outra. Para isso ele entrega um crachá: um token ou um identificador de sessão que o seu navegador devolve a cada pedido. Quando esse crachá é feito ou conferido do jeito errado, qualquer pessoa pode preencher o seu, ou o do administrador. Aqui você segue a autenticação em pedaços: primeiro lê um JSON Web Token (JWT) e descobre que ele não é secreto, depois forja um token num servidor que não confere a assinatura, reaproveita um token vencido, quebra um segredo HMAC fraco para assinar o seu próprio token, troca o crachá que o cliente mesmo guarda, adivinha um identificador de sessão previsível e, no fim, junta tudo contra um servidor já endurecido. Entre os ataques, um desafio de ler o patch mostra o conserto. Tudo se resolve lendo o token, o código e o log que vêm no desafio, com um pouco de Python. Nada mira sistema real: o alvo é sempre a Galpão Logística, uma cooperativa de frete de brinquedo.
O que você vai aprender
- Anatomia de um JWT
- O algoritmo none
- Conferir um token direito
- Segredo HMAC fraco
- Funções de hash
- Sessão guardada no cliente
- Cookies
- Identificadores de sessão
- Web Com arquivo Exemplo resolvido
Ler um JWT
Disponível - Web Com arquivo Exemplo resolvido
O algoritmo none
Disponível - Web Com arquivo
Token sem prazo
Disponível - Web Com arquivo
Segredo fraco
Disponível - Web Com arquivo
O crachá que você preenche
0% de acerto, 0 resolveram
Disponível - Web Com arquivo
Sessão previsível
0% de acerto, 0 resolveram
Disponível - Web Com arquivo
Lendo o patch
0% de acerto, 0 resolveram
Disponível - Web Com arquivo
Capstone
0% de acerto, 0 resolveram
Disponível