← Back to CVE Explorer

CVE-2026-112907

Full vulnerability record from the local CVENow database.

Description

filelock is a platform-independent file lock for Python. From 3.22.0 until 4.2.1, soft lock classes on Windows read an existing marker with _read_lock_file and remove a stale marker through break_lock_file using pathname operations that wait for an oplock break. Another local account with read access to an unheld marker can keep a Level 1 or batch oplock unanswered, causing SoftFileLock.acquire and related async or fallback locks to wait beyond timeout, blocking=False, and cancel_check. A stale marker under the oplock cannot be broken, but mutual exclusion remains intact and no file other than the marker is accessed. This issue is fixed in version 4.2.1.

Severity
LOW
CVSS score
2.5 (v3.1)
Vulnerability status
Received
Source identifier
Published
2026-11-05 22:17:46.513000
Last modified
2026-11-05 22:17:46.513000
View original CVE JSON
{
  "id": "CVE-2026-112907",
  "sourceIdentifier": "[email protected]",
  "published": "2026-11-05T22:17:46.513",
  "lastModified": "2026-11-05T22:17:46.513",
  "vulnStatus": "Received",
  "cveTags": [],
  "descriptions": [
    {
      "lang": "en",
      "value": "filelock is a platform-independent file lock for Python. From 3.22.0 until 4.2.1, soft lock classes on Windows read an existing marker with _read_lock_file and remove a stale marker through break_lock_file using pathname operations that wait for an oplock break. Another local account with read access to an unheld marker can keep a Level 1 or batch oplock unanswered, causing SoftFileLock.acquire and related async or fallback locks to wait beyond timeout, blocking=False, and cancel_check. A stale marker under the oplock cannot be broken, but mutual exclusion remains intact and no file other than the marker is accessed. This issue is fixed in version 4.2.1."
    }
  ],
  "affected": [
    {
      "source": "[email protected]",
      "affectedData": [
        {
          "vendor": "tox-dev",
          "product": "filelock",
          "versions": [
            {
              "version": ">= 3.22.0, < 4.2.1",
              "status": "affected"
            }
          ]
        }
      ]
    }
  ],
  "metrics": {
    "cvssMetricV31": [
      {
        "source": "[email protected]",
        "type": "Secondary",
        "cvssData": {
          "version": "3.1",
          "vectorString": "CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:L",
          "baseScore": 2.5,
          "baseSeverity": "LOW",
          "attackVector": "LOCAL",
          "attackComplexity": "HIGH",
          "privilegesRequired": "LOW",
          "userInteraction": "NONE",
          "scope": "UNCHANGED",
          "confidentialityImpact": "NONE",
          "integrityImpact": "NONE",
          "availabilityImpact": "LOW"
        },
        "exploitabilityScore": 1.0,
        "impactScore": 1.4
      }
    ]
  },
  "weaknesses": [
    {
      "source": "[email protected]",
      "type": "Primary",
      "description": [
        {
          "lang": "en",
          "value": "CWE-667"
        }
      ]
    }
  ],
  "references": [
    {
      "url": "https://github.com/tox-dev/filelock/commit/97d694a9a3ee1721d6c79a480174dfd9b060a080",
      "source": "[email protected]"
    },
    {
      "url": "https://github.com/tox-dev/filelock/commit/e1e825b1992f69fb6b346dc395d5ae4893536c0a",
      "source": "[email protected]"
    },
    {
      "url": "https://github.com/tox-dev/filelock/pull/835",
      "source": "[email protected]"
    },
    {
      "url": "https://github.com/tox-dev/filelock/releases/tag/4.2.1",
      "source": "[email protected]"
    },
    {
      "url": "https://github.com/tox-dev/filelock/security/advisories/GHSA-567q-5qvw-pf92",
      "source": "[email protected]"
    }
  ]
}