Да, использование параметров напрямую без проверки уязвимо, ваша система может быть взломана с помощью атаки SQL-инъекцией.
Например, предположим, вы получаете информацию о пользователях из базы данных, и ваш запрос выглядит следующим образом:
SELECT id, name, password from Users WHERE id = 1
Вы ожидаете идентификатор в соответствии с форматом, сохраненным в БД, но допустим, что искаженный запрос содержит идентификатор как '1 ||Истинно, так что в конечном итоге ваш запрос будет сформирован следующим образом:
SELECT id, name, password from Users WHERE id = 1 || True
Поскольку этот запрос вернет список всех пользователей из базы данных, и ваш код не будет выполнен, лучше проверить каждыйзапрос пользователя перед началом обработки.
https://www.incapsula.com/web-application-security/sql-injection.html