Возможно SQL Внедрение с перенаправлением на веб-страницу, если введенный запрос правильный - PullRequest
0 голосов
/ 18 января 2020

По разрешению моего друга я проверяю его сайт на предмет потенциальных уязвимостей.

Я пытался выяснить, смог ли я вставить запрос SQL в параметр запроса POST hi' or 1=1 --:

query=hi'%20or%201%3d1%20--

Я обнаружил, что документ печатает:

<div class="error">index job,query: syntax error, unexpected '-' near '-'</div>

, а с ' or 0=0 -- я получаю:

<div class="error">index job,query: syntax error, unexpected '|' near ' | 0=0) --'</div>

означает ли это, что он уязвим к SQL Инъекция? Если да, как я могу заставить его печатать данные системы сервера (например, информацию и т. Д. c.)? Кстати, если строка правильная, она перенаправляется на другую веб-страницу (я думаю, именно поэтому SQLMap сообщает мне, что параметр не SQL -инъектируемый).

РЕДАКТИРОВАТЬ: Я могу Посмотрите, как работает запрос, только если URL-адрес перенаправлен, но я не увижу вывод запроса. Если URL не перенаправлен, я вижу эти SQL ошибки запроса. Я пытаюсь понять, как получить выходные данные и сделать что-то более полезное для атаки на веб-сайт или даже сделать его обнаруживаемым из sqlmap.

Текущая команда, которую я использую, - sqlmap -r thework.txt -p query --dbs. thework.txt содержит полный действительный запрос POST.

Ответы [ 2 ]

0 голосов
/ 19 января 2020

SQL внедрение не только о вредоносных атаках, которые читают данные или изменяют данные на вашем сайте.

Большинство SQL инъекций - просто ошибки, подобные той, которую вы видели. Они могут даже не быть злыми. Что если у вас есть уязвимость SQL, которая просто вызывает ошибку, когда кто-то хочет зарегистрировать свою фамилию как «O'Reilly»? У пользователя благие намерения, но ваш сайт ломается, когда он использует свое настоящее имя.

Это достаточная причина для обнаружения и исправления случаев SQL внедрения в ваш код.

Вы не сделали t опубликовать свой код, который строит запрос SQL из этого ввода, так что то, что вы показали, является лишь косвенным доказательством. Но я делаю вывод, что вы копируете вход GET в ваш запрос SQL без надлежащего экранирования или предпочитаемого метода, используя параметр запроса.

0 голосов
/ 18 января 2020

Wi sh У меня было 50 повторений, чтобы я мог добавить это в комментарии. Но да, сайт, скорее всего, уязвим. Чтобы быть уверенным, попросите вашего друга разрешить вам запустить первоначальный эксплойт.

sqlmap.py -u <Целевой адрес> --dbs

Если вы успешно нашли найденную базу данных уязвимость или, по крайней мере, подтвердили наличие уязвимости.

...