Параметризованные SQL-запросы
Делюсь с вами задачей, которую недавно встретила. Есть у нас вот такой простой запрос: Выполняем мы его через db.rawQuery(query, null) и получаем в ответ android.database.sqlite.SQLiteException: near "Artagnan": syntax error (code 1 SQLITE_ERROR): , while compiling: SELECT * FROM cats WHERE name = 'D'Artagnan'; Тут проблема в том, что catName содержит одинарную кавычку ('), которая не экранируется автоматически и конфликтует с кавычками, используемыми в самом запросе. Но почему это происходит, если...
06:44
1,0×
00:00/06:44
484,2 тыс смотрели · 4 года назад
478 читали · 10 месяцев назад
SQL инъекция "Числовой входящий параметр". Как защититься?
SQL-инъекции — это тип атаки на веб-приложения, при которой злоумышленник вставляет или "впрыскивает" вредоносные SQL-запросы в поля ввода, чтобы манипулировать базой данных. Атака может привести к получению несанкционированного доступа к данным, их изменению или удалению. Уязвимость типа инъекции возникает из-за того, что входящие данные не проходят должной фильтрации. Наиболее частая ошибка разработчиков заключается в том, что они не проверяют и не очищают передаваемые параметры, например, идентификаторы (ID), прежде чем использовать их в запросах...