OWASP / OWASP/owasp-java-encoder

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

Aperta
#94 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

enhancement
Lingua principale
Java
Stelle
543
Fork
122
Merge medio
9h 9m
PR unite (30g)
1

Descrizione

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.

Guida per i contributori

Apri la guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Direzione di ricerca

Inizia da esapi/pom.xml e dai test dell’adapter ESAPI, quindi esamina #90 e le issue storiche #31, #63 e #74. Definisci la baseline stabile fissa, le dichiarazioni di compatibilità e il meccanismo di override prima di modificare l’ambito dell’adapter. Il lavoro è completato quando i test coprono le versioni dichiarate e le build con cache vuota e i POM pubblicati selezionano la stessa dipendenza stabile prevista, senza un intervallo o una versione prerelease non intenzionali.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
java
Ambito
build-system, documentation, security, testing
Tipo di issue
Refactoring
Difficoltà
5/5
Tempo stimato
Più di una settimana
Stato di attività
Attiva
Chiarezza
Abbastanza chiara
Idoneità per principianti
35/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.