OWASP TOP 10 — 4. Небезопасные прямые ссылки на объекты — иначе, чем ESAPI в JSF 1.2 + JAVA + SEAM

Есть ли что-нибудь уже интегрированное в JSF 1.2 или SEAM 2.2.2 для предотвращения A4-небезопасных прямых ссылок на объекты

Я знаю функции ESAPI для этого, но я не хочу включать в свой проект другую структуру, если в этом нет необходимости. Есть ли что-нибудь встроенное в JSF или SEAM?


person Joergi    schedule 28.11.2012    source источник
comment
Я не думаю, что есть что-то легкодоступное, но ESAPI имеет открытый исходный код, и эту проблему относительно просто решить с помощью IndirectObjectReferenceMap. Проверьте owasp-esapi-java.googlecode.com/svn/trunk/src/main/java/org/   -  person Chris Schmidt    schedule 14.12.2012
comment
Привет, Крис, я знаю, что такое EASPI, вот я и спросил, есть ли более простое встроенное решение для решения проблемы, но нестандартное! ESAPI идеально подходит для этого, но я просто хочу увидеть другие альтернативы! но все равно спасибо за ответ   -  person Joergi    schedule 14.12.2012


Ответы (1)


У вас есть несколько альтернатив:

  1. Проверьте доступ к защищенному ресурсу в ваших операторах SQL
  2. Непрямая хеш-карта объекта — это ужасно простая конструкция, состоящая буквально из 10 строк кода. Просто переосуществите и будьте осторожны с источником случайности
  3. Измените свои библиотеки тегов, чтобы делать то, что делает ASP.net, то есть проверять флажки, радиогруппы, выборки и т. д., которые имеют ограниченный ввод, имеют то же значение, что и один из потенциальных вводов, которые были отправлены (т. е. если у вас есть «1», "2" и "3" означают, что параметр является одним из этих трех значений. JSF 2 и Rich Faces по-прежнему не доводят вас до уровня базовой разработки программного обеспечения ASP.NET 2.0.
  4. Использование s:validateForm из интеграции Faces для выполнения программной проверки.

Честно говоря, я думаю, что (2) - лучшая альтернатива, поскольку я знаю, что для внедрения ESAPI для J2EE требуется немного заглушить несколько строк кода. Почему для сопоставления DOR нужен пользовательский файловый базовый аутентификатор, я не понимаю. Я стремился к более слабой связи в ESAPI для PHP, но я уже давно занимался взломом ESAPI для J2EE.

person vanderaj    schedule 15.02.2013