SQL-инъекция MariaDB Python CTF - PullRequest
       7

SQL-инъекция MariaDB Python CTF

0 голосов
/ 27 ноября 2018

Я пытаюсь получить административный доступ к приложению (ctf).Инъекция происходит в форме входа в систему при вводе имени пользователя.Я могу обойти пользователя, но не пароль (сначала неверное имя пользователя. После инъекции я получаю неверный пароль).У меня есть некоторые проблемы с пониманием кода Python, особенно .replace('%', '%%')).

Часть сообщения об ошибке:

if cursor.execute('SELECT password FROM users WHERE name=\'%s\'' % request.form['name'].replace('%', '%%')) == 0:

Моя полезная нагрузка: admin' union select 1;--

У тебя есть какие-нибудь подсказки?

1 Ответ

0 голосов
/ 27 ноября 2018

Как минимум избежать обратной косой черты, апострофа и двойной кавычки.Например, превращение

admin' union select 1;--

в

admin\' union select 1;--

предотвратило бы этот случай внедрения SQL.

...