CVE-2023-53549 (GCVE-0-2023-53549)
Vulnerability from cvelistv5
Published
2025-10-04 15:16
Modified
2025-10-04 15:16
Severity ?
Summary
In the Linux kernel, the following vulnerability has been resolved: netfilter: ipset: Rework long task execution when adding/deleting entries When adding/deleting large number of elements in one step in ipset, it can take a reasonable amount of time and can result in soft lockup errors. The patch 5f7b51bf09ba ("netfilter: ipset: Limit the maximal range of consecutive elements to add/delete") tried to fix it by limiting the max elements to process at all. However it was not enough, it is still possible that we get hung tasks. Lowering the limit is not reasonable, so the approach in this patch is as follows: rely on the method used at resizing sets and save the state when we reach a smaller internal batch limit, unlock/lock and proceed from the saved state. Thus we can avoid long continuous tasks and at the same time removed the limit to add/delete large number of elements in one step. The nfnl mutex is held during the whole operation which prevents one to issue other ipset commands in parallel.
Impacted products
Vendor Product Version
Linux Linux Version: e62e62ea912a49f7230620f1bdc20410b943a44c
Version: 5f7b51bf09baca8e4f80cbe879536842bafb5f31
Version: 5f7b51bf09baca8e4f80cbe879536842bafb5f31
Version: 5f7b51bf09baca8e4f80cbe879536842bafb5f31
Version: 5f7b51bf09baca8e4f80cbe879536842bafb5f31
Version: e0f824abe0f412f769fb5468b36c2471430bd885
Create a notification for this product.
Show details on NVD website


{
  "containers": {
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "product": "Linux",
          "programFiles": [
            "include/linux/netfilter/ipset/ip_set.h",
            "net/netfilter/ipset/ip_set_core.c",
            "net/netfilter/ipset/ip_set_hash_ip.c",
            "net/netfilter/ipset/ip_set_hash_ipmark.c",
            "net/netfilter/ipset/ip_set_hash_ipport.c",
            "net/netfilter/ipset/ip_set_hash_ipportip.c",
            "net/netfilter/ipset/ip_set_hash_ipportnet.c",
            "net/netfilter/ipset/ip_set_hash_net.c",
            "net/netfilter/ipset/ip_set_hash_netiface.c",
            "net/netfilter/ipset/ip_set_hash_netnet.c",
            "net/netfilter/ipset/ip_set_hash_netport.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "ee756980e491c829ba0495bb420b7224a9ee26b2",
              "status": "affected",
              "version": "e62e62ea912a49f7230620f1bdc20410b943a44c",
              "versionType": "git"
            },
            {
              "lessThan": "a1e1521b463968b4eca7163f61fb6cc54d008061",
              "status": "affected",
              "version": "5f7b51bf09baca8e4f80cbe879536842bafb5f31",
              "versionType": "git"
            },
            {
              "lessThan": "24a828f5a54bdeca0846526860d72b3766c5fe95",
              "status": "affected",
              "version": "5f7b51bf09baca8e4f80cbe879536842bafb5f31",
              "versionType": "git"
            },
            {
              "lessThan": "8964cc36ba011dc0e1041131fa2e91fb4c2a811b",
              "status": "affected",
              "version": "5f7b51bf09baca8e4f80cbe879536842bafb5f31",
              "versionType": "git"
            },
            {
              "lessThan": "5e29dc36bd5e2166b834ceb19990d9e68a734d7d",
              "status": "affected",
              "version": "5f7b51bf09baca8e4f80cbe879536842bafb5f31",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "e0f824abe0f412f769fb5468b36c2471430bd885",
              "versionType": "git"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "include/linux/netfilter/ipset/ip_set.h",
            "net/netfilter/ipset/ip_set_core.c",
            "net/netfilter/ipset/ip_set_hash_ip.c",
            "net/netfilter/ipset/ip_set_hash_ipmark.c",
            "net/netfilter/ipset/ip_set_hash_ipport.c",
            "net/netfilter/ipset/ip_set_hash_ipportip.c",
            "net/netfilter/ipset/ip_set_hash_ipportnet.c",
            "net/netfilter/ipset/ip_set_hash_net.c",
            "net/netfilter/ipset/ip_set_hash_netiface.c",
            "net/netfilter/ipset/ip_set_hash_netnet.c",
            "net/netfilter/ipset/ip_set_hash_netport.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "5.14"
            },
            {
              "lessThan": "5.14",
              "status": "unaffected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "5.10.*",
              "status": "unaffected",
              "version": "5.10.163",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "5.15.*",
              "status": "unaffected",
              "version": "5.15.87",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.0.*",
              "status": "unaffected",
              "version": "6.0.19",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.1.*",
              "status": "unaffected",
              "version": "6.1.5",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "*",
              "status": "unaffected",
              "version": "6.2",
              "versionType": "original_commit_for_fix"
            }
          ]
        }
      ],
      "cpeApplicability": [
        {
          "nodes": [
            {
              "cpeMatch": [
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "5.10.163",
                  "versionStartIncluding": "5.10.157",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "5.15.87",
                  "versionStartIncluding": "5.14",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.0.19",
                  "versionStartIncluding": "5.14",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.1.5",
                  "versionStartIncluding": "5.14",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.2",
                  "versionStartIncluding": "5.14",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionStartIncluding": "5.13.14",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nnetfilter: ipset: Rework long task execution when adding/deleting entries\n\nWhen adding/deleting large number of elements in one step in ipset, it can\ntake a reasonable amount of time and can result in soft lockup errors. The\npatch 5f7b51bf09ba (\"netfilter: ipset: Limit the maximal range of\nconsecutive elements to add/delete\") tried to fix it by limiting the max\nelements to process at all. However it was not enough, it is still possible\nthat we get hung tasks. Lowering the limit is not reasonable, so the\napproach in this patch is as follows: rely on the method used at resizing\nsets and save the state when we reach a smaller internal batch limit,\nunlock/lock and proceed from the saved state. Thus we can avoid long\ncontinuous tasks and at the same time removed the limit to add/delete large\nnumber of elements in one step.\n\nThe nfnl mutex is held during the whole operation which prevents one to\nissue other ipset commands in parallel."
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2025-10-04T15:16:56.382Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/ee756980e491c829ba0495bb420b7224a9ee26b2"
        },
        {
          "url": "https://git.kernel.org/stable/c/a1e1521b463968b4eca7163f61fb6cc54d008061"
        },
        {
          "url": "https://git.kernel.org/stable/c/24a828f5a54bdeca0846526860d72b3766c5fe95"
        },
        {
          "url": "https://git.kernel.org/stable/c/8964cc36ba011dc0e1041131fa2e91fb4c2a811b"
        },
        {
          "url": "https://git.kernel.org/stable/c/5e29dc36bd5e2166b834ceb19990d9e68a734d7d"
        }
      ],
      "title": "netfilter: ipset: Rework long task execution when adding/deleting entries",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2023-53549",
    "datePublished": "2025-10-04T15:16:56.382Z",
    "dateReserved": "2025-10-04T15:14:15.922Z",
    "dateUpdated": "2025-10-04T15:16:56.382Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.1",
  "vulnerability-lookup:meta": {
    "nvd": "{\"cve\":{\"id\":\"CVE-2023-53549\",\"sourceIdentifier\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"published\":\"2025-10-04T16:15:50.143\",\"lastModified\":\"2025-10-06T14:56:21.733\",\"vulnStatus\":\"Awaiting Analysis\",\"cveTags\":[],\"descriptions\":[{\"lang\":\"en\",\"value\":\"In the Linux kernel, the following vulnerability has been resolved:\\n\\nnetfilter: ipset: Rework long task execution when adding/deleting entries\\n\\nWhen adding/deleting large number of elements in one step in ipset, it can\\ntake a reasonable amount of time and can result in soft lockup errors. The\\npatch 5f7b51bf09ba (\\\"netfilter: ipset: Limit the maximal range of\\nconsecutive elements to add/delete\\\") tried to fix it by limiting the max\\nelements to process at all. However it was not enough, it is still possible\\nthat we get hung tasks. Lowering the limit is not reasonable, so the\\napproach in this patch is as follows: rely on the method used at resizing\\nsets and save the state when we reach a smaller internal batch limit,\\nunlock/lock and proceed from the saved state. Thus we can avoid long\\ncontinuous tasks and at the same time removed the limit to add/delete large\\nnumber of elements in one step.\\n\\nThe nfnl mutex is held during the whole operation which prevents one to\\nissue other ipset commands in parallel.\"}],\"metrics\":{},\"references\":[{\"url\":\"https://git.kernel.org/stable/c/24a828f5a54bdeca0846526860d72b3766c5fe95\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/5e29dc36bd5e2166b834ceb19990d9e68a734d7d\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/8964cc36ba011dc0e1041131fa2e91fb4c2a811b\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/a1e1521b463968b4eca7163f61fb6cc54d008061\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/ee756980e491c829ba0495bb420b7224a9ee26b2\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"}]}}"
  }
}


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.
  • Published Proof of Concept: A public proof of concept is available for this vulnerability.
  • 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.


Loading…

Loading…