{
  "document": {
    "aggregate_severity": {
      "text": "Medium"
    },
    "category": "csaf_vex",
    "csaf_version": "2.0",
    "distribution": {
      "text": "TuxCare License Agreement",
      "tlp": {
        "label": "WHITE",
        "url": "https://www.first.org/tlp/"
      }
    },
    "lang": "en",
    "notes": [
      {
        "category": "legal_disclaimer",
        "text": "This content is licensed under the Creative Commons Attribution 4.0 International License (https://creativecommons.org/licenses/by/4.0/). If you distribute this content, or a modified version of it, you must provide attribution to Cloud Linux Inc. and provide a link to the original.",
        "title": "Terms of Use"
      }
    ],
    "publisher": {
      "category": "vendor",
      "contact_details": "https://tuxcare.com/contact/",
      "name": "TuxCare",
      "namespace": "https://tuxcare.com/"
    },
    "references": [
      {
        "category": "self",
        "summary": "Canonical URL",
        "url": "https://security.tuxcare.com/csaf/v2/els_os/debian10els/vex/2026/cve-2026-31415-els_os-debian10els.json"
      }
    ],
    "tracking": {
      "current_release_date": "2026-08-25T12:52:47Z",
      "generator": {
        "date": "2026-08-25T12:52:47Z",
        "engine": {
          "name": "pyCSAF"
        }
      },
      "id": "CVE-2026-31415-ELS_OS-DEBIAN10ELS",
      "initial_release_date": "2026-04-13T14:16:00Z",
      "revision_history": [
        {
          "date": "2026-04-13T14:16:00Z",
          "number": "1",
          "summary": "Initial version"
        },
        {
          "date": "2026-08-25T12:52:47Z",
          "number": "2",
          "summary": "Official Publication"
        }
      ],
      "status": "final",
      "version": "2"
    },
    "title": "Security update on CVE-2026-31415"
  },
  "product_tree": {
    "branches": [
      {
        "branches": [
          {
            "branches": [
              {
                "category": "product_name",
                "name": "Debian 10",
                "product": {
                  "name": "Debian 10",
                  "product_id": "Debian-10",
                  "product_identification_helper": {
                    "cpe": "cpe:2.3:o:debian:debian_linux:10:*:*:*:*:*:*:*"
                  }
                }
              }
            ],
            "category": "product_family",
            "name": "Debian"
          }
        ],
        "category": "vendor",
        "name": "Software in the Public Interest, Inc."
      },
      {
        "branches": [
          {
            "branches": [
              {
                "category": "product_version",
                "name": "linux-headers-4.19.0-28-all-amd64-0:4.19.325-1+tuxcare.els1.amd64",
                "product": {
                  "name": "linux-headers-4.19.0-28-all-amd64-0:4.19.325-1+tuxcare.els1.amd64",
                  "product_id": "linux-headers-4.19.0-28-all-amd64-0:4.19.325-1+tuxcare.els1.amd64",
                  "product_identification_helper": {
                    "purl": "pkg:deb/tuxcare/linux-headers-4.19.0-28-all-amd64@4.19.325-1%2Btuxcare.els1?arch=amd64"
                  }
                }
              },
              {
                "category": "product_version",
                "name": "linux-libc-dev-0:4.19.325-1+tuxcare.els1.amd64",
                "product": {
                  "name": "linux-libc-dev-0:4.19.325-1+tuxcare.els1.amd64",
                  "product_id": "linux-libc-dev-0:4.19.325-1+tuxcare.els1.amd64",
                  "product_identification_helper": {
                    "purl": "pkg:deb/tuxcare/linux-libc-dev@4.19.325-1%2Btuxcare.els1?arch=amd64"
                  }
                }
              },
              {
                "category": "product_version",
                "name": "libcpupower1-0:4.19.325-1+tuxcare.els1.amd64",
                "product": {
                  "name": "libcpupower1-0:4.19.325-1+tuxcare.els1.amd64",
                  "product_id": "libcpupower1-0:4.19.325-1+tuxcare.els1.amd64",
                  "product_identification_helper": {
                    "purl": "pkg:deb/tuxcare/libcpupower1@4.19.325-1%2Btuxcare.els1?arch=amd64"
                  }
                }
              },
              {
                "category": "product_version",
                "name": "libcpupower-dev-0:4.19.325-1+tuxcare.els1.amd64",
                "product": {
                  "name": "libcpupower-dev-0:4.19.325-1+tuxcare.els1.amd64",
                  "product_id": "libcpupower-dev-0:4.19.325-1+tuxcare.els1.amd64",
                  "product_identification_helper": {
                    "purl": "pkg:deb/tuxcare/libcpupower-dev@4.19.325-1%2Btuxcare.els1?arch=amd64"
                  }
                }
              },
              {
                "category": "product_version",
                "name": "libbpf-dev-0:4.19.325-1+tuxcare.els1.amd64",
                "product": {
                  "name": "libbpf-dev-0:4.19.325-1+tuxcare.els1.amd64",
                  "product_id": "libbpf-dev-0:4.19.325-1+tuxcare.els1.amd64",
                  "product_identification_helper": {
                    "purl": "pkg:deb/tuxcare/libbpf-dev@4.19.325-1%2Btuxcare.els1?arch=amd64"
                  }
                }
              },
              {
                "category": "product_version",
                "name": "linux-perf-4.19-0:4.19.325-1+tuxcare.els1.amd64",
                "product": {
                  "name": "linux-perf-4.19-0:4.19.325-1+tuxcare.els1.amd64",
                  "product_id": "linux-perf-4.19-0:4.19.325-1+tuxcare.els1.amd64",
                  "product_identification_helper": {
                    "purl": "pkg:deb/tuxcare/linux-perf-4.19@4.19.325-1%2Btuxcare.els1?arch=amd64"
                  }
                }
              },
              {
                "category": "product_version",
                "name": "linux-config-4.19-0:4.19.325-1+tuxcare.els1.amd64",
                "product": {
                  "name": "linux-config-4.19-0:4.19.325-1+tuxcare.els1.amd64",
                  "product_id": "linux-config-4.19-0:4.19.325-1+tuxcare.els1.amd64",
                  "product_identification_helper": {
                    "purl": "pkg:deb/tuxcare/linux-config-4.19@4.19.325-1%2Btuxcare.els1?arch=amd64"
                  }
                }
              },
              {
                "category": "product_version",
                "name": "linux-kbuild-4.19-0:4.19.325-1+tuxcare.els1.amd64",
                "product": {
                  "name": "linux-kbuild-4.19-0:4.19.325-1+tuxcare.els1.amd64",
                  "product_id": "linux-kbuild-4.19-0:4.19.325-1+tuxcare.els1.amd64",
                  "product_identification_helper": {
                    "purl": "pkg:deb/tuxcare/linux-kbuild-4.19@4.19.325-1%2Btuxcare.els1?arch=amd64"
                  }
                }
              },
              {
                "category": "product_version",
                "name": "libbpf4.19-0:4.19.325-1+tuxcare.els1.amd64",
                "product": {
                  "name": "libbpf4.19-0:4.19.325-1+tuxcare.els1.amd64",
                  "product_id": "libbpf4.19-0:4.19.325-1+tuxcare.els1.amd64",
                  "product_identification_helper": {
                    "purl": "pkg:deb/tuxcare/libbpf4.19@4.19.325-1%2Btuxcare.els1?arch=amd64"
                  }
                }
              },
              {
                "category": "product_version",
                "name": "linux-compiler-gcc-8-x86-0:4.19.325-1+tuxcare.els1.amd64",
                "product": {
                  "name": "linux-compiler-gcc-8-x86-0:4.19.325-1+tuxcare.els1.amd64",
                  "product_id": "linux-compiler-gcc-8-x86-0:4.19.325-1+tuxcare.els1.amd64",
                  "product_identification_helper": {
                    "purl": "pkg:deb/tuxcare/linux-compiler-gcc-8-x86@4.19.325-1%2Btuxcare.els1?arch=amd64"
                  }
                }
              },
              {
                "category": "product_version",
                "name": "linux-headers-4.19.0-28-all-0:4.19.325-1+tuxcare.els1.amd64",
                "product": {
                  "name": "linux-headers-4.19.0-28-all-0:4.19.325-1+tuxcare.els1.amd64",
                  "product_id": "linux-headers-4.19.0-28-all-0:4.19.325-1+tuxcare.els1.amd64",
                  "product_identification_helper": {
                    "purl": "pkg:deb/tuxcare/linux-headers-4.19.0-28-all@4.19.325-1%2Btuxcare.els1?arch=amd64"
                  }
                }
              },
              {
                "category": "product_version",
                "name": "linux-image-amd64-signed-template-0:4.19.325-1+tuxcare.els1.amd64",
                "product": {
                  "name": "linux-image-amd64-signed-template-0:4.19.325-1+tuxcare.els1.amd64",
                  "product_id": "linux-image-amd64-signed-template-0:4.19.325-1+tuxcare.els1.amd64",
                  "product_identification_helper": {
                    "purl": "pkg:deb/tuxcare/linux-image-amd64-signed-template@4.19.325-1%2Btuxcare.els1?arch=amd64"
                  }
                }
              },
              {
                "category": "product_version",
                "name": "linux-cpupower-0:4.19.325-1+tuxcare.els1.amd64",
                "product": {
                  "name": "linux-cpupower-0:4.19.325-1+tuxcare.els1.amd64",
                  "product_id": "linux-cpupower-0:4.19.325-1+tuxcare.els1.amd64",
                  "product_identification_helper": {
                    "purl": "pkg:deb/tuxcare/linux-cpupower@4.19.325-1%2Btuxcare.els1?arch=amd64"
                  }
                }
              },
              {
                "category": "product_version",
                "name": "linux-headers-4.19.0-28-amd64-0:4.19.325-1+tuxcare.els1.amd64",
                "product": {
                  "name": "linux-headers-4.19.0-28-amd64-0:4.19.325-1+tuxcare.els1.amd64",
                  "product_id": "linux-headers-4.19.0-28-amd64-0:4.19.325-1+tuxcare.els1.amd64",
                  "product_identification_helper": {
                    "purl": "pkg:deb/tuxcare/linux-headers-4.19.0-28-amd64@4.19.325-1%2Btuxcare.els1?arch=amd64"
                  }
                }
              },
              {
                "category": "product_version",
                "name": "hyperv-daemons-0:4.19.325-1+tuxcare.els1.amd64",
                "product": {
                  "name": "hyperv-daemons-0:4.19.325-1+tuxcare.els1.amd64",
                  "product_id": "hyperv-daemons-0:4.19.325-1+tuxcare.els1.amd64",
                  "product_identification_helper": {
                    "purl": "pkg:deb/tuxcare/hyperv-daemons@4.19.325-1%2Btuxcare.els1?arch=amd64"
                  }
                }
              },
              {
                "category": "product_version",
                "name": "linux-image-4.19.0-28-amd64-unsigned-0:4.19.325-1+tuxcare.els1.amd64",
                "product": {
                  "name": "linux-image-4.19.0-28-amd64-unsigned-0:4.19.325-1+tuxcare.els1.amd64",
                  "product_id": "linux-image-4.19.0-28-amd64-unsigned-0:4.19.325-1+tuxcare.els1.amd64",
                  "product_identification_helper": {
                    "purl": "pkg:deb/tuxcare/linux-image-4.19.0-28-amd64-unsigned@4.19.325-1%2Btuxcare.els1?arch=amd64"
                  }
                }
              }
            ],
            "category": "architecture",
            "name": "amd64"
          },
          {
            "branches": [
              {
                "category": "product_version",
                "name": "linux-doc-4.19-0:4.19.325-1+tuxcare.els1.all",
                "product": {
                  "name": "linux-doc-4.19-0:4.19.325-1+tuxcare.els1.all",
                  "product_id": "linux-doc-4.19-0:4.19.325-1+tuxcare.els1.all",
                  "product_identification_helper": {
                    "purl": "pkg:deb/tuxcare/linux-doc-4.19@4.19.325-1%2Btuxcare.els1?arch=all"
                  }
                }
              },
              {
                "category": "product_version",
                "name": "linux-support-4.19.0-28-0:4.19.325-1+tuxcare.els1.all",
                "product": {
                  "name": "linux-support-4.19.0-28-0:4.19.325-1+tuxcare.els1.all",
                  "product_id": "linux-support-4.19.0-28-0:4.19.325-1+tuxcare.els1.all",
                  "product_identification_helper": {
                    "purl": "pkg:deb/tuxcare/linux-support-4.19.0-28@4.19.325-1%2Btuxcare.els1?arch=all"
                  }
                }
              },
              {
                "category": "product_version",
                "name": "linux-source-4.19-0:4.19.325-1+tuxcare.els1.all",
                "product": {
                  "name": "linux-source-4.19-0:4.19.325-1+tuxcare.els1.all",
                  "product_id": "linux-source-4.19-0:4.19.325-1+tuxcare.els1.all",
                  "product_identification_helper": {
                    "purl": "pkg:deb/tuxcare/linux-source-4.19@4.19.325-1%2Btuxcare.els1?arch=all"
                  }
                }
              },
              {
                "category": "product_version",
                "name": "linux-headers-4.19.0-28-common-0:4.19.325-1+tuxcare.els1.all",
                "product": {
                  "name": "linux-headers-4.19.0-28-common-0:4.19.325-1+tuxcare.els1.all",
                  "product_id": "linux-headers-4.19.0-28-common-0:4.19.325-1+tuxcare.els1.all",
                  "product_identification_helper": {
                    "purl": "pkg:deb/tuxcare/linux-headers-4.19.0-28-common@4.19.325-1%2Btuxcare.els1?arch=all"
                  }
                }
              }
            ],
            "category": "architecture",
            "name": "all"
          }
        ],
        "category": "vendor",
        "name": "TuxCare"
      }
    ],
    "relationships": [
      {
        "category": "default_component_of",
        "full_product_name": {
          "name": "linux-headers-4.19.0-28-all-amd64-0:4.19.325-1+tuxcare.els1.amd64 as a component of Debian 10",
          "product_id": "Debian-10:linux-headers-4.19.0-28-all-amd64-0:4.19.325-1+tuxcare.els1.amd64"
        },
        "product_reference": "linux-headers-4.19.0-28-all-amd64-0:4.19.325-1+tuxcare.els1.amd64",
        "relates_to_product_reference": "Debian-10"
      },
      {
        "category": "default_component_of",
        "full_product_name": {
          "name": "linux-libc-dev-0:4.19.325-1+tuxcare.els1.amd64 as a component of Debian 10",
          "product_id": "Debian-10:linux-libc-dev-0:4.19.325-1+tuxcare.els1.amd64"
        },
        "product_reference": "linux-libc-dev-0:4.19.325-1+tuxcare.els1.amd64",
        "relates_to_product_reference": "Debian-10"
      },
      {
        "category": "default_component_of",
        "full_product_name": {
          "name": "libcpupower1-0:4.19.325-1+tuxcare.els1.amd64 as a component of Debian 10",
          "product_id": "Debian-10:libcpupower1-0:4.19.325-1+tuxcare.els1.amd64"
        },
        "product_reference": "libcpupower1-0:4.19.325-1+tuxcare.els1.amd64",
        "relates_to_product_reference": "Debian-10"
      },
      {
        "category": "default_component_of",
        "full_product_name": {
          "name": "linux-doc-4.19-0:4.19.325-1+tuxcare.els1.all as a component of Debian 10",
          "product_id": "Debian-10:linux-doc-4.19-0:4.19.325-1+tuxcare.els1.all"
        },
        "product_reference": "linux-doc-4.19-0:4.19.325-1+tuxcare.els1.all",
        "relates_to_product_reference": "Debian-10"
      },
      {
        "category": "default_component_of",
        "full_product_name": {
          "name": "libcpupower-dev-0:4.19.325-1+tuxcare.els1.amd64 as a component of Debian 10",
          "product_id": "Debian-10:libcpupower-dev-0:4.19.325-1+tuxcare.els1.amd64"
        },
        "product_reference": "libcpupower-dev-0:4.19.325-1+tuxcare.els1.amd64",
        "relates_to_product_reference": "Debian-10"
      },
      {
        "category": "default_component_of",
        "full_product_name": {
          "name": "libbpf-dev-0:4.19.325-1+tuxcare.els1.amd64 as a component of Debian 10",
          "product_id": "Debian-10:libbpf-dev-0:4.19.325-1+tuxcare.els1.amd64"
        },
        "product_reference": "libbpf-dev-0:4.19.325-1+tuxcare.els1.amd64",
        "relates_to_product_reference": "Debian-10"
      },
      {
        "category": "default_component_of",
        "full_product_name": {
          "name": "linux-perf-4.19-0:4.19.325-1+tuxcare.els1.amd64 as a component of Debian 10",
          "product_id": "Debian-10:linux-perf-4.19-0:4.19.325-1+tuxcare.els1.amd64"
        },
        "product_reference": "linux-perf-4.19-0:4.19.325-1+tuxcare.els1.amd64",
        "relates_to_product_reference": "Debian-10"
      },
      {
        "category": "default_component_of",
        "full_product_name": {
          "name": "linux-config-4.19-0:4.19.325-1+tuxcare.els1.amd64 as a component of Debian 10",
          "product_id": "Debian-10:linux-config-4.19-0:4.19.325-1+tuxcare.els1.amd64"
        },
        "product_reference": "linux-config-4.19-0:4.19.325-1+tuxcare.els1.amd64",
        "relates_to_product_reference": "Debian-10"
      },
      {
        "category": "default_component_of",
        "full_product_name": {
          "name": "linux-kbuild-4.19-0:4.19.325-1+tuxcare.els1.amd64 as a component of Debian 10",
          "product_id": "Debian-10:linux-kbuild-4.19-0:4.19.325-1+tuxcare.els1.amd64"
        },
        "product_reference": "linux-kbuild-4.19-0:4.19.325-1+tuxcare.els1.amd64",
        "relates_to_product_reference": "Debian-10"
      },
      {
        "category": "default_component_of",
        "full_product_name": {
          "name": "libbpf4.19-0:4.19.325-1+tuxcare.els1.amd64 as a component of Debian 10",
          "product_id": "Debian-10:libbpf4.19-0:4.19.325-1+tuxcare.els1.amd64"
        },
        "product_reference": "libbpf4.19-0:4.19.325-1+tuxcare.els1.amd64",
        "relates_to_product_reference": "Debian-10"
      },
      {
        "category": "default_component_of",
        "full_product_name": {
          "name": "linux-support-4.19.0-28-0:4.19.325-1+tuxcare.els1.all as a component of Debian 10",
          "product_id": "Debian-10:linux-support-4.19.0-28-0:4.19.325-1+tuxcare.els1.all"
        },
        "product_reference": "linux-support-4.19.0-28-0:4.19.325-1+tuxcare.els1.all",
        "relates_to_product_reference": "Debian-10"
      },
      {
        "category": "default_component_of",
        "full_product_name": {
          "name": "linux-source-4.19-0:4.19.325-1+tuxcare.els1.all as a component of Debian 10",
          "product_id": "Debian-10:linux-source-4.19-0:4.19.325-1+tuxcare.els1.all"
        },
        "product_reference": "linux-source-4.19-0:4.19.325-1+tuxcare.els1.all",
        "relates_to_product_reference": "Debian-10"
      },
      {
        "category": "default_component_of",
        "full_product_name": {
          "name": "linux-compiler-gcc-8-x86-0:4.19.325-1+tuxcare.els1.amd64 as a component of Debian 10",
          "product_id": "Debian-10:linux-compiler-gcc-8-x86-0:4.19.325-1+tuxcare.els1.amd64"
        },
        "product_reference": "linux-compiler-gcc-8-x86-0:4.19.325-1+tuxcare.els1.amd64",
        "relates_to_product_reference": "Debian-10"
      },
      {
        "category": "default_component_of",
        "full_product_name": {
          "name": "linux-headers-4.19.0-28-all-0:4.19.325-1+tuxcare.els1.amd64 as a component of Debian 10",
          "product_id": "Debian-10:linux-headers-4.19.0-28-all-0:4.19.325-1+tuxcare.els1.amd64"
        },
        "product_reference": "linux-headers-4.19.0-28-all-0:4.19.325-1+tuxcare.els1.amd64",
        "relates_to_product_reference": "Debian-10"
      },
      {
        "category": "default_component_of",
        "full_product_name": {
          "name": "linux-image-amd64-signed-template-0:4.19.325-1+tuxcare.els1.amd64 as a component of Debian 10",
          "product_id": "Debian-10:linux-image-amd64-signed-template-0:4.19.325-1+tuxcare.els1.amd64"
        },
        "product_reference": "linux-image-amd64-signed-template-0:4.19.325-1+tuxcare.els1.amd64",
        "relates_to_product_reference": "Debian-10"
      },
      {
        "category": "default_component_of",
        "full_product_name": {
          "name": "linux-headers-4.19.0-28-common-0:4.19.325-1+tuxcare.els1.all as a component of Debian 10",
          "product_id": "Debian-10:linux-headers-4.19.0-28-common-0:4.19.325-1+tuxcare.els1.all"
        },
        "product_reference": "linux-headers-4.19.0-28-common-0:4.19.325-1+tuxcare.els1.all",
        "relates_to_product_reference": "Debian-10"
      },
      {
        "category": "default_component_of",
        "full_product_name": {
          "name": "linux-cpupower-0:4.19.325-1+tuxcare.els1.amd64 as a component of Debian 10",
          "product_id": "Debian-10:linux-cpupower-0:4.19.325-1+tuxcare.els1.amd64"
        },
        "product_reference": "linux-cpupower-0:4.19.325-1+tuxcare.els1.amd64",
        "relates_to_product_reference": "Debian-10"
      },
      {
        "category": "default_component_of",
        "full_product_name": {
          "name": "linux-headers-4.19.0-28-amd64-0:4.19.325-1+tuxcare.els1.amd64 as a component of Debian 10",
          "product_id": "Debian-10:linux-headers-4.19.0-28-amd64-0:4.19.325-1+tuxcare.els1.amd64"
        },
        "product_reference": "linux-headers-4.19.0-28-amd64-0:4.19.325-1+tuxcare.els1.amd64",
        "relates_to_product_reference": "Debian-10"
      },
      {
        "category": "default_component_of",
        "full_product_name": {
          "name": "hyperv-daemons-0:4.19.325-1+tuxcare.els1.amd64 as a component of Debian 10",
          "product_id": "Debian-10:hyperv-daemons-0:4.19.325-1+tuxcare.els1.amd64"
        },
        "product_reference": "hyperv-daemons-0:4.19.325-1+tuxcare.els1.amd64",
        "relates_to_product_reference": "Debian-10"
      },
      {
        "category": "default_component_of",
        "full_product_name": {
          "name": "linux-image-4.19.0-28-amd64-unsigned-0:4.19.325-1+tuxcare.els1.amd64 as a component of Debian 10",
          "product_id": "Debian-10:linux-image-4.19.0-28-amd64-unsigned-0:4.19.325-1+tuxcare.els1.amd64"
        },
        "product_reference": "linux-image-4.19.0-28-amd64-unsigned-0:4.19.325-1+tuxcare.els1.amd64",
        "relates_to_product_reference": "Debian-10"
      }
    ]
  },
  "vulnerabilities": [
    {
      "cve": "CVE-2026-31415",
      "cwe": {
        "id": "CWE-617",
        "name": "Reachable Assertion"
      },
      "notes": [
        {
          "category": "description",
          "text": "In the Linux kernel, the following vulnerability has been resolved:\n\nipv6: avoid overflows in ip6_datagram_send_ctl()\n\nYiming Qian reported :\n<quote>\n I believe I found a locally triggerable kernel bug in the IPv6 sendmsg\n ancillary-data path that can panic the kernel via `skb_under_panic()`\n (local DoS).\n\n The core issue is a mismatch between:\n\n - a 16-bit length accumulator (`struct ipv6_txoptions::opt_flen`, type\n `__u16`) and\n - a pointer to the *last* provided destination-options header (`opt->dst1opt`)\n\n when multiple `IPV6_DSTOPTS` control messages (cmsgs) are provided.\n\n - `include/net/ipv6.h`:\n   - `struct ipv6_txoptions::opt_flen` is `__u16` (wrap possible).\n (lines 291-307, especially 298)\n - `net/ipv6/datagram.c:ip6_datagram_send_ctl()`:\n   - Accepts repeated `IPV6_DSTOPTS` and accumulates into `opt_flen`\n without rejecting duplicates. (lines 909-933)\n - `net/ipv6/ip6_output.c:__ip6_append_data()`:\n   - Uses `opt->opt_flen + opt->opt_nflen` to compute header\n sizes/headroom decisions. (lines 1448-1466, especially 1463-1465)\n - `net/ipv6/ip6_output.c:__ip6_make_skb()`:\n   - Calls `ipv6_push_frag_opts()` if `opt->opt_flen` is non-zero.\n (lines 1930-1934)\n - `net/ipv6/exthdrs.c:ipv6_push_frag_opts()` / `ipv6_push_exthdr()`:\n   - Push size comes from `ipv6_optlen(opt->dst1opt)` (based on the\n pointed-to header). (lines 1179-1185 and 1206-1211)\n\n 1. `opt_flen` is a 16-bit accumulator:\n\n - `include/net/ipv6.h:298` defines `__u16 opt_flen; /* after fragment hdr */`.\n\n 2. `ip6_datagram_send_ctl()` accepts *repeated* `IPV6_DSTOPTS` cmsgs\n and increments `opt_flen` each time:\n\n - In `net/ipv6/datagram.c:909-933`, for `IPV6_DSTOPTS`:\n   - It computes `len = ((hdr->hdrlen + 1) << 3);`\n   - It checks `CAP_NET_RAW` using `ns_capable(net->user_ns,\n CAP_NET_RAW)`. (line 922)\n   - Then it does:\n     - `opt->opt_flen += len;` (line 927)\n     - `opt->dst1opt = hdr;` (line 928)\n\n There is no duplicate rejection here (unlike the legacy\n `IPV6_2292DSTOPTS` path which rejects duplicates at\n `net/ipv6/datagram.c:901-904`).\n\n If enough large `IPV6_DSTOPTS` cmsgs are provided, `opt_flen` wraps\n while `dst1opt` still points to a large (2048-byte)\n destination-options header.\n\n In the attached PoC (`poc.c`):\n\n - 32 cmsgs with `hdrlen=255` => `len = (255+1)*8 = 2048`\n - 1 cmsg with `hdrlen=0` => `len = 8`\n - Total increment: `32*2048 + 8 = 65544`, so `(__u16)opt_flen == 8`\n - The last cmsg is 2048 bytes, so `dst1opt` points to a 2048-byte header.\n\n 3. The transmit path sizes headers using the wrapped `opt_flen`:\n\n- In `net/ipv6/ip6_output.c:1463-1465`:\n  - `headersize = sizeof(struct ipv6hdr) + (opt ? opt->opt_flen +\n opt->opt_nflen : 0) + ...;`\n\n With wrapped `opt_flen`, `headersize`/headroom decisions underestimate\n what will be pushed later.\n\n 4. When building the final skb, the actual push length comes from\n `dst1opt` and is not limited by wrapped `opt_flen`:\n\n - In `net/ipv6/ip6_output.c:1930-1934`:\n   - `if (opt->opt_flen) proto = ipv6_push_frag_opts(skb, opt, proto);`\n - In `net/ipv6/exthdrs.c:1206-1211`, `ipv6_push_frag_opts()` pushes\n `dst1opt` via `ipv6_push_exthdr()`.\n - In `net/ipv6/exthdrs.c:1179-1184`, `ipv6_push_exthdr()` does:\n   - `skb_push(skb, ipv6_optlen(opt));`\n   - `memcpy(h, opt, ipv6_optlen(opt));`\n\n With insufficient headroom, `skb_push()` underflows and triggers\n `skb_under_panic()` -> `BUG()`:\n\n - `net/core/skbuff.c:2669-2675` (`skb_push()` calls `skb_under_panic()`)\n - `net/core/skbuff.c:207-214` (`skb_panic()` ends in `BUG()`)\n\n - The `IPV6_DSTOPTS` cmsg path requires `CAP_NET_RAW` in the target\n netns user namespace (`ns_capable(net->user_ns, CAP_NET_RAW)`).\n - Root (or any task with `CAP_NET_RAW`) can trigger this without user\n namespaces.\n - An unprivileged `uid=1000` user can trigger this if unprivileged\n user namespaces are enabled and it can create a userns+netns to obtain\n namespaced `CAP_NET_RAW` (the attached PoC does this).\n\n - Local denial of service: kernel BUG/panic (system crash).\n -\n---truncated---",
          "title": "Vulnerability description"
        },
        {
          "category": "other",
          "text": "TuxCare has assessed that this vulnerability does not impact any currently supported TuxCare products. This evaluation may change as new information becomes available. For additional details regarding this vulnerability and affected products, refer to the provided references.",
          "title": "Statement"
        }
      ],
      "product_status": {
        "known_not_affected": [
          "Debian-10:hyperv-daemons-0:4.19.325-1+tuxcare.els1.amd64",
          "Debian-10:libbpf-dev-0:4.19.325-1+tuxcare.els1.amd64",
          "Debian-10:libbpf4.19-0:4.19.325-1+tuxcare.els1.amd64",
          "Debian-10:libcpupower-dev-0:4.19.325-1+tuxcare.els1.amd64",
          "Debian-10:libcpupower1-0:4.19.325-1+tuxcare.els1.amd64",
          "Debian-10:linux-compiler-gcc-8-x86-0:4.19.325-1+tuxcare.els1.amd64",
          "Debian-10:linux-config-4.19-0:4.19.325-1+tuxcare.els1.amd64",
          "Debian-10:linux-cpupower-0:4.19.325-1+tuxcare.els1.amd64",
          "Debian-10:linux-doc-4.19-0:4.19.325-1+tuxcare.els1.all",
          "Debian-10:linux-headers-4.19.0-28-all-0:4.19.325-1+tuxcare.els1.amd64",
          "Debian-10:linux-headers-4.19.0-28-all-amd64-0:4.19.325-1+tuxcare.els1.amd64",
          "Debian-10:linux-headers-4.19.0-28-amd64-0:4.19.325-1+tuxcare.els1.amd64",
          "Debian-10:linux-headers-4.19.0-28-common-0:4.19.325-1+tuxcare.els1.all",
          "Debian-10:linux-image-4.19.0-28-amd64-unsigned-0:4.19.325-1+tuxcare.els1.amd64",
          "Debian-10:linux-image-amd64-signed-template-0:4.19.325-1+tuxcare.els1.amd64",
          "Debian-10:linux-kbuild-4.19-0:4.19.325-1+tuxcare.els1.amd64",
          "Debian-10:linux-libc-dev-0:4.19.325-1+tuxcare.els1.amd64",
          "Debian-10:linux-perf-4.19-0:4.19.325-1+tuxcare.els1.amd64",
          "Debian-10:linux-source-4.19-0:4.19.325-1+tuxcare.els1.all",
          "Debian-10:linux-support-4.19.0-28-0:4.19.325-1+tuxcare.els1.all"
        ]
      },
      "references": [
        {
          "category": "self",
          "summary": "Canonical URL",
          "url": "https://cve.tuxcare.com/els/cve/CVE-2026-31415"
        },
        {
          "category": "external",
          "summary": "https://git.kernel.org/stable/c/0bdaf54d3aaddfe8df29371260fa8d4939b4fd6f",
          "url": "https://git.kernel.org/stable/c/0bdaf54d3aaddfe8df29371260fa8d4939b4fd6f"
        },
        {
          "category": "external",
          "summary": "https://git.kernel.org/stable/c/2dbfb003bbf3fc0e94f07efefab0ebcf83029a2a",
          "url": "https://git.kernel.org/stable/c/2dbfb003bbf3fc0e94f07efefab0ebcf83029a2a"
        },
        {
          "category": "external",
          "summary": "https://git.kernel.org/stable/c/4082f9984a694829153115d28c956a3534f52f29",
          "url": "https://git.kernel.org/stable/c/4082f9984a694829153115d28c956a3534f52f29"
        },
        {
          "category": "external",
          "summary": "https://git.kernel.org/stable/c/4e453375561fc60820e6b9d8ebeb6b3ee177d42e",
          "url": "https://git.kernel.org/stable/c/4e453375561fc60820e6b9d8ebeb6b3ee177d42e"
        },
        {
          "category": "external",
          "summary": "https://git.kernel.org/stable/c/5e4ee5dbea134e9257f205e31a96040bed71e83f",
          "url": "https://git.kernel.org/stable/c/5e4ee5dbea134e9257f205e31a96040bed71e83f"
        },
        {
          "category": "external",
          "summary": "https://git.kernel.org/stable/c/63fda74885555e6bd1623b5d811feec998740ba4",
          "url": "https://git.kernel.org/stable/c/63fda74885555e6bd1623b5d811feec998740ba4"
        },
        {
          "category": "external",
          "summary": "https://git.kernel.org/stable/c/872b74900d5daa37067ac676d9001bb929fc6a2a",
          "url": "https://git.kernel.org/stable/c/872b74900d5daa37067ac676d9001bb929fc6a2a"
        },
        {
          "category": "external",
          "summary": "https://git.kernel.org/stable/c/9ed81d692758dfb9471d7799b24bfa7a08224c31",
          "url": "https://git.kernel.org/stable/c/9ed81d692758dfb9471d7799b24bfa7a08224c31"
        },
        {
          "category": "external",
          "summary": "https://cert-portal.siemens.com/productcert/html/ssa-019113.html",
          "url": "https://cert-portal.siemens.com/productcert/html/ssa-019113.html"
        },
        {
          "category": "external",
          "summary": "https://cert-portal.siemens.com/productcert/html/ssa-082556.html",
          "url": "https://cert-portal.siemens.com/productcert/html/ssa-082556.html"
        }
      ],
      "release_date": "2026-04-13T14:16:00Z",
      "threats": [
        {
          "category": "impact",
          "details": "Moderate"
        },
        {
          "category": "impact",
          "date": "2026-08-22T13:26:38.751725Z",
          "details": "The debian10els kernel is not affected by CVE-2026-31415: the vulnerable code was never introduced into this branch.",
          "product_ids": [
            "Debian-10:hyperv-daemons-0:4.19.325-1+tuxcare.els1.amd64",
            "Debian-10:libbpf-dev-0:4.19.325-1+tuxcare.els1.amd64",
            "Debian-10:libbpf4.19-0:4.19.325-1+tuxcare.els1.amd64",
            "Debian-10:libcpupower-dev-0:4.19.325-1+tuxcare.els1.amd64",
            "Debian-10:libcpupower1-0:4.19.325-1+tuxcare.els1.amd64",
            "Debian-10:linux-compiler-gcc-8-x86-0:4.19.325-1+tuxcare.els1.amd64",
            "Debian-10:linux-config-4.19-0:4.19.325-1+tuxcare.els1.amd64",
            "Debian-10:linux-cpupower-0:4.19.325-1+tuxcare.els1.amd64",
            "Debian-10:linux-doc-4.19-0:4.19.325-1+tuxcare.els1.all",
            "Debian-10:linux-headers-4.19.0-28-all-0:4.19.325-1+tuxcare.els1.amd64",
            "Debian-10:linux-headers-4.19.0-28-all-amd64-0:4.19.325-1+tuxcare.els1.amd64",
            "Debian-10:linux-headers-4.19.0-28-amd64-0:4.19.325-1+tuxcare.els1.amd64",
            "Debian-10:linux-headers-4.19.0-28-common-0:4.19.325-1+tuxcare.els1.all",
            "Debian-10:linux-image-4.19.0-28-amd64-unsigned-0:4.19.325-1+tuxcare.els1.amd64",
            "Debian-10:linux-image-amd64-signed-template-0:4.19.325-1+tuxcare.els1.amd64",
            "Debian-10:linux-kbuild-4.19-0:4.19.325-1+tuxcare.els1.amd64",
            "Debian-10:linux-libc-dev-0:4.19.325-1+tuxcare.els1.amd64",
            "Debian-10:linux-perf-4.19-0:4.19.325-1+tuxcare.els1.amd64",
            "Debian-10:linux-source-4.19-0:4.19.325-1+tuxcare.els1.all",
            "Debian-10:linux-support-4.19.0-28-0:4.19.325-1+tuxcare.els1.all"
          ]
        }
      ]
    }
  ]
}