Tokyo Westerns CTF - SimpleAuth Writeup
Essa challenge quando peguei ela , eu não sabia nem a sua descrição

Analisando por cima o código, podemos ver que ele recebe os parametros via $_SERVER['QUERY_STRING']
e cria uma variavel action
para separar aquilo que vem do parse_str()
Um pouco mais para baixo, temos algumas verificações sendo feitas, enviando um get com o valor de "auth", entramos dentro da condição que precisamos para resolver o desafio.
A partir deste momento, temos 3 "if's", dos quais na verdade não servem para nada, porém, temos a varivel $hashed_password
que é usada no ultimo if para verificar o seu valor e nos entregar a flag!
A real intenção do desafio era explorar o parse_str()
Fazendo um pequeno teste, podemos ver que usando o parse_str()
para pegar um valor já antes setado, fará com que este valor seja sobreescrito
$var = 'xxxxx';
parse_str($_SERVER['QUERY_STRING']);
echo $var;


Enviando via GET o valor, é possivel notar que acontece a sobreescrita dos valores, então, precisamos apenas fazer isso no desafio.
