Найти в Дзене
Hypro-Y

CTF ringzer0team - SQL Injection 8: Don't mess with Noemie; she hates admin!

Очередная форма авторизации к которой нам придется подобрать инъекцию, только по названию пока можно догадываться какие особенности она таит. Приступим! В самом начале формы нас предостерегают о том что в этот раз юзернейм не admin. Но с каким то логином все же надо пробовать авторизоваться и я выбрал Noemie, и наша стартовая инъекция: Noemie' -- Результат запроса: Затем я попробовал другой способ объявления комментария admin' # Да-да, я bad boy, и мне кажется что дело тут не в юзернейме и инъекцию удастся провести и с таким юзернеймом, хотя по правде, шаблонные инъекции я вбиваю в эти формы иногда уже "на автомате" Результат был тот же, но есть еще один вид объявления комментария "/*", попробуем его admin' /* Как видно на скриншоте нам сообщают о том что неверный логин или пароль, соответственно перед нами либо СУБД в которой обязательно наличие "*/" для объявления конца комментария, либо более поздняя версия MySQL в которой закрывающий тэг тоже стал обязательным (что в целом равно

Очередная форма авторизации к которой нам придется подобрать инъекцию, только по названию пока можно догадываться какие особенности она таит. Приступим!

В самом начале формы нас предостерегают о том что в этот раз юзернейм не admin. Но с каким то логином все же надо пробовать авторизоваться и я выбрал Noemie, и наша стартовая инъекция:

Noemie' --

Результат запроса:

-2

Затем я попробовал другой способ объявления комментария

admin' #
Да-да, я bad boy, и мне кажется что дело тут не в юзернейме и инъекцию удастся провести и с таким юзернеймом, хотя по правде, шаблонные инъекции я вбиваю в эти формы иногда уже "на автомате"

Результат был тот же, но есть еще один вид объявления комментария "/*", попробуем его

admin' /*
-3

Как видно на скриншоте нам сообщают о том что неверный логин или пароль, соответственно перед нами либо СУБД в которой обязательно наличие "*/" для объявления конца комментария, либо более поздняя версия MySQL в которой закрывающий тэг тоже стал обязательным (что в целом равносильно первому высказыванию).

Вывод напрашивается только один: в задании нам предстоит поставить не только открывающую кавычку, но и закрывающую. Мы бы могли смело запилить инъекцию типа:

admin' or '

но тут становится понятно цель предостережения в самом начале "Username is not admin this time". Чтобы не ломать голову над юзернеймом и не отступать от своих слов (о том что инъекцию удастся провести и с таким юзернеймом), просто изменим инъекцию так чтобы в ней всегда отрабатывало хоть одно из условий, например:

admin' or 1 or '

Бинго! Инъекция прошла и мы получили флаг!

-4

Задание не слишком замысловатое, но за него дают уже 3 очка!

That's all, folks!