OWASP / OWASP/owasp-java-encoder

Replace the ESAPI version range with a deterministic, tested dependency policy

Abierto
#94 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

enhancement
Lenguaje dominante
Java
Estrellas
543
Forks
122
Merge medio
9 h 9 min
PR fusionados (30 d)
1

Descripción

Follow-up to #90 (reviewed at 31588e1). This tracks work intentionally kept separate from the modernization PR.

Problem and evidence

esapi/pom.xml declares org.owasp.esapi:esapi:[2.5.1.0,3). During the review this resolved to 2.7.0.1-RC1, meaning a fresh build can select a prerelease without any repository change. The range is also part of the published consumer POM.

Related historical failures from changing ESAPI APIs or resolution: #31, #63, and #74. This issue is not a claim that the currently resolved release is vulnerable.

Acceptance criteria

  • Select and document a supported, fixed stable ESAPI baseline; retain a deliberate override mechanism if needed.
  • Document the supported ESAPI compatibility range separately from Maven's dependency selection.
  • Add build/runtime tests for the selected baseline and any other versions claimed as supported, including delegated adapter methods.
  • Validate dependency convergence and the security/runtime implications of the transitive graph; preserve compatibility claims or explicitly document any necessary change.
  • Confirm fresh-cache builds select the same intended stable dependency.
  • Verify the generated/published POM does not retain an unintended open-ended range or prerelease selection.
  • Coordinate the chosen dependency/module identity with the separate JPMS adapter issue.

Limit changes to the ESAPI adapter and its tests/documentation; do not add ESAPI dependencies to the core encoder.

Guía de contribución

Abrir la guía de contribución

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Línea de trabajo

Comienza con esapi/pom.xml y las pruebas del adaptador de ESAPI; después revisa #90 y las issues históricas #31, #63 y #74. Define la línea base estable fija, las afirmaciones de compatibilidad y el mecanismo de override antes de cambiar el alcance del adaptador. Se considera terminado cuando las pruebas cubren las versiones declaradas y las compilaciones con la caché vacía y los POMs publicados seleccionan la misma dependencia estable prevista, sin un rango ni una versión prerelease no intencionados.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Stack tecnológico
java
Área
build-system, documentation, security, testing
Tipo de issue
Refactorización
Dificultad
5/5
Tiempo estimado
Más de una semana
Estado de actividad
Activo
Claridad
Bastante claro
Aptitud para principiantes
35/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.