{
  "schema_version": "1.4.0",
  "id": "GHSA-2hp9-3xfr-r9w2",
  "modified": "2025-01-31T21:35:22Z",
  "published": "2023-04-27T03:30:23Z",
  "aliases": [
    "CVE-2023-31287"
  ],
  "summary": "Insufficient token expiration in Serenity",
  "details": "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.",
  "severity": [
    {
      "type": "CVSS_V3",
      "score": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H"
    }
  ],
  "affected": [
    {
      "package": {
        "ecosystem": "NuGet",
        "name": "Serenity.Net.Core"
      },
      "ranges": [
        {
          "type": "ECOSYSTEM",
          "events": [
            {
              "introduced": "0"
            },
            {
              "fixed": "6.7.0"
            }
          ]
        }
      ]
    },
    {
      "package": {
        "ecosystem": "NuGet",
        "name": "Serenity.Net.Web"
      },
      "ranges": [
        {
          "type": "ECOSYSTEM",
          "events": [
            {
              "introduced": "0"
            },
            {
              "fixed": "6.7.0"
            }
          ]
        }
      ]
    }
  ],
  "references": [
    {
      "type": "ADVISORY",
      "url": "https://nvd.nist.gov/vuln/detail/CVE-2023-31287"
    },
    {
      "type": "WEB",
      "url": "https://github.com/serenity-is/Serenity/commit/11b9d267f840513d04b4f4d4876de7823a6e48d2"
    },
    {
      "type": "PACKAGE",
      "url": "https://github.com/serenity-is/Serenity"
    },
    {
      "type": "WEB",
      "url": "https://packetstorm.news/files/id/172648"
    },
    {
      "type": "WEB",
      "url": "http://packetstormsecurity.com/files/172648/Serenity-StartSharp-Software-File-Upload-XSS-User-Enumeration-Reusable-Tokens.html"
    },
    {
      "type": "WEB",
      "url": "http://seclists.org/fulldisclosure/2023/May/14"
    }
  ],
  "database_specific": {
    "cwe_ids": [
      "CWE-640"
    ],
    "severity": "HIGH",
    "github_reviewed": true,
    "github_reviewed_at": "2023-04-27T17:09:21Z",
    "nvd_published_at": "2023-04-27T03:15:10Z"
  }
}