SQL-инъекция после упорядочения по

1

Я работаю над исправлениями SQL Injection. Я изменил свой слой DAO, чтобы параметризовать мои критерии (подготовленный оператор). На экране у меня есть сетка, которая позволяет сортировать данные. Мой вопрос после "Order by xyz", будет ли SQL Injection. Обратите внимание: "xyz" отправляется пользовательским интерфейсом.

For Example
        Normal : Select employeeNumber, employeeName from employee order by employeeNumber
        Injection : Select employeeNumber, employeeName from employee order by employeeNumber;
                                                          delete from employee

At the DAO layer I am using Spring, Hibernate

Do I need to handle the ";" while setting dynamic Order By in query.

Вкратце: как обращаться с SQL Injection для динамического предложения Order by.

  • 1
    Вопрос Тойра не ясен (или завершен). Где и как пользовательский вход ( xyz ?) Используется в SQL?
  • 0
    @Nivas, xyz - это столбец. А в пользовательском интерфейсе есть Grid (Table like View). Пользователь может щелкнуть заголовок таблицы, чтобы отсортировать таблицу по столбцу. Наша работа с фреймами берет «Имя столбца» из таблицы и делает заказ по предложению.
Теги:
hibernate
jpa
sql-injection

1 ответ

1
Лучший ответ

Если вам необходимо динамически изменять порядок по критериям, чем API-интерфейс JPA Criteria с безопасным типом Metamodel - ваш лучший друг.

  • 0
    Я прошел через этот API, но Criteria API не поддерживает Native SQL, в приложении было много встроенного SQL. Есть ли способ, которым Критерии можно использовать для родного SQL.
  • 0
    Тогда JOOQ - правильный инструмент для вас.
Показать ещё 2 комментария

Ещё вопросы

Сообщество Overcoder
Наверх
Меню