Pular para o conteúdo

Web

CORS que confia em qualquer um

Normalmente, o navegador impede que o JavaScript de um site leia a resposta de outro domínio. O CORS é o conjunto de cabeçalhos com que a API diz quais origens têm permissão de ler as suas respostas. A API da Estância Pampa configurou isso de forma frouxa.

O cors-exchange.http mostra uma troca: a vítima, logada em pampa.test, abriu uma página em https://shady.test, e essa página fez o navegador pedir /api/me à API. Como a vítima está logada, o navegador mandou o cookie de sessão junto. Olhe os cabeçalhos da resposta e decida se o JavaScript de shady.test tem permissão de ler o corpo. Se tiver, pegue a chave que está nesse corpo. Ela vem em hexadecimal (prefixo hex:): decodifique o hex para obter a flag.

Responda no formato tocaia{...} com o valor já decodificado. Exemplo de forma (não é a resposta): tocaia{algum_valor}.

Arquivos do desafio

  • cors-exchange.http

    629 B · SHA-256 8633c9cc477aa75c…

    Baixar

Tudo se resolve com ferramentas gratuitas.