Un utilisateur suspicieux 2/2 (Divers) - 404CTF 2022

Un utilisateur suspicieux 2/2 (Divers) - 404CTF 2022

Fichiers du challenge Principe:
Exploiter un shell restreint pour lire le flag via stderr et la commande '.'

Le challenge

Il nous faut pousser plus loin notre attaque: le bot détient un second flag

Authentification

On "s'authentifie" auprès du bot (ce qui peut débloquer de nouvelles commandes)
On a en effet la commande debug qui s'est rajoutée

Commande "debug"

Celle-ci nous renvoie un message que j'avais trouvé… cryptique!
J'ai alors tenté de pousser la SQL injection, pour trouver d'autres infos et peut-etre une privesc, mais rien
Je me suis alors dis "il faut peut-etre juste se connecter à l'infra des challenges sur le port 31337 avec le mot de passe p45_uN_4uT0m4t3?" et… oui!

Cette connexion nous donne un shell, mais il va maintenant falloir l'exploiter: aucune commande basique (cat, ls, id etc) ne semble réellement marcher

Flag

La commande . (= "charger le fichier comme une source bash" en gros) peut être utilisée, et le flag tombe: 404CTF{17_s_4g155417_3n_f4iT_d_1_b0t}

Cette commande . permet en fait de charger un fichier comme un script dans le terminal. Or, si ce fichier contient le flag, le flag sera interprété comme une commande. Cette commande n'existant pas, bash nous le dit et on peut donc voir le flag.
Si le fichier de flag avait été #404CTF{...} alors cette méthode n'aurait pas fonctionné (puisque le flag aurait été considéré comme un commentaire, ignoré par bash, et celui-ci n'aurait pas planté)

Fichiers du challenge

↩ Retour à la liste des challenges

⇇ Retour à l'accueil