SQL Инъекция через тело API отдыха - PullRequest
0 голосов
/ 20 апреля 2020

В настоящее время я проверяю, уязвим ли мой Rest API для инъекции SQL, но я запутался в процессе.

Мой API принимает JSON, затем отправляет запросы на Mysql база данных. Я попытался отправить строки, которые должны привести к SQL инъекции, как ' OR 'x'='x, но вместо выполнения они отправляются на сервер в виде строк, что, я полагаю, означает, что они не являются проблема.

Сейчас я провожу более интенсивное тестирование с почтальоном, однако, если я попытаюсь добавить строки в мои параметры, такие как:

{
   "name": "test" OR 1 = 1 -- "
}

Почтальон просто сообщит мне JSON синтаксис неверен, и даже если я отправлю его, я получу ответ «Неверный JSON», даже если он не попадет в мой API отдыха.

Это хорошо или плохо? Как мне на самом деле go о тестировании моего API?

1 Ответ

5 голосов
/ 20 апреля 2020

Почтальон прав, ваш JSON поврежден. Вы должны избегать двойных кавычек в имени или значении поля, это специальный символ в JSON.

Ваш запрос должен выглядеть следующим образом:

{
   "name": "test\" OR 1 = 1 -- "
}

Подробнее о специальных символах в JSON : https://www.json.org/json-en.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...