
OWASP Java Encoder - это простой в использовании высокопроизводительный класс кодировщика для Java 1.5+ с нулевыми зависимостями и небольшим весом. Этот проект поможет веб-разработчикам на Java защититься от межсайтового скриптинга!
Контекстное кодирование вывода — это метод программирования, необходимый для предотвращения межсайтового скриптинга (XSS). Этот проект представляет собой простой в использовании, высокопроизводительный класс кодировщика для Java 1.8+ с минимальными зависимостями.
Более подробную документацию по OWASP Java Encoder можно найти на сайте https://owasp.org/www-project-java-encoder/.
Вы можете скачать JAR-файл из Maven Central.
Теги JSP и функции EL доступны в encoder-jsp, также доступны:
JAR-файлы также доступны в Central:
<dependency>
<groupId>org.owasp.encoder</groupId>
<artifactId>encoder</artifactId>
<version>1.4.0</version>
</dependency>
<!-- using Servlet Spec 5 in the jakarta.servlet package use: -->
<dependency>
<groupId>org.owasp.encoder</groupId>
<artifactId>encoder-jakarta-jsp</artifactId>
<version>1.4.0</version>
</dependency>
<!-- using the Legacy Servlet Spec in the javax.servlet package use: -->
<dependency>
<groupId>org.owasp.encoder</groupId>
<artifactId>encoder-jsp</artifactId>
<version>1.4.0</version>
</dependency>
Библиотека OWASP Java Encoder предназначена для быстрого контекстного кодирования с минимальными накладными расходами как по производительности, так и по использованию. Чтобы начать, просто добавьте encoder-1.2.3.jar, импортируйте org.owasp.encoder.Encode и начинайте использовать.
Пример использования:
PrintWriter out = ....;
out.println("<textarea>"+Encode.forHtml(userData)+"</textarea>");
Пожалуйста, посмотрите javadoc для Encode, чтобы узнать о различных контекстах, для которых можно выполнять кодирование.
Удачного кодирования!
Из-за тестовых примеров для проекта encoder-jakarta-jsp требуется Java 17 для сборки и тестирования проекта. Просто выполните:
mvn package
Для запуска интеграционного теста Jakarta JSP, чтобы проверить, что теги JSP и EL работают корректно, выполните:
mvn verify -PtestJakarta
| JAR | Имя модуля |
|---|---|
| encoder | owasp.encoder |
| encoder-jakarta-jsp | owasp.encoder.jakarta |
| encoder-jsp | owasp.encoder.jsp |
| encoder-espai | owasp.encoder.esapi |
| Библиотека | Библиотека тегов |
|---|---|
| encoder-jakarta-jsp | <%@taglib prefix="e" uri="owasp.encoder.jakarta"%> |
| encoder-jsp | <%@taglib prefix="e" uri="https://www.owasp.org/index.php/OWASP_Java_Encoder_Project"%> |
Проект OWASP Java Encoder является многомодульным Maven-проектом:
$ mvn package
Бенчмарки (в настоящее время нуждаются в улучшении) можно запустить с помощью:
$ mvn verify -Pbenchmarks
Релизы выполняются через central-publishing-maven-plugin:
$ mvn mvn clean package deploy -DperformRelease=true
Команда рада объявить о выпуске версии 1.4.0!
Команда рада объявить о выпуске версии 1.3.1!
Команда рада объявить о выпуске версии 1.3.0!
jakarta.servlet.* #75.
Команда рада объявить о выпуске версии 1.2.3!
Команда рада объявить о выпуске версии 1.2.2!
Команда рада объявить о выпуске версии 1.2.1!
OWASP Java Encoder перемещён на GitHub. Также выпущена версия 1.2!
Посетите https://www.owasp.org/index.php/OWASP_Java_Encoder_Project#tab=Use_the_Java_Encoder_Project, чтобы увидеть подробную документацию и примеры использования каждого API!
Мы рады объявить о выпуске версии 1.1.1. Наряду с важным исправлением ошибки мы добавили интеграцию с ESAPI для замены устаревших кодировщиков ESAPI на OWASP Java Encoder.
Мы рады объявить о выпуске версии 1.1. Наряду с несколькими небольшими улучшениями кодирования мы повысили производительность и добавили библиотеку тегов и функций JSP.