cve-2021-46974
Vulnerability from cvelistv5
Published
2024-02-27 18:47
Modified
2024-12-19 07:32
Severity ?
Summary
In the Linux kernel, the following vulnerability has been resolved: bpf: Fix masking negation logic upon negative dst register The negation logic for the case where the off_reg is sitting in the dst register is not correct given then we cannot just invert the add to a sub or vice versa. As a fix, perform the final bitwise and-op unconditionally into AX from the off_reg, then move the pointer from the src to dst and finally use AX as the source for the original pointer arithmetic operation such that the inversion yields a correct result. The single non-AX mov in between is possible given constant blinding is retaining it as it's not an immediate based operation.
References
416baaa9-dc9f-4396-8d5f-8c081fb06d67https://git.kernel.org/stable/c/0e2dfdc74a7f4036127356d42ea59388f153f42cPatch
416baaa9-dc9f-4396-8d5f-8c081fb06d67https://git.kernel.org/stable/c/2cfa537674cd1051a3b8111536d77d0558f33d5dPatch
416baaa9-dc9f-4396-8d5f-8c081fb06d67https://git.kernel.org/stable/c/4d542ddb88fb2f39bf7f14caa2902f3e8d06f6baPatch
416baaa9-dc9f-4396-8d5f-8c081fb06d67https://git.kernel.org/stable/c/53e0db429b37a32b8fc706d0d90eb4583ad13848Patch
416baaa9-dc9f-4396-8d5f-8c081fb06d67https://git.kernel.org/stable/c/6eba92a4d4be8feb4dc33976abac544fa99d6eccPatch
416baaa9-dc9f-4396-8d5f-8c081fb06d67https://git.kernel.org/stable/c/7cf64d8679ca1cb20cf57d6a88bfee79a0922a66Patch
416baaa9-dc9f-4396-8d5f-8c081fb06d67https://git.kernel.org/stable/c/b9b34ddbe2076ade359cd5ce7537d5ed019e9807Patch
af854a3a-2127-422b-91ae-364da2661108https://git.kernel.org/stable/c/0e2dfdc74a7f4036127356d42ea59388f153f42cPatch
af854a3a-2127-422b-91ae-364da2661108https://git.kernel.org/stable/c/2cfa537674cd1051a3b8111536d77d0558f33d5dPatch
af854a3a-2127-422b-91ae-364da2661108https://git.kernel.org/stable/c/4d542ddb88fb2f39bf7f14caa2902f3e8d06f6baPatch
af854a3a-2127-422b-91ae-364da2661108https://git.kernel.org/stable/c/53e0db429b37a32b8fc706d0d90eb4583ad13848Patch
af854a3a-2127-422b-91ae-364da2661108https://git.kernel.org/stable/c/6eba92a4d4be8feb4dc33976abac544fa99d6eccPatch
af854a3a-2127-422b-91ae-364da2661108https://git.kernel.org/stable/c/7cf64d8679ca1cb20cf57d6a88bfee79a0922a66Patch
af854a3a-2127-422b-91ae-364da2661108https://git.kernel.org/stable/c/b9b34ddbe2076ade359cd5ce7537d5ed019e9807Patch
Impacted products
Vendor Product Version
Linux Linux Version: ae03b6b1c880a03d4771257336dc3bca156dd51b
Version: f92a819b4cbef8c9527d9797110544b2055a4b96
Version: 979d63d50c0c0f7bc537bf821e056cc9fe5abd38
Version: 979d63d50c0c0f7bc537bf821e056cc9fe5abd38
Version: 979d63d50c0c0f7bc537bf821e056cc9fe5abd38
Version: 979d63d50c0c0f7bc537bf821e056cc9fe5abd38
Version: 979d63d50c0c0f7bc537bf821e056cc9fe5abd38
Create a notification for this product.
   Linux Linux Version: 5.0
Create a notification for this product.
Show details on NVD website


{
  "containers": {
    "adp": [
      {
        "metrics": [
          {
            "other": {
              "content": {
                "id": "CVE-2021-46974",
                "options": [
                  {
                    "Exploitation": "none"
                  },
                  {
                    "Automatable": "no"
                  },
                  {
                    "Technical Impact": "partial"
                  }
                ],
                "role": "CISA Coordinator",
                "timestamp": "2024-03-05T16:32:03.243683Z",
                "version": "2.0.3"
              },
              "type": "ssvc"
            }
          }
        ],
        "providerMetadata": {
          "dateUpdated": "2024-06-04T17:13:10.865Z",
          "orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
          "shortName": "CISA-ADP"
        },
        "title": "CISA ADP Vulnrichment"
      },
      {
        "providerMetadata": {
          "dateUpdated": "2024-08-04T05:17:43.104Z",
          "orgId": "af854a3a-2127-422b-91ae-364da2661108",
          "shortName": "CVE"
        },
        "references": [
          {
            "tags": [
              "x_transferred"
            ],
            "url": "https://git.kernel.org/stable/c/4d542ddb88fb2f39bf7f14caa2902f3e8d06f6ba"
          },
          {
            "tags": [
              "x_transferred"
            ],
            "url": "https://git.kernel.org/stable/c/0e2dfdc74a7f4036127356d42ea59388f153f42c"
          },
          {
            "tags": [
              "x_transferred"
            ],
            "url": "https://git.kernel.org/stable/c/53e0db429b37a32b8fc706d0d90eb4583ad13848"
          },
          {
            "tags": [
              "x_transferred"
            ],
            "url": "https://git.kernel.org/stable/c/2cfa537674cd1051a3b8111536d77d0558f33d5d"
          },
          {
            "tags": [
              "x_transferred"
            ],
            "url": "https://git.kernel.org/stable/c/6eba92a4d4be8feb4dc33976abac544fa99d6ecc"
          },
          {
            "tags": [
              "x_transferred"
            ],
            "url": "https://git.kernel.org/stable/c/7cf64d8679ca1cb20cf57d6a88bfee79a0922a66"
          },
          {
            "tags": [
              "x_transferred"
            ],
            "url": "https://git.kernel.org/stable/c/b9b34ddbe2076ade359cd5ce7537d5ed019e9807"
          }
        ],
        "title": "CVE Program Container"
      }
    ],
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "product": "Linux",
          "programFiles": [
            "kernel/bpf/verifier.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "4d542ddb88fb2f39bf7f14caa2902f3e8d06f6ba",
              "status": "affected",
              "version": "ae03b6b1c880a03d4771257336dc3bca156dd51b",
              "versionType": "git"
            },
            {
              "lessThan": "0e2dfdc74a7f4036127356d42ea59388f153f42c",
              "status": "affected",
              "version": "f92a819b4cbef8c9527d9797110544b2055a4b96",
              "versionType": "git"
            },
            {
              "lessThan": "53e0db429b37a32b8fc706d0d90eb4583ad13848",
              "status": "affected",
              "version": "979d63d50c0c0f7bc537bf821e056cc9fe5abd38",
              "versionType": "git"
            },
            {
              "lessThan": "2cfa537674cd1051a3b8111536d77d0558f33d5d",
              "status": "affected",
              "version": "979d63d50c0c0f7bc537bf821e056cc9fe5abd38",
              "versionType": "git"
            },
            {
              "lessThan": "6eba92a4d4be8feb4dc33976abac544fa99d6ecc",
              "status": "affected",
              "version": "979d63d50c0c0f7bc537bf821e056cc9fe5abd38",
              "versionType": "git"
            },
            {
              "lessThan": "7cf64d8679ca1cb20cf57d6a88bfee79a0922a66",
              "status": "affected",
              "version": "979d63d50c0c0f7bc537bf821e056cc9fe5abd38",
              "versionType": "git"
            },
            {
              "lessThan": "b9b34ddbe2076ade359cd5ce7537d5ed019e9807",
              "status": "affected",
              "version": "979d63d50c0c0f7bc537bf821e056cc9fe5abd38",
              "versionType": "git"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "kernel/bpf/verifier.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "5.0"
            },
            {
              "lessThan": "5.0",
              "status": "unaffected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "4.14.*",
              "status": "unaffected",
              "version": "4.14.233",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "4.19.*",
              "status": "unaffected",
              "version": "4.19.190",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "5.4.*",
              "status": "unaffected",
              "version": "5.4.117",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "5.10.*",
              "status": "unaffected",
              "version": "5.10.35",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "5.11.*",
              "status": "unaffected",
              "version": "5.11.19",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "5.12.*",
              "status": "unaffected",
              "version": "5.12.2",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "*",
              "status": "unaffected",
              "version": "5.13",
              "versionType": "original_commit_for_fix"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nbpf: Fix masking negation logic upon negative dst register\n\nThe negation logic for the case where the off_reg is sitting in the\ndst register is not correct given then we cannot just invert the add\nto a sub or vice versa. As a fix, perform the final bitwise and-op\nunconditionally into AX from the off_reg, then move the pointer from\nthe src to dst and finally use AX as the source for the original\npointer arithmetic operation such that the inversion yields a correct\nresult. The single non-AX mov in between is possible given constant\nblinding is retaining it as it\u0027s not an immediate based operation."
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2024-12-19T07:32:51.644Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/4d542ddb88fb2f39bf7f14caa2902f3e8d06f6ba"
        },
        {
          "url": "https://git.kernel.org/stable/c/0e2dfdc74a7f4036127356d42ea59388f153f42c"
        },
        {
          "url": "https://git.kernel.org/stable/c/53e0db429b37a32b8fc706d0d90eb4583ad13848"
        },
        {
          "url": "https://git.kernel.org/stable/c/2cfa537674cd1051a3b8111536d77d0558f33d5d"
        },
        {
          "url": "https://git.kernel.org/stable/c/6eba92a4d4be8feb4dc33976abac544fa99d6ecc"
        },
        {
          "url": "https://git.kernel.org/stable/c/7cf64d8679ca1cb20cf57d6a88bfee79a0922a66"
        },
        {
          "url": "https://git.kernel.org/stable/c/b9b34ddbe2076ade359cd5ce7537d5ed019e9807"
        }
      ],
      "title": "bpf: Fix masking negation logic upon negative dst register",
      "x_generator": {
        "engine": "bippy-5f407fcff5a0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2021-46974",
    "datePublished": "2024-02-27T18:47:08.487Z",
    "dateReserved": "2024-02-27T18:42:55.944Z",
    "dateUpdated": "2024-12-19T07:32:51.644Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.1",
  "vulnerability-lookup:meta": {
    "nvd": "{\"cve\":{\"id\":\"CVE-2021-46974\",\"sourceIdentifier\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"published\":\"2024-02-27T19:04:07.500\",\"lastModified\":\"2025-01-09T15:00:55.557\",\"vulnStatus\":\"Analyzed\",\"cveTags\":[],\"descriptions\":[{\"lang\":\"en\",\"value\":\"In the Linux kernel, the following vulnerability has been resolved:\\n\\nbpf: Fix masking negation logic upon negative dst register\\n\\nThe negation logic for the case where the off_reg is sitting in the\\ndst register is not correct given then we cannot just invert the add\\nto a sub or vice versa. As a fix, perform the final bitwise and-op\\nunconditionally into AX from the off_reg, then move the pointer from\\nthe src to dst and finally use AX as the source for the original\\npointer arithmetic operation such that the inversion yields a correct\\nresult. The single non-AX mov in between is possible given constant\\nblinding is retaining it as it\u0027s not an immediate based operation.\"},{\"lang\":\"es\",\"value\":\"En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad: bpf: corrige la l\u00f3gica de negaci\u00f3n de enmascaramiento en el registro dst negativo. La l\u00f3gica de negaci\u00f3n para el caso en el que off_reg se encuentra en el registro dst no es correcta, dado que entonces no podemos simplemente invertir la adici\u00f3n a un sub o viceversa. Como soluci\u00f3n, realice la operaci\u00f3n final bit a bit incondicionalmente en AX desde off_reg, luego mueva el puntero de src a dst y finalmente use AX como fuente para la operaci\u00f3n aritm\u00e9tica del puntero original de modo que la inversi\u00f3n produzca un resultado correcto. El \u00fanico movimiento que no sea AX en el medio es posible dado que el cegamiento constante lo retiene, ya que no es una operaci\u00f3n inmediata.\"}],\"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\":\"4.14.113\",\"versionEndExcluding\":\"4.14.233\",\"matchCriteriaId\":\"BE106969-BFD9-4EE1-BE8A-85B52D1EF90B\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\",\"versionStartIncluding\":\"4.19.19\",\"versionEndExcluding\":\"4.19.190\",\"matchCriteriaId\":\"9D1FC2A9-9BE0-46AD-82B7-FF0DA332A405\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\",\"versionStartIncluding\":\"5.0\",\"versionEndExcluding\":\"5.4.117\",\"matchCriteriaId\":\"FD014948-DCFC-4A66-A12D-7E0BCB7957F2\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\",\"versionStartIncluding\":\"5.5\",\"versionEndExcluding\":\"5.10.35\",\"matchCriteriaId\":\"4CF5C6B5-56F0-4FA4-8D35-E62F982951FD\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\",\"versionStartIncluding\":\"5.11\",\"versionEndExcluding\":\"5.11.19\",\"matchCriteriaId\":\"491D6D53-3D80-40F9-8458-A0B83CCE0F64\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\",\"versionStartIncluding\":\"5.12\",\"versionEndExcluding\":\"5.12.2\",\"matchCriteriaId\":\"CD9444EF-C1C3-4896-897A-2F3A4C436567\"}]}]}],\"references\":[{\"url\":\"https://git.kernel.org/stable/c/0e2dfdc74a7f4036127356d42ea59388f153f42c\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/2cfa537674cd1051a3b8111536d77d0558f33d5d\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/4d542ddb88fb2f39bf7f14caa2902f3e8d06f6ba\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/53e0db429b37a32b8fc706d0d90eb4583ad13848\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/6eba92a4d4be8feb4dc33976abac544fa99d6ecc\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/7cf64d8679ca1cb20cf57d6a88bfee79a0922a66\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/b9b34ddbe2076ade359cd5ce7537d5ed019e9807\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/0e2dfdc74a7f4036127356d42ea59388f153f42c\",\"source\":\"af854a3a-2127-422b-91ae-364da2661108\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/2cfa537674cd1051a3b8111536d77d0558f33d5d\",\"source\":\"af854a3a-2127-422b-91ae-364da2661108\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/4d542ddb88fb2f39bf7f14caa2902f3e8d06f6ba\",\"source\":\"af854a3a-2127-422b-91ae-364da2661108\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/53e0db429b37a32b8fc706d0d90eb4583ad13848\",\"source\":\"af854a3a-2127-422b-91ae-364da2661108\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/6eba92a4d4be8feb4dc33976abac544fa99d6ecc\",\"source\":\"af854a3a-2127-422b-91ae-364da2661108\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/7cf64d8679ca1cb20cf57d6a88bfee79a0922a66\",\"source\":\"af854a3a-2127-422b-91ae-364da2661108\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/b9b34ddbe2076ade359cd5ce7537d5ed019e9807\",\"source\":\"af854a3a-2127-422b-91ae-364da2661108\",\"tags\":[\"Patch\"]}]}}",
    "vulnrichment": {
      "containers": "{\"adp\": [{\"title\": \"CVE Program Container\", \"references\": [{\"url\": \"https://git.kernel.org/stable/c/4d542ddb88fb2f39bf7f14caa2902f3e8d06f6ba\", \"tags\": [\"x_transferred\"]}, {\"url\": \"https://git.kernel.org/stable/c/0e2dfdc74a7f4036127356d42ea59388f153f42c\", \"tags\": [\"x_transferred\"]}, {\"url\": \"https://git.kernel.org/stable/c/53e0db429b37a32b8fc706d0d90eb4583ad13848\", \"tags\": [\"x_transferred\"]}, {\"url\": \"https://git.kernel.org/stable/c/2cfa537674cd1051a3b8111536d77d0558f33d5d\", \"tags\": [\"x_transferred\"]}, {\"url\": \"https://git.kernel.org/stable/c/6eba92a4d4be8feb4dc33976abac544fa99d6ecc\", \"tags\": [\"x_transferred\"]}, {\"url\": \"https://git.kernel.org/stable/c/7cf64d8679ca1cb20cf57d6a88bfee79a0922a66\", \"tags\": [\"x_transferred\"]}, {\"url\": \"https://git.kernel.org/stable/c/b9b34ddbe2076ade359cd5ce7537d5ed019e9807\", \"tags\": [\"x_transferred\"]}], \"providerMetadata\": {\"orgId\": \"af854a3a-2127-422b-91ae-364da2661108\", \"shortName\": \"CVE\", \"dateUpdated\": \"2024-08-04T05:17:43.104Z\"}}, {\"metrics\": [{\"other\": {\"type\": \"ssvc\", \"content\": {\"id\": \"CVE-2021-46974\", \"role\": \"CISA Coordinator\", \"options\": [{\"Exploitation\": \"none\"}, {\"Automatable\": \"no\"}, {\"Technical Impact\": \"partial\"}], \"version\": \"2.0.3\", \"timestamp\": \"2024-03-05T16:32:03.243683Z\"}}}], \"providerMetadata\": {\"orgId\": \"134c704f-9b21-4f2e-91b3-4a467353bcc0\", \"shortName\": \"CISA-ADP\", \"dateUpdated\": \"2024-05-23T19:01:15.410Z\"}, \"title\": \"CISA ADP Vulnrichment\"}], \"cna\": {\"title\": \"bpf: Fix masking negation logic upon negative dst register\", \"affected\": [{\"repo\": \"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\", \"vendor\": \"Linux\", \"product\": \"Linux\", \"versions\": [{\"status\": \"affected\", \"version\": \"ae03b6b1c880a03d4771257336dc3bca156dd51b\", \"lessThan\": \"4d542ddb88fb2f39bf7f14caa2902f3e8d06f6ba\", \"versionType\": \"git\"}, {\"status\": \"affected\", \"version\": \"f92a819b4cbef8c9527d9797110544b2055a4b96\", \"lessThan\": \"0e2dfdc74a7f4036127356d42ea59388f153f42c\", \"versionType\": \"git\"}, {\"status\": \"affected\", \"version\": \"979d63d50c0c0f7bc537bf821e056cc9fe5abd38\", \"lessThan\": \"53e0db429b37a32b8fc706d0d90eb4583ad13848\", \"versionType\": \"git\"}, {\"status\": \"affected\", \"version\": \"979d63d50c0c0f7bc537bf821e056cc9fe5abd38\", \"lessThan\": \"2cfa537674cd1051a3b8111536d77d0558f33d5d\", \"versionType\": \"git\"}, {\"status\": \"affected\", \"version\": \"979d63d50c0c0f7bc537bf821e056cc9fe5abd38\", \"lessThan\": \"6eba92a4d4be8feb4dc33976abac544fa99d6ecc\", \"versionType\": \"git\"}, {\"status\": \"affected\", \"version\": \"979d63d50c0c0f7bc537bf821e056cc9fe5abd38\", \"lessThan\": \"7cf64d8679ca1cb20cf57d6a88bfee79a0922a66\", \"versionType\": \"git\"}, {\"status\": \"affected\", \"version\": \"979d63d50c0c0f7bc537bf821e056cc9fe5abd38\", \"lessThan\": \"b9b34ddbe2076ade359cd5ce7537d5ed019e9807\", \"versionType\": \"git\"}], \"programFiles\": [\"kernel/bpf/verifier.c\"], \"defaultStatus\": \"unaffected\"}, {\"repo\": \"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\", \"vendor\": \"Linux\", \"product\": \"Linux\", \"versions\": [{\"status\": \"affected\", \"version\": \"5.0\"}, {\"status\": \"unaffected\", \"version\": \"0\", \"lessThan\": \"5.0\", \"versionType\": \"semver\"}, {\"status\": \"unaffected\", \"version\": \"4.14.233\", \"versionType\": \"semver\", \"lessThanOrEqual\": \"4.14.*\"}, {\"status\": \"unaffected\", \"version\": \"4.19.190\", \"versionType\": \"semver\", \"lessThanOrEqual\": \"4.19.*\"}, {\"status\": \"unaffected\", \"version\": \"5.4.117\", \"versionType\": \"semver\", \"lessThanOrEqual\": \"5.4.*\"}, {\"status\": \"unaffected\", \"version\": \"5.10.35\", \"versionType\": \"semver\", \"lessThanOrEqual\": \"5.10.*\"}, {\"status\": \"unaffected\", \"version\": \"5.11.19\", \"versionType\": \"semver\", \"lessThanOrEqual\": \"5.11.*\"}, {\"status\": \"unaffected\", \"version\": \"5.12.2\", \"versionType\": \"semver\", \"lessThanOrEqual\": \"5.12.*\"}, {\"status\": \"unaffected\", \"version\": \"5.13\", \"versionType\": \"original_commit_for_fix\", \"lessThanOrEqual\": \"*\"}], \"programFiles\": [\"kernel/bpf/verifier.c\"], \"defaultStatus\": \"affected\"}], \"references\": [{\"url\": \"https://git.kernel.org/stable/c/4d542ddb88fb2f39bf7f14caa2902f3e8d06f6ba\"}, {\"url\": \"https://git.kernel.org/stable/c/0e2dfdc74a7f4036127356d42ea59388f153f42c\"}, {\"url\": \"https://git.kernel.org/stable/c/53e0db429b37a32b8fc706d0d90eb4583ad13848\"}, {\"url\": \"https://git.kernel.org/stable/c/2cfa537674cd1051a3b8111536d77d0558f33d5d\"}, {\"url\": \"https://git.kernel.org/stable/c/6eba92a4d4be8feb4dc33976abac544fa99d6ecc\"}, {\"url\": \"https://git.kernel.org/stable/c/7cf64d8679ca1cb20cf57d6a88bfee79a0922a66\"}, {\"url\": \"https://git.kernel.org/stable/c/b9b34ddbe2076ade359cd5ce7537d5ed019e9807\"}], \"x_generator\": {\"engine\": \"bippy-5f407fcff5a0\"}, \"descriptions\": [{\"lang\": \"en\", \"value\": \"In the Linux kernel, the following vulnerability has been resolved:\\n\\nbpf: Fix masking negation logic upon negative dst register\\n\\nThe negation logic for the case where the off_reg is sitting in the\\ndst register is not correct given then we cannot just invert the add\\nto a sub or vice versa. As a fix, perform the final bitwise and-op\\nunconditionally into AX from the off_reg, then move the pointer from\\nthe src to dst and finally use AX as the source for the original\\npointer arithmetic operation such that the inversion yields a correct\\nresult. The single non-AX mov in between is possible given constant\\nblinding is retaining it as it\u0027s not an immediate based operation.\"}], \"providerMetadata\": {\"orgId\": \"416baaa9-dc9f-4396-8d5f-8c081fb06d67\", \"shortName\": \"Linux\", \"dateUpdated\": \"2024-12-19T07:32:51.644Z\"}}}",
      "cveMetadata": "{\"cveId\": \"CVE-2021-46974\", \"state\": \"PUBLISHED\", \"dateUpdated\": \"2024-12-19T07:32:51.644Z\", \"dateReserved\": \"2024-02-27T18:42:55.944Z\", \"assignerOrgId\": \"416baaa9-dc9f-4396-8d5f-8c081fb06d67\", \"datePublished\": \"2024-02-27T18:47:08.487Z\", \"assignerShortName\": \"Linux\"}",
      "dataType": "CVE_RECORD",
      "dataVersion": "5.1"
    }
  }
}


Log in or create an account to share your comment.




Tags
Taxonomy of the tags.


Loading…

Loading…

Loading…

Sightings

Author Source Type Date

Nomenclature

  • Seen: The vulnerability was mentioned, discussed, or seen somewhere by the user.
  • Confirmed: The vulnerability is confirmed from an analyst perspective.
  • Exploited: This vulnerability was exploited and seen by the user reporting the sighting.
  • Patched: This vulnerability was successfully patched by the user reporting the sighting.
  • Not exploited: This vulnerability was not exploited or seen by the user reporting the sighting.
  • Not confirmed: The user expresses doubt about the veracity of the vulnerability.
  • Not patched: This vulnerability was not successfully patched by the user reporting the sighting.