Fixed
Details
Assignee
Pothys - MitrahSoftPothys - MitrahSoftReporter
Zac SpitzerZac SpitzerLabels
New Issue warning screen
Before you create a new Issue, please post to the mailing list first https://dev.lucee.org
Once the issue has been verified, one of the Lucee team will ask you to file an issue
Sprint
Fix versions
Priority
New
Details
Details
Assignee
Pothys - MitrahSoft
Pothys - MitrahSoftReporter
Zac Spitzer
Zac SpitzerLabels
New Issue warning screen
Before you create a new Issue, please post to the mailing list first https://dev.lucee.org
Once the issue has been verified, one of the Lucee team will ask you to file an issue
Sprint
Fix versions
Priority
Created 30 January 2025 at 23:55
Updated 14 February 2025 at 10:20
Resolved 14 February 2025 at 10:19
The only way to currently invalidate a CSRF token is to generate a new token for the same key
This has several problems,
the session’s list of tokens can grow unbounded (i.e. memory/storage if heavily used)
tokens can be reused (which is ok, when a form is resubmitted, depending on the app)
regenerating doesn’t reduce the size of the pool
Add a third argument remove (default false, existing behaviour), which will remove the token, by key, regardless if the token is correct
csrfVerifyToken( token=token, key=key, remove=true )
Now that https://luceeserver.atlassian.net/browse/LDEV-3324 will preserve on sessionRotate(), we may consider adding a CSRFClearTokens() type function