Фильтры OWASP ESAPI SafeRequest() против фильтров SecurityWrapperRequest()

#java #owasp #java-security #esapi

Вопрос:

Я использую esapi-2.1.0.1 v и пытаюсь включить утилиту OWASP-ESAPI filter. в чем разница между SafeRequest и SecurityWrapperRequest и рекомендуется добавить для случая ниже:

запрос.getParameterMap();

верните новый запрос SecurityWrapperRequest(запрос).getParameterMap(); //org.owasp.esapi.filters.SecurityWrapperRequest()

или

возврат возврат нового запроса безопасности(запроса).getParameterMap(); //org.owasp.esapi.filters.SafeRequest()

Ответ №1:

Нет никакого org.owasp.esapi.filters.SafeRequest класса. (Ключом к этому был бы org.owasp.esapi.filters.SafeRequestTest класс в разделе src/main/test, который является тестом JUnit, поэтому вы определенно не хотите этого.)

Единственными классами в org.owasp.esapi.filters пакете, которые на самом деле являются фильтрами сервлетов JavaEE , являются: ClickjackFilter , ESAPIFilter , RequestRateThrottleFilter и (несмотря на его название), SecurityWrapper (которые, оглядываясь назад, должны были быть вызваны SecurityWrapperFilter ). Этот SecurityWrapper фильтр использует 2 класса, SecurityWapperRequest и SecurityWrapperResponse , которые также могут быть использованы в качестве классов, которые помогут вам в создании собственных фильтров сервлетов JavaEE.

Все, кроме ESAPIFilter того, адекватно описаны в пакете Javadoc по адресу https://www.javadoc.io/static/org.owasp.esapi/esapi/2.2.3.1/org/owasp/esapi/filters/package-summary.html. ESAPIFilter вероятно, это вам не пригодится, если вы не используете интерфейс ESAPI Authenticator .

Надеюсь, это немного поможет.