Skip to content
Heist/ feed
Back to feed
High

Cross-site Scripting sidekiq-unique-jobs UI server vulnerability

Type: advisorySources: OSV

sidekiq-unique-jobs is an open source project which prevents simultaneous Sidekiq jobs with the same unique arguments to run. Specially crafted GET request parameters handled by any of the following endpoints of sidekiq-unique-jobs' "admin" web UI, allow a super-user attacker, or an unwitting, but authorized, victim, who has received a disguised / crafted link, to successfully execute malicious code, which could potentially steal cookies, session data, or local storage data from the app the sidekiq-unique-jobs web UI is mounted in. 1. `/changelogs`, 2. `/locks` or 3. `/expiring_locks`. This issue has been addressed in versions 7.1.33 and 8.0.7. Users are advised to upgrade. There are no known workarounds for this vulnerability.

Products
Not specified
Affected versions
Not specified
Fixed versions
Not specified
CVEs
CVE-2023-46950, CVE-2023-46951, CVE-2024-25122
Confirmed fixed CVEs
Not specified
Updated in this feed
2 Nov 2026, 19:56 UTC · Revision 1

Source evidence

Cross-site Scripting sidekiq-unique-jobs UI server vulnerability

core-osv · Original source

Published 13 Feb 2024, 19:05 UTC

sidekiq-unique-jobs is an open source project which prevents simultaneous Sidekiq jobs with the same unique arguments to run. Specially crafted GET request parameters handled by any of the following endpoints of sidekiq-unique-jobs' "admin" web UI, allow a super-user attacker, or an unwitting, but authorized, victim, who has received a disguised / crafted link, to successfully execute malicious code, which could potentially steal cookies, session data, or local storage data from the app the sidekiq-unique-jobs web UI is mounted in. 1. `/changelogs`, 2. `/locks` or 3. `/expiring_locks`. This issue has been addressed in versions 7.1.33 and 8.0.7. Users are advised to upgrade. There are no known workarounds for this vulnerability.

osv:CVE-2024-25122
Complete source record
{
  "id": "ebce48cbf6080bf51cf0dfb2d520fba3a4ff7ae615a02a1cc1f289265afbeb92",
  "url": "https://osv.dev/vulnerability/CVE-2024-25122",
  "method": "structured",
  "payload": {
    "kind": "advisory",
    "title": "Cross-site Scripting sidekiq-unique-jobs UI server vulnerability",
    "summary": "sidekiq-unique-jobs is an open source project which prevents simultaneous Sidekiq jobs with the same unique arguments to run. Specially crafted GET request parameters handled by any of the following endpoints of sidekiq-unique-jobs' \"admin\" web UI, allow a super-user attacker, or an unwitting, but authorized, victim, who has received a disguised / crafted link, to successfully execute malicious code, which could potentially steal cookies, session data, or local storage data from the app the sidekiq-unique-jobs web UI is mounted in. 1. `/changelogs`, 2. `/locks` or 3. `/expiring_locks`. This issue has been addressed in versions 7.1.33 and 8.0.7. Users are advised to upgrade. There are no known workarounds for this vulnerability.",
    "evidence": "osv:CVE-2024-25122",
    "products": [],
    "severity": "high",
    "structured": {
      "id": "CVE-2024-25122",
      "aliases": [
        "CVE-2023-46950",
        "CVE-2023-46951",
        "CVE-2024-25122",
        "GHSA-cmh9-rx85-xj38",
        "GHSA-fhx8-5c23-x7x5"
      ],
      "metrics": [
        {
          "type": "CVSS_V3",
          "score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:L"
        }
      ],
      "affected": [
        {
          "ranges": [
            {
              "repo": "https://github.com/zoolutions/sidekiq-unique-jobs",
              "type": "GIT",
              "events": [
                {
                  "introduced": "0"
                },
                {
                  "fixed": "f6139775263ab0dfd3a0c6bfbac12ddc3980e8f4"
                },
                {
                  "introduced": "b7b08d85986d7756b9a54ca1a2538f79e9600b0e"
                },
                {
                  "fixed": "ce1e57ec4c6c4c4a709a26882a820e5fc7b6e498"
                },
                {
                  "fixed": "ec3afd920c1b55843c72f748a87baac7f8be82ed"
                }
              ],
              "database_specific": {
                "extracted_events": [
                  {
                    "cpe": "cpe:2.3:a:mhenrixon:sidekiq-unique-jobs:*:*:*:*:*:*:*:*",
                    "range": [
                      {
                        "introduced": "0"
                      },
                      {
                        "fixed": "7.1.33"
                      }
                    ],
                    "source": "CPE_RANGE"
                  },
                  {
                    "cpe": "cpe:2.3:a:mhenrixon:sidekiq-unique-jobs:*:*:*:*:*:*:*:*",
                    "range": [
                      {
                        "introduced": "8.0.0"
                      },
                      {
                        "fixed": "8.0.7"
                      }
                    ],
                    "source": "CPE_RANGE"
                  },
                  {
                    "range": [
                      {
                        "fixed": "ec3afd920c1b55843c72f748a87baac7f8be82ed"
                      }
                    ],
                    "source": "REFERENCES_COMMIT"
                  }
                ]
              }
            }
          ],
          "versions": [
            "v7.1.32",
            "v8.0.6",
            "v7.1.31",
            "v8.0.5",
            "v8.0.4",
            "v7.1.30",
            "v7.1.29",
            "v8.0.3",
            "v8.0.2",
            "v8.0.1",
            "v8.0.0",
            "v7.1.28",
            "v7.1.27",
            "v7.1.26",
            "v7.1.25",
            "v7.1.24",
            "v7.1.23",
            "v7.1.22",
            "v7.1.21",
            "v7.1.20",
            "v7.1.19",
            "v7.1.18",
            "v7.1.16",
            "v7.1.15",
            "v7.1.14",
            "v7.1.13",
            "v7.1.12",
            "v7.1.11",
            "v7.1.10",
            "v7.1.8",
            "v7.1.7",
            "v7.0.12",
            "v7.1.6",
            "v7.1.5",
            "v7.1.4",
            "v7.1.3",
            "v7.1.2",
            "v7.1.1",
            "v7.1.0",
            "v7.0.11",
            "v7.0.10",
            "v7.0.9",
            "v7.0.8",
            "v7.0.7",
            "v7.0.6",
            "v7.0.5",
            "v7.0.4",
            "v7.0.3",
            "v7.0.2",
            "v7.0.1",
            "v7.0.0",
            "v7.0.0.beta29",
            "v7.0.0.beta28",
            "v7.0.0.beta27",
            "v7.0.0.beta26",
            "v7.0.0.beta25",
            "v7.0.0.beta24",
            "v7.0.0.beta23",
            "v7.0.0.beta22",
            "v7.0.0.beta21",
            "v7.0.0.beta20",
            "v7.0.0.beta19",
            "v7.0.0.beta18",
            "v7.0.0.beta17",
            "v7.0.0.beta16",
            "v7.0.0.beta15",
            "v7.0.0.beta14",
            "v7.0.0.beta13",
            "v7.0.0.beta12",
            "v7.0.0.beta11",
            "v7.0.0.beta10",
            "v7.0.0.beta9",
            "v7.0.0.beta8",
            "v7.0.0.beta7",
            "v7.0.0.beta5",
            "v7.0.0.beta4",
            "v7.0.0.beta3",
            "v7.0.0.beta2",
            "v7.0.0.beta1",
            "v6.0.13",
            "v6.0.12",
            "v6.0.11",
            "v6.0.10",
            "v6.0.9",
            "v6.0.8",
            "v6.0.7",
            "v6.0.6",
            "v6.0.5",
            "v6.0.4",
            "v6.0.3",
            "v6.0.2",
            "v6.0.1",
            "v6.0.0",
            "v6.0.0.rc8",
            "v6.0.0.rc7",
            "v6.0.0.rc6",
            "v6.0.0.rc5",
            "v6.0.0.rc4",
            "v6.0.0.rc3",
            "v6.0.0.rc2",
            "v6.0.0.rc1",
            "v6.0.0.beta2",
            "v6.0.0.beta1",
            "v4.0.18",
            "v5.0.10",
            "v5.0.9",
            "v5.0.8",
            "v5.0.7",
            "v5.0.6",
            "v5.0.5",
            "v5.0.4",
            "v5.0.3",
            "v5.0.2",
            "v5.0.1",
            "v5.0.0",
            "v4.0.17",
            "v4.0.16",
            "v4.0.15",
            "v4.0.13",
            "v4.0.12",
            "v4.0.11",
            "v4.0.10",
            "v4.0.9",
            "v4.0.8",
            "v4.0.7",
            "v4.0.6",
            "v4.0.5",
            "v4.0.4",
            "v4.0.3",
            "v4.0.2",
            "4.0.1",
            "v4.0.0",
            "v3.0.11",
            "v3.0.10",
            "v3.0.9",
            "v3.0.3",
            "v3.0.2",
            "v3.0.1",
            "v2.7.0",
            "v2.3.2",
            "v2.2.1",
            "v2.2.0",
            "v2.1.0"
          ],
          "database_specific": {
            "source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2024-25122.json"
          }
        }
      ],
      "modified": "2026-10-28T02:30:23.065592613Z",
      "provider": "osv",
      "references": [
        "https://github.com/CVEProject/cvelistV5/tree/main/cves/2024/25xxx/CVE-2024-25122.json",
        "https://github.com/mhenrixon/sidekiq-unique-jobs/security/advisories/GHSA-cmh9-rx85-xj38",
        "https://nvd.nist.gov/vuln/detail/CVE-2024-25122",
        "https://github.com/mhenrixon/sidekiq-unique-jobs/commit/ec3afd920c1b55843c72f748a87baac7f8be82ed"
      ],
      "provider_metadata": {
        "cwe_ids": [
          "CWE-79"
        ],
        "cna_assigner": "GitHub_M",
        "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2024/25xxx/CVE-2024-25122.json"
      }
    },
    "related_cves": [
      {
        "value": "CVE-2023-46950",
        "evidence": "/aliases"
      },
      {
        "value": "CVE-2023-46951",
        "evidence": "/aliases"
      },
      {
        "value": "CVE-2024-25122",
        "evidence": "/id"
      }
    ],
    "security_relevant": true,
    "severity_evidence": "/severity/0/score"
  },
  "source_id": "core-osv",
  "document_id": 489477,
  "published_at": "2024-02-13T19:05:27.162+00:00"
}