Ранее проголосовал за ответ, поэтому забыл пометить его как принятый. Это сделано сейчас. Благодарю.

риложение имеет много запросов JDBC, написанных с использованием Statement, и поэтому уязвимо для внедрения SQL. К сожалению, это приложение было разработано около 10 лет назад, и, вероятно, разработчики не знали о подготовленном заявлении.

Я знаю, что лучший способ решить эту проблему - использовать PreparedStatement, но преобразовать его во всем приложении очень утомительно. Кроме того, написание любого вида соответствия Patten для внедрения SQL может быть очень сложным, поскольку ключевые слова, такие как Select, insert, union и т. Д., Являются английскими словами, которые также могут появляться в текстовом поле, вводимом пользователем.

Есть ли более умный способ избежать внедрения SQL без использования оператора Prepared. Если это повторяющийся вопрос, дайте мне ссылку на вопрос, на который есть хороший ответ. Спасибо за помощь.

Ответы на вопрос(1)

Ваш ответ на вопрос