CVE-2022-49849 (GCVE-0-2022-49849)

Vulnerability from cvelistv5 – Published: 2025-05-01 14:10 – Updated: 2026-05-23 15:22
VLAI
Title
btrfs: fix match incorrectly in dev_args_match_device
Summary
In the Linux kernel, the following vulnerability has been resolved: btrfs: fix match incorrectly in dev_args_match_device syzkaller found a failed assertion: assertion failed: (args->devid != (u64)-1) || args->missing, in fs/btrfs/volumes.c:6921 This can be triggered when we set devid to (u64)-1 by ioctl. In this case, the match of devid will be skipped and the match of device may succeed incorrectly. Patch 562d7b1512f7 introduced this function which is used to match device. This function contains two matching scenarios, we can distinguish them by checking the value of args->missing rather than check whether args->devid and args->uuid is default value.
Impacted products
Vendor Product Version CPE status
Linux Linux Affected: 5578b681fbf2b22d61189a2539efd3009518b328 , < c9fe4719c662e0af17eea723cf345e37719fd3c9 (git)
Affected: 562d7b1512f7369a19bca2883e2e8672d78f0481 , < bc6c127c377010f136360552ebf91c2723081c1b (git)
Affected: 562d7b1512f7369a19bca2883e2e8672d78f0481 , < 0fca385d6ebc3cabb20f67bcf8a71f1448bdc001 (git)
Affected: 5.15.54 , < 5.15.79 (semver)
guessed Create a notification for this product.
Linux Linux Affected: 5.16
Unaffected: 0 , < 5.16 (semver)
Unaffected: 5.15.79 , ≤ 5.15.* (semver)
Unaffected: 6.0.9 , ≤ 6.0.* (semver)
Unaffected: 6.1 , ≤ * (original_commit_for_fix)
guessed Create a notification for this product.
Show details on NVD website

{
  "containers": {
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "product": "Linux",
          "programFiles": [
            "fs/btrfs/volumes.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "c9fe4719c662e0af17eea723cf345e37719fd3c9",
              "status": "affected",
              "version": "5578b681fbf2b22d61189a2539efd3009518b328",
              "versionType": "git"
            },
            {
              "lessThan": "bc6c127c377010f136360552ebf91c2723081c1b",
              "status": "affected",
              "version": "562d7b1512f7369a19bca2883e2e8672d78f0481",
              "versionType": "git"
            },
            {
              "lessThan": "0fca385d6ebc3cabb20f67bcf8a71f1448bdc001",
              "status": "affected",
              "version": "562d7b1512f7369a19bca2883e2e8672d78f0481",
              "versionType": "git"
            },
            {
              "lessThan": "5.15.79",
              "status": "affected",
              "version": "5.15.54",
              "versionType": "semver"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "fs/btrfs/volumes.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "5.16"
            },
            {
              "lessThan": "5.16",
              "status": "unaffected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "5.15.*",
              "status": "unaffected",
              "version": "5.15.79",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.0.*",
              "status": "unaffected",
              "version": "6.0.9",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "*",
              "status": "unaffected",
              "version": "6.1",
              "versionType": "original_commit_for_fix"
            }
          ]
        }
      ],
      "cpeApplicability": [
        {
          "nodes": [
            {
              "cpeMatch": [
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "5.15.79",
                  "versionStartIncluding": "5.15.54",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.0.9",
                  "versionStartIncluding": "5.16",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.1",
                  "versionStartIncluding": "5.16",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nbtrfs: fix match incorrectly in dev_args_match_device\n\nsyzkaller found a failed assertion:\n\n  assertion failed: (args-\u003edevid != (u64)-1) || args-\u003emissing, in fs/btrfs/volumes.c:6921\n\nThis can be triggered when we set devid to (u64)-1 by ioctl. In this\ncase, the match of devid will be skipped and the match of device may\nsucceed incorrectly.\n\nPatch 562d7b1512f7 introduced this function which is used to match device.\nThis function contains two matching scenarios, we can distinguish them by\nchecking the value of args-\u003emissing rather than check whether args-\u003edevid\nand args-\u003euuid is default value."
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-05-23T15:22:58.301Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/c9fe4719c662e0af17eea723cf345e37719fd3c9"
        },
        {
          "url": "https://git.kernel.org/stable/c/bc6c127c377010f136360552ebf91c2723081c1b"
        },
        {
          "url": "https://git.kernel.org/stable/c/0fca385d6ebc3cabb20f67bcf8a71f1448bdc001"
        }
      ],
      "title": "btrfs: fix match incorrectly in dev_args_match_device",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2022-49849",
    "datePublished": "2025-05-01T14:10:04.480Z",
    "dateReserved": "2025-05-01T14:05:17.230Z",
    "dateUpdated": "2026-05-23T15:22:58.301Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2",
  "vulnerability-lookup:meta": {
    "epss": {
      "cve": "CVE-2022-49849",
      "date": "2026-08-26",
      "epss": "0.0019",
      "percentile": "0.08699"
    },
    "nvd": "{\"cve\":{\"id\":\"CVE-2022-49849\",\"sourceIdentifier\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"published\":\"2025-05-01T15:16:08.450\",\"lastModified\":\"2026-06-17T05:19:18.053\",\"vulnStatus\":\"Analyzed\",\"cveTags\":[],\"descriptions\":[{\"lang\":\"en\",\"value\":\"In the Linux kernel, the following vulnerability has been resolved:\\n\\nbtrfs: fix match incorrectly in dev_args_match_device\\n\\nsyzkaller found a failed assertion:\\n\\n  assertion failed: (args-\u003edevid != (u64)-1) || args-\u003emissing, in fs/btrfs/volumes.c:6921\\n\\nThis can be triggered when we set devid to (u64)-1 by ioctl. In this\\ncase, the match of devid will be skipped and the match of device may\\nsucceed incorrectly.\\n\\nPatch 562d7b1512f7 introduced this function which is used to match device.\\nThis function contains two matching scenarios, we can distinguish them by\\nchecking the value of args-\u003emissing rather than check whether args-\u003edevid\\nand args-\u003euuid is default value.\"},{\"lang\":\"es\",\"value\":\"En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad: btrfs: correcci\u00f3n de coincidencia incorrecta en dev_args_match_device syzkaller encontr\u00f3 una aserci\u00f3n fallida: assertion failed: (args-\u0026gt;devid != (u64)-1) || args-\u0026gt;missing, en fs/btrfs/volumes.c:6921 Esto puede activarse cuando configuramos devid en (u64)-1 mediante ioctl. En este caso, se omitir\u00e1 la coincidencia de devid y la coincidencia de dispositivo puede tener \u00e9xito incorrectamente. El parche 562d7b1512f7 introdujo esta funci\u00f3n que se utiliza para hacer coincidir dispositivos. Esta funci\u00f3n contiene dos escenarios de coincidencia; podemos distinguirlos comprobando el valor de args-\u0026gt;missing en lugar de comprobar si args-\u0026gt;devid y args-\u0026gt;uuid son los valores predeterminados.\"}],\"affected\":[{\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"affectedData\":[{\"vendor\":\"Linux\",\"product\":\"Linux\",\"defaultStatus\":\"unaffected\",\"programFiles\":[\"fs/btrfs/volumes.c\"],\"repo\":\"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\"versions\":[{\"version\":\"5578b681fbf2b22d61189a2539efd3009518b328\",\"lessThan\":\"c9fe4719c662e0af17eea723cf345e37719fd3c9\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"562d7b1512f7369a19bca2883e2e8672d78f0481\",\"lessThan\":\"bc6c127c377010f136360552ebf91c2723081c1b\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"562d7b1512f7369a19bca2883e2e8672d78f0481\",\"lessThan\":\"0fca385d6ebc3cabb20f67bcf8a71f1448bdc001\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"5.15.54\",\"lessThan\":\"5.15.79\",\"versionType\":\"semver\",\"status\":\"affected\"}]},{\"vendor\":\"Linux\",\"product\":\"Linux\",\"defaultStatus\":\"affected\",\"programFiles\":[\"fs/btrfs/volumes.c\"],\"repo\":\"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\"versions\":[{\"version\":\"5.16\",\"status\":\"affected\"},{\"version\":\"0\",\"lessThan\":\"5.16\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"5.15.79\",\"lessThanOrEqual\":\"5.15.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.0.9\",\"lessThanOrEqual\":\"6.0.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.1\",\"lessThanOrEqual\":\"*\",\"versionType\":\"original_commit_for_fix\",\"status\":\"unaffected\"}]}]}],\"metrics\":{\"cvssMetricV31\":[{\"source\":\"nvd@nist.gov\",\"type\":\"Primary\",\"cvssData\":{\"version\":\"3.1\",\"vectorString\":\"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H\",\"baseScore\":5.5,\"baseSeverity\":\"MEDIUM\",\"attackVector\":\"LOCAL\",\"attackComplexity\":\"LOW\",\"privilegesRequired\":\"LOW\",\"userInteraction\":\"NONE\",\"scope\":\"UNCHANGED\",\"confidentialityImpact\":\"NONE\",\"integrityImpact\":\"NONE\",\"availabilityImpact\":\"HIGH\"},\"exploitabilityScore\":1.8,\"impactScore\":3.6}]},\"weaknesses\":[{\"source\":\"nvd@nist.gov\",\"type\":\"Primary\",\"description\":[{\"lang\":\"en\",\"value\":\"NVD-CWE-noinfo\"}]}],\"configurations\":[{\"nodes\":[{\"operator\":\"OR\",\"negate\":false,\"cpeMatch\":[{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\",\"versionStartIncluding\":\"5.15.54\",\"versionEndExcluding\":\"5.15.79\",\"matchCriteriaId\":\"9AEAA12F-493B-4007-9A86-9989DAE460CE\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\",\"versionStartIncluding\":\"5.16\",\"versionEndExcluding\":\"6.0.9\",\"matchCriteriaId\":\"C3F26709-7D49-4AF0-8145-46CCF4E8E2AD\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:6.1:rc1:*:*:*:*:*:*\",\"matchCriteriaId\":\"E7E331DA-1FB0-4DEC-91AC-7DA69D461C11\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:6.1:rc2:*:*:*:*:*:*\",\"matchCriteriaId\":\"17F0B248-42CF-4AE6-A469-BB1BAE7F4705\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:6.1:rc3:*:*:*:*:*:*\",\"matchCriteriaId\":\"E2422816-0C14-4B5E-A1E6-A9D776E5C49B\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:6.1:rc4:*:*:*:*:*:*\",\"matchCriteriaId\":\"1C6E00FE-5FB9-4D20-A1A1-5A32128F9B76\"}]}]}],\"references\":[{\"url\":\"https://git.kernel.org/stable/c/0fca385d6ebc3cabb20f67bcf8a71f1448bdc001\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/bc6c127c377010f136360552ebf91c2723081c1b\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/c9fe4719c662e0af17eea723cf345e37719fd3c9\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]}]}}",
    "redhat_vex": {
      "aggregate_severity": "Moderate",
      "current_release_date": "2026-06-29T21:19:13+00:00",
      "cve": "CVE-2022-49849",
      "id": "CVE-2022-49849",
      "initial_release_date": "2022-01-01T00:00:00+00:00",
      "product_status:known_affected": "42",
      "product_status:known_not_affected": "232",
      "source": "Red Hat CSAF VEX",
      "status": "final",
      "title": "kernel: btrfs: fix match incorrectly in dev_args_match_device",
      "url": "https://security.access.redhat.com/data/csaf/v2/vex/2022/cve-2022-49849.json",
      "version": "3"
    },
    "suse_vex": {
      "aggregate_severity": "moderate",
      "current_release_date": "2026-07-23T02:27:39Z",
      "cve": "CVE-2022-49849",
      "id": "CVE-2022-49849",
      "initial_release_date": "2025-05-09T04:55:08Z",
      "product_status:known_not_affected": "397",
      "source": "SUSE CSAF VEX",
      "status": "interim",
      "title": "SUSE CVE CVE-2022-49849",
      "url": "https://ftp.suse.com/pub/projects/security/csaf-vex/cve-2022-49849.json",
      "version": "8"
    }
  }
}



Log in or create an account to share your comment.




Tags
Taxonomy of the tags.


Loading…

Loading…

Loading…

Forecast uses a logistic model when the trend is rising, or an exponential decay model when the trend is falling. Fitted via linearized least squares.

Sightings

Author Source Type Date Other

Nomenclature

  • Seen: The vulnerability was mentioned, discussed, or observed by the user.
  • Confirmed: The vulnerability has been validated from an analyst's perspective.
  • Published Proof of Concept: A public proof of concept is available for this vulnerability.
  • Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
  • Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
  • Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
  • Not confirmed: The user expressed doubt about the validity of the vulnerability.
  • Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.

Loading…

Detection rules are retrieved from Rulezet.

Loading…

Loading…

Loading…