Neste post trago a resolução de um desafio nível básico da HackerSec.
Neste post trago a resolução de um desafio nível básico da HackerSec. | ||
Desafio | ||
Primeiras impressões | ||
O nome do desafio é muito sugestivo. Eu já tinha solucionado um desafio com esse “tema”, o xXcurlXx, onde ele de certa forma abordava o Cors. | ||
Análise da página | ||
Fiz a análise da página ao utilizar o “inspecionar elemento” mas não encontrei nenhuma informação. | ||
Cookies | ||
Sempre utilizo o plugin Cookie Editor no Mozilla pra verificação dos cookies da página. Neste desafio, foi me apresentado um: | ||
Resolução | ||
Vou tentar explicar mais adiante como o Cors funciona, mas basicamente para solucionar esse desafio temos que trocar o protocolo da url apresentada no cookie, de http para https e posteriormente salvar: | ||
Após isso, reenviei a requisição novamente, portanto, preenchi o formulário apenas com um usuário e senha simbólico e cliquei em validar: | ||
Obtive a flag: | ||
Same-Origin Policy | ||
Os navegadores possuem uma politica chamada Same-Origin Policy. Ou seja, um recurso só pode ser requisitado por outro endereço caso os dois respeitem algumas regras, como: | ||
| ||
Abaixo uma imagem disponibilizada no site da Mozilla, explicando como essas regras funcionam: | ||
https://developer.mozilla.org/en-US/docs/Web/Security/Same-origin_policy | ||
Foi o que aconteceu neste desafio, o cookie baseUrlAuth tinha como valor o endereço do site, mas como http. Acredito que o desafio aqui era entender esse processo, Cors e Same-Origin Policy, e alterar o valor do cookie. | ||
Sem fazer qualquer alteração no cookie e enviar um usuário e senha aleatório a resposta é a seguinte: | ||