cve-2024-26871
Vulnerability from cvelistv5
Published
2024-04-17 10:27
Modified
2024-08-02 00:21
Severity
Summary
f2fs: fix NULL pointer dereference in f2fs_submit_page_write()
Impacted products
VendorProduct
LinuxLinux
LinuxLinux
Show details on NVD website


{
  "containers": {
    "adp": [
      {
        "metrics": [
          {
            "other": {
              "content": {
                "id": "CVE-2024-26871",
                "options": [
                  {
                    "Exploitation": "none"
                  },
                  {
                    "Automatable": "no"
                  },
                  {
                    "Technical Impact": "partial"
                  }
                ],
                "role": "CISA Coordinator",
                "timestamp": "2024-05-10T14:26:39.793680Z",
                "version": "2.0.3"
              },
              "type": "ssvc"
            }
          }
        ],
        "providerMetadata": {
          "dateUpdated": "2024-07-05T17:22:49.873Z",
          "orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
          "shortName": "CISA-ADP"
        },
        "title": "CISA ADP Vulnrichment"
      },
      {
        "providerMetadata": {
          "dateUpdated": "2024-08-02T00:21:04.190Z",
          "orgId": "af854a3a-2127-422b-91ae-364da2661108",
          "shortName": "CVE"
        },
        "references": [
          {
            "tags": [
              "x_transferred"
            ],
            "url": "https://git.kernel.org/stable/c/8e2ea8b04cb8d976110c4568509e67d6a39b2889"
          },
          {
            "tags": [
              "x_transferred"
            ],
            "url": "https://git.kernel.org/stable/c/4c122a32582b67bdd44ca8d25f894ee2dc54f566"
          },
          {
            "tags": [
              "x_transferred"
            ],
            "url": "https://git.kernel.org/stable/c/6d102382a11d5e6035f6c98f6e508a38541f7af3"
          },
          {
            "tags": [
              "x_transferred"
            ],
            "url": "https://git.kernel.org/stable/c/c2034ef6192a65a986a45c2aa2ed05824fdc0e9f"
          }
        ],
        "title": "CVE Program Container"
      }
    ],
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "product": "Linux",
          "programFiles": [
            "fs/f2fs/data.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "8e2ea8b04cb8",
              "status": "affected",
              "version": "e067dc3c6b9c",
              "versionType": "git"
            },
            {
              "lessThan": "4c122a32582b",
              "status": "affected",
              "version": "e067dc3c6b9c",
              "versionType": "git"
            },
            {
              "lessThan": "6d102382a11d",
              "status": "affected",
              "version": "e067dc3c6b9c",
              "versionType": "git"
            },
            {
              "lessThan": "c2034ef6192a",
              "status": "affected",
              "version": "e067dc3c6b9c",
              "versionType": "git"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "fs/f2fs/data.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "6.5"
            },
            {
              "lessThan": "6.5",
              "status": "unaffected",
              "version": "0",
              "versionType": "custom"
            },
            {
              "lessThanOrEqual": "6.6.*",
              "status": "unaffected",
              "version": "6.6.23",
              "versionType": "custom"
            },
            {
              "lessThanOrEqual": "6.7.*",
              "status": "unaffected",
              "version": "6.7.11",
              "versionType": "custom"
            },
            {
              "lessThanOrEqual": "6.8.*",
              "status": "unaffected",
              "version": "6.8.2",
              "versionType": "custom"
            },
            {
              "lessThanOrEqual": "*",
              "status": "unaffected",
              "version": "6.9",
              "versionType": "original_commit_for_fix"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nf2fs: fix NULL pointer dereference in f2fs_submit_page_write()\n\nBUG: kernel NULL pointer dereference, address: 0000000000000014\nRIP: 0010:f2fs_submit_page_write+0x6cf/0x780 [f2fs]\nCall Trace:\n\u003cTASK\u003e\n? show_regs+0x6e/0x80\n? __die+0x29/0x70\n? page_fault_oops+0x154/0x4a0\n? prb_read_valid+0x20/0x30\n? __irq_work_queue_local+0x39/0xd0\n? irq_work_queue+0x36/0x70\n? do_user_addr_fault+0x314/0x6c0\n? exc_page_fault+0x7d/0x190\n? asm_exc_page_fault+0x2b/0x30\n? f2fs_submit_page_write+0x6cf/0x780 [f2fs]\n? f2fs_submit_page_write+0x736/0x780 [f2fs]\ndo_write_page+0x50/0x170 [f2fs]\nf2fs_outplace_write_data+0x61/0xb0 [f2fs]\nf2fs_do_write_data_page+0x3f8/0x660 [f2fs]\nf2fs_write_single_data_page+0x5bb/0x7a0 [f2fs]\nf2fs_write_cache_pages+0x3da/0xbe0 [f2fs]\n...\nIt is possible that other threads have added this fio to io-\u003ebio\nand submitted the io-\u003ebio before entering f2fs_submit_page_write().\nAt this point io-\u003ebio = NULL.\nIf is_end_zone_blkaddr(sbi, fio-\u003enew_blkaddr) of this fio is true,\nthen an NULL pointer dereference error occurs at bio_get(io-\u003ebio).\nThe original code for determining zone end was after \"out:\",\nwhich would have missed some fio who is zone end. I\u0027ve moved\n this code before \"skip:\" to make sure it\u0027s done for each fio."
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2024-05-29T05:24:13.342Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/8e2ea8b04cb8d976110c4568509e67d6a39b2889"
        },
        {
          "url": "https://git.kernel.org/stable/c/4c122a32582b67bdd44ca8d25f894ee2dc54f566"
        },
        {
          "url": "https://git.kernel.org/stable/c/6d102382a11d5e6035f6c98f6e508a38541f7af3"
        },
        {
          "url": "https://git.kernel.org/stable/c/c2034ef6192a65a986a45c2aa2ed05824fdc0e9f"
        }
      ],
      "title": "f2fs: fix NULL pointer dereference in f2fs_submit_page_write()",
      "x_generator": {
        "engine": "bippy-a5840b7849dd"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2024-26871",
    "datePublished": "2024-04-17T10:27:31.396Z",
    "dateReserved": "2024-02-19T14:20:24.184Z",
    "dateUpdated": "2024-08-02T00:21:04.190Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.1",
  "meta": {
    "nvd": "{\"cve\":{\"id\":\"CVE-2024-26871\",\"sourceIdentifier\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"published\":\"2024-04-17T11:15:09.513\",\"lastModified\":\"2024-04-17T12:48:07.510\",\"vulnStatus\":\"Awaiting Analysis\",\"descriptions\":[{\"lang\":\"en\",\"value\":\"In the Linux kernel, the following vulnerability has been resolved:\\n\\nf2fs: fix NULL pointer dereference in f2fs_submit_page_write()\\n\\nBUG: kernel NULL pointer dereference, address: 0000000000000014\\nRIP: 0010:f2fs_submit_page_write+0x6cf/0x780 [f2fs]\\nCall Trace:\\n\u003cTASK\u003e\\n? show_regs+0x6e/0x80\\n? __die+0x29/0x70\\n? page_fault_oops+0x154/0x4a0\\n? prb_read_valid+0x20/0x30\\n? __irq_work_queue_local+0x39/0xd0\\n? irq_work_queue+0x36/0x70\\n? do_user_addr_fault+0x314/0x6c0\\n? exc_page_fault+0x7d/0x190\\n? asm_exc_page_fault+0x2b/0x30\\n? f2fs_submit_page_write+0x6cf/0x780 [f2fs]\\n? f2fs_submit_page_write+0x736/0x780 [f2fs]\\ndo_write_page+0x50/0x170 [f2fs]\\nf2fs_outplace_write_data+0x61/0xb0 [f2fs]\\nf2fs_do_write_data_page+0x3f8/0x660 [f2fs]\\nf2fs_write_single_data_page+0x5bb/0x7a0 [f2fs]\\nf2fs_write_cache_pages+0x3da/0xbe0 [f2fs]\\n...\\nIt is possible that other threads have added this fio to io-\u003ebio\\nand submitted the io-\u003ebio before entering f2fs_submit_page_write().\\nAt this point io-\u003ebio = NULL.\\nIf is_end_zone_blkaddr(sbi, fio-\u003enew_blkaddr) of this fio is true,\\nthen an NULL pointer dereference error occurs at bio_get(io-\u003ebio).\\nThe original code for determining zone end was after \\\"out:\\\",\\nwhich would have missed some fio who is zone end. I\u0027ve moved\\n this code before \\\"skip:\\\" to make sure it\u0027s done for each fio.\"},{\"lang\":\"es\",\"value\":\"En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad: f2fs: corrige la desreferencia del puntero NULL en f2fs_submit_page_write() ERROR: desreferencia del puntero NULL del kernel, direcci\u00f3n: 0000000000000014 RIP: 0010:f2fs_submit_page_write+0x6cf/0x780 [f2fs] Seguimiento de llamadas:  ? show_regs+0x6e/0x80? __morir+0x29/0x70 ? page_fault_oops+0x154/0x4a0? prb_read_valid+0x20/0x30? __irq_work_queue_local+0x39/0xd0 ? irq_work_queue+0x36/0x70? do_user_addr_fault+0x314/0x6c0? exc_page_fault+0x7d/0x190? asm_exc_page_fault+0x2b/0x30? f2fs_submit_page_write+0x6cf/0x780 [f2fs] ? f2fs_submit_page_write+0x736/0x780 [f2fs] do_write_page+0x50/0x170 [f2fs] f2fs_outplace_write_data+0x61/0xb0 [f2fs] f2fs_do_write_data_page+0x3f8/0x660 [f2fs] f2fs_write_single_data_page+0 x5bb/0x7a0 [f2fs] f2fs_write_cache_pages+0x3da/0xbe0 [f2fs] .. Es posible que otros hilos hayan agregado este fio a io-\u0026gt;bio y hayan enviado el io-\u0026gt;bio antes de ingresar a f2fs_submit_page_write(). En este punto io-\u0026gt;bio = NULL. Si is_end_zone_blkaddr(sbi, fio-\u0026gt;new_blkaddr) de este fio es verdadero, entonces se produce un error de desreferencia de puntero NULL en bio_get(io-\u0026gt;bio). El c\u00f3digo original para determinar el final de la zona estaba despu\u00e9s de \\\"out:\\\", lo que habr\u00eda pasado por alto a alg\u00fan fio que es el final de la zona. Mov\u00ed este c\u00f3digo antes de \\\"omitir:\\\" para asegurarme de que est\u00e9 hecho para cada fio.\"}],\"metrics\":{},\"references\":[{\"url\":\"https://git.kernel.org/stable/c/4c122a32582b67bdd44ca8d25f894ee2dc54f566\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/6d102382a11d5e6035f6c98f6e508a38541f7af3\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/8e2ea8b04cb8d976110c4568509e67d6a39b2889\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/c2034ef6192a65a986a45c2aa2ed05824fdc0e9f\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"}]}}"
  }
}


Log in or create an account to share your comment.




Tags
Taxonomy of the tags.


Loading...

Loading...