CVE-2023-31287 — Insufficient token expiration in...
HIGH
Insufficient token expiration in Serenity
Published April 27, 2023Updated January 31, 2025Source: osv
Summary
An issue was discovered in Serenity Serene (and StartSharp) before 6.7.0. Password reset links are sent by email. A link contains a token that is used to reset the password. This token remains valid even after the password reset and can be used a second time to change the password of the corresponding user. The token expires only 3 hours after issuance and is sent as a query parameter when resetting. An attacker with access to the browser history can thus use the token again to change the password in order to take over the account.
Advisory Timeline
- First published April 27, 2023 (1264 days ago).
- Last revised January 31, 2025 — 646 days after initial publication.
Remediation
Upgrade to the fixed version using your package manager.
NuGet
Update Serenity.Net.Core to 6.7.0 or laterdotnet add package Serenity.Net.Core --version 6.7.0
NuGet
Update Serenity.Net.Web to 6.7.0 or laterdotnet add package Serenity.Net.Web --version 6.7.0
After upgrading, run your dependency scanner again to confirm the vulnerability is resolved.
Affected Packages (2)
Affects 1 ecosystem: nuget (2).
| Package | Ecosystem | Affected | Fixed In |
|---|---|---|---|
| Serenity.Net.Core | nuget | 5.0.0, 5.0.1, 5.0.10, 5.0.11 (+112 more) | 6.7.0 |
| Serenity.Net.Web | nuget | 5.0.0, 5.0.1, 5.0.10, 5.0.11 (+112 more) | 6.7.0 |
Vulnerability Classification
Common Weakness Enumeration (CWE) identifiers for this vulnerability type.
- CWE-640
CVSS Score Breakdown
What the CVSS (Common Vulnerability Scoring System) 7.8 score means for each attack dimension.
Attack Vector
Local
Attack Complexity
Low
Privileges Required
Low
User Interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
High
Availability
High
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
References
- https://nvd.nist.gov/vuln/detail/CVE-2023-31287ADVISORY
- https://github.com/serenity-is/Serenity/commit/11b9d267f840513d04b4f4d4876de7823a6e48d2WEB
- https://github.com/serenity-is/SerenityPACKAGE
- https://packetstorm.news/files/id/172648WEB
- https://packetstormsecurity.com/files/172648/Serenity-StartSharp-Software-File-Upload-XSS-User-Enumeration-Reusable-Tokens.htmlWEB
- https://seclists.org/fulldisclosure/2023/May/14WEB
Frequently Asked Questions
- What is CVE-2023-31287?
- Insufficient token expiration in Serenity This vulnerability has been assigned a severity rating of HIGH (CVSS score: 7.8/10).
- How do I check if my project is affected by CVE-2023-31287?
- CVE-2023-31287 affects Serenity.Net.Core and Serenity.Net.Web. Use GeekWala's free vulnerability scanner to check your dependencies against CVE-2023-31287 and 200,000+ other known vulnerabilities.
Severity & Exploitability
CVSS Score
7.8
High exploitability or significant impact. Prioritize remediation within days.
Also Known As
GHSA-2hp9-3xfr-r9w2
Related CVEs
- CVE-2026-106112HIGH
ImageSharp: ICC LUT16 output channel count can write beyond Vector4
- CVE-2026-106115HIGH
ImageSharp: TIFF CCITT T6 encoder writes beyond an undersized output buffer
Check if you're affected
Scan your dependencies to see if this vulnerability affects your projects.
Scan Your Dependencies