org.owasp.esapi.reference.DefaultEncoder против org.owasp.encoder.Encode - PullRequest
0 голосов
/ 06 сентября 2018

Оба класса org.owasp.esapi.reference.DefaultEncoder и org.owasp.encoder.Encode предоставляют некоторые из поддерживаемых очищающих функций VeraCode для защиты от атак с использованием межсайтового скриптинга (XSS). Учитывая, что они оба взяты из OWASP, я должен думать, что они не являются избыточными, но некоторые методы выглядят так, как будто они предназначены для одного и того же, например, DefaultEncoder.encodeForHTML(String) и Encode.forHtml(String). Интересно, что между ними отличается, и когда предпочтительнее использовать один класс, а не другой?

1 Ответ

0 голосов
/ 06 сентября 2018

Они из разных проектов, которые имеют некоторые совпадения в функциональности. org.owasp.esapi.reference.DefaultEncoder из проекта ESAPI, а org.owasp.encoder.Encode из проекта OWASP Java Encoder. Проект Java Encoder является более новым и более активно поддерживаемым, и, в частности, для выходного кодирования, тогда как ESAPI имеет и другие функции.

Для чего-то вроде HTML-кодирования они делают одно и то же, так что это не имеет большого значения, но похоже, что ESAPI больше похож на унаследованный проект. См:

...