Lucene search
+L

Linux Distros Unpatched Vulnerability : CVE-2026-64277

🗓️ 25 Jul 2026 00:00:00Reported by TenableType 
nessus
 nessus
🔗 www.tenable.com👁 2 Views

Unpatched synaptics-rmi4 on Linux enables out-of-bounds evdev keymap reads when gpio_count exceeds six.

Related
Refs
Code
ReporterTitlePublishedViews
Family
CVE
CVE-2026-64277
25 Jul 202608:49
cve
Cvelist
CVE-2026-64277 Input: synaptics-rmi4 - bound the F3A keymap to the GPIO count
25 Jul 202608:49
cvelist
Debian CVE
CVE-2026-64277
25 Jul 202608:49
debiancve
EUVD
EUVD-2026-48989
25 Jul 202608:49
euvd
NVD
CVE-2026-64277
25 Jul 202610:17
nvd
OSV
CVE-2026-64277 Input: synaptics-rmi4 - bound the F3A keymap to the GPIO count
25 Jul 202608:49
osv
OSV
DEBIAN-CVE-2026-64277
25 Jul 202610:17
osv
OSV
ECHO-BC70-2213-1D39
26 Jul 202602:26
osv
Positive Technologies
PT-2026-64498
25 Jul 202600:00
ptsecurity
SUSE CVE
SUSE CVE-2026-64277
25 Jul 202616:46
susecve
Rows per page
#%NASL_MIN_LEVEL 80900
##
# (C) Tenable, Inc.
##

include('compat.inc');

if (description)
{
  script_id(329958);
  script_version("1.1");
  script_set_attribute(attribute:"plugin_modification_date", value:"2026/07/25");

  script_cve_id("CVE-2026-64277");

  script_name(english:"Linux Distros Unpatched Vulnerability : CVE-2026-64277");

  script_set_attribute(attribute:"synopsis", value:
"The Linux/Unix host has one or more packages installed with a vulnerability that the vendor indicates will not be
patched.");
  script_set_attribute(attribute:"description", value:
"The Linux/Unix host has one or more packages installed that are impacted by a vulnerability without a vendor supplied
patch available.

  - Input: synaptics-rmi4 - bound the F3A keymap to the GPIO count rmi_f3a_initialize() takes the GPIO count
    from the device query register (f3a->gpio_count = buf & RMI_F3A_GPIO_COUNT, range 0..127).
    rmi_f3a_map_gpios() then allocates gpio_key_map with min(gpio_count, TRACKSTICK_RANGE_END) == at most 6
    entries, but rmi_f3a_attention() iterates the full gpio_count and dereferences gpio_key_map[i], and
    input->keycodemax is set to the full gpio_count while input->keycode points at the 6-entry allocation. A
    device that reports gpio_count > 6 therefore causes an out-of-bounds read of gpio_key_map[] on every
    attention interrupt, and out-of-bounds accesses through the input core's default keymap ioctls:
    EVIOCGKEYCODE reads past the buffer (leaking adjacent slab memory to user space) and EVIOCSKEYCODE writes
    a caller-controlled value past it, for any process able to open the evdev node, since
    input_default_getkeycode() and input_default_setkeycode() only bound the index against keycodemax. Size
    the keymap for the full gpio_count. The mapping loop is unchanged: it still assigns only the first
    min(gpio_count, TRACKSTICK_RANGE_END) entries; the remaining slots stay KEY_RESERVED (devm_kcalloc zero-
    fills) and are skipped when reporting. (CVE-2026-64277)

Note that Nessus relies on the presence of the package as reported by the vendor.");
  script_set_attribute(attribute:"see_also", value:"https://security-tracker.debian.org/tracker/CVE-2026-64277");
  script_set_attribute(attribute:"solution", value:
"There is no known solution at this time.");
  script_set_attribute(attribute:"agent", value:"unix");
  script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:N/C:P/I:P/A:P");
  script_set_cvss_temporal_vector("CVSS2#E:U/RL:U/RC:C");
  script_set_cvss3_base_vector("CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H");
  script_set_cvss3_temporal_vector("CVSS:3.0/E:U/RL:U/RC:C");
  script_set_attribute(attribute:"cvss_score_source", value:"CVE-2026-64277");

  script_set_attribute(attribute:"exploitability_ease", value:"No known exploits are available");
  script_set_attribute(attribute:"exploit_available", value:"false");
  script_set_attribute(attribute:"vendor_unpatched", value:"true");

  script_set_attribute(attribute:"vuln_publication_date", value:"2026/07/25");
  script_set_attribute(attribute:"plugin_publication_date", value:"2026/07/25");

  script_set_attribute(attribute:"plugin_type", value:"local");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:debian:debian_linux:11.0");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:debian:debian_linux:12.0");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:debian:debian_linux:14.0");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:debian:debian_linux:linux");
  script_set_attribute(attribute:"generated_plugin", value:"current");
  script_end_attributes();

  script_category(ACT_GATHER_INFO);
  script_family(english:"Misc.");

  script_copyright(english:"This script is Copyright (C) 2026 and is owned by Tenable, Inc. or an Affiliate thereof.");

  script_dependencies("ssh_get_info2.nasl", "set_linux_os_id.nasl");
  script_require_keys("Host/cpu", "Host/local_checks_enabled", "global_settings/vendor_unpatched", "Host/OS/identifier");
  script_require_ports("Host/OS/Debian Linux-11", "Host/OS/Debian Linux-12", "Host/OS/Debian Linux-14");

  exit(0);
}

if (!get_kb_item("global_settings/vendor_unpatched")) exit(0, "Unpatched Vulnerabilities Detection not active.");
if (!get_kb_item("Host/local_checks_enabled")) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED);
if (empty_or_null(get_one_kb_item("Host/Debian/dpkg-l"))) audit(AUDIT_PACKAGE_LIST_MISSING);

include('linux_unpatched.inc');

var distro_constraints_array = {
  "Debian Linux-12": {
    "package_manager": "dpkg-l",
    "constraints": [
      {
        "release": "12",
        "pkgs": [
          {"reference": "btrfs-modules-6.1.0-50-alpha-generic-di"},
          {"reference": "cdrom-core-modules-6.1.0-50-alpha-generic-di"},
          {"reference": "ext4-modules-6.1.0-50-alpha-generic-di"},
          {"reference": "fat-modules-6.1.0-50-alpha-generic-di"},
          {"reference": "isofs-modules-6.1.0-50-alpha-generic-di"},
          {"reference": "jfs-modules-6.1.0-50-alpha-generic-di"},
          {"reference": "kernel-image-6.1.0-50-alpha-generic-di"},
          {"reference": "linux-doc"},
          {"reference": "linux-doc-6.1"},
          {"reference": "linux-headers-6.1.0"},
          {"reference": "linux-source"},
          {"reference": "linux-source-6.1"},
          {"reference": "linux-support-6.1.0"},
          {"reference": "loop-modules-6.1.0-50-alpha-generic-di"},
          {"reference": "nic-modules-6.1.0-50-alpha-generic-di"},
          {"reference": "nic-shared-modules-6.1.0-50-alpha-generic-di"},
          {"reference": "nic-wireless-modules-6.1.0-50-alpha-generic-di"},
          {"reference": "pata-modules-6.1.0-50-alpha-generic-di"},
          {"reference": "ppp-modules-6.1.0-50-alpha-generic-di"},
          {"reference": "scsi-core-modules-6.1.0-50-alpha-generic-di"},
          {"reference": "scsi-modules-6.1.0-50-alpha-generic-di"},
          {"reference": "scsi-nic-modules-6.1.0-50-alpha-generic-di"},
          {"reference": "serial-modules-6.1.0-50-alpha-generic-di"},
          {"reference": "usb-serial-modules-6.1.0-50-alpha-generic-di"},
          {"reference": "xfs-modules-6.1.0-50-alpha-generic-di"}
        ]
      }
    ]
  },
  "Debian Linux-11": {
    "package_manager": "dpkg-l",
    "constraints": [
      {
        "release": "11",
        "pkgs": [
          {"reference": "bpftool"},
          {"reference": "btrfs-modules-5.10.0-32-alpha-generic-di"},
          {"reference": "cdrom-core-modules-5.10.0-32-alpha-generic-di"},
          {"reference": "hyperv-daemons"},
          {"reference": "kernel-image-5.10.0-32-alpha-generic-di"},
          {"reference": "libcpupower-dev"},
          {"reference": "libcpupower1"},
          {"reference": "linux-bootwrapper-5.10.0"},
          {"reference": "linux-config-5.10"},
          {"reference": "linux-cpupower"},
          {"reference": "linux-doc"},
          {"reference": "linux-doc-5.10"},
          {"reference": "linux-headers-5.10.0"},
          {"reference": "linux-kbuild-5.10"},
          {"reference": "linux-libc-dev"},
          {"reference": "linux-perf"},
          {"reference": "linux-perf-5.10"},
          {"reference": "linux-source"},
          {"reference": "linux-source-5.10"},
          {"reference": "linux-support-5.10.0"},
          {"reference": "loop-modules-5.10.0-32-alpha-generic-di"},
          {"reference": "nic-modules-5.10.0-32-alpha-generic-di"},
          {"reference": "nic-shared-modules-5.10.0-32-alpha-generic-di"},
          {"reference": "nic-wireless-modules-5.10.0-32-alpha-generic-di"},
          {"reference": "pata-modules-5.10.0-32-alpha-generic-di"},
          {"reference": "ppp-modules-5.10.0-32-alpha-generic-di"},
          {"reference": "scsi-core-modules-5.10.0-32-alpha-generic-di"},
          {"reference": "scsi-modules-5.10.0-32-alpha-generic-di"},
          {"reference": "scsi-nic-modules-5.10.0-32-alpha-generic-di"},
          {"reference": "serial-modules-5.10.0-32-alpha-generic-di"},
          {"reference": "usb-serial-modules-5.10.0-32-alpha-generic-di"},
          {"reference": "usbip"}
        ]
      }
    ]
  },
  "Debian Linux-14": {
    "package_manager": "dpkg-l",
    "constraints": [
      {
        "release": "14",
        "pkgs": [
          {"reference": "bpftool"},
          {"reference": "hyperv-daemons"},
          {"reference": "intel-sdsi"},
          {"reference": "libcpupower-dev"},
          {"reference": "libcpupower1"},
          {"reference": "linux-base-7.1.3+deb14-alpha-generic"},
          {"reference": "linux-base-7.1.3+deb14-alpha-smp"},
          {"reference": "linux-base-7.1.3+deb14-amd64"},
          {"reference": "linux-base-7.1.3+deb14-arm64"},
          {"reference": "linux-base-7.1.3+deb14-arm64-16k"},
          {"reference": "linux-base-7.1.3+deb14-armmp"},
          {"reference": "linux-base-7.1.3+deb14-armmp-lpae"},
          {"reference": "linux-base-7.1.3+deb14-cloud-amd64"},
          {"reference": "linux-base-7.1.3+deb14-cloud-arm64"},
          {"reference": "linux-base-7.1.3+deb14-loong64"},
          {"reference": "linux-base-7.1.3+deb14-m68k"},
          {"reference": "linux-base-7.1.3+deb14-parisc"},
          {"reference": "linux-base-7.1.3+deb14-parisc64"},
          {"reference": "linux-base-7.1.3+deb14-powerpc"},
          {"reference": "linux-base-7.1.3+deb14-powerpc-smp"},
          {"reference": "linux-base-7.1.3+deb14-powerpc64"},
          {"reference": "linux-base-7.1.3+deb14-powerpc64-64k"},
          {"reference": "linux-base-7.1.3+deb14-powerpc64le"},
          {"reference": "linux-base-7.1.3+deb14-powerpc64le-64k"},
          {"reference": "linux-base-7.1.3+deb14-riscv64"},
          {"reference": "linux-base-7.1.3+deb14-rt-amd64"},
          {"reference": "linux-base-7.1.3+deb14-rt-arm64"},
          {"reference": "linux-base-7.1.3+deb14-s390x"},
          {"reference": "linux-base-7.1.3+deb14-sh7751r"},
          {"reference": "linux-base-7.1.3+deb14-sparc64"},
          {"reference": "linux-base-7.1.3+deb14-sparc64-smp"},
          {"reference": "linux-base-7.1.3+deb14-test"}
        ]
      }
    ]
  }
};

var distro_constraints_values = linux_unpatched::get_distro_constraints(distro_constraints_arr:distro_constraints_array);
if (empty_or_null(distro_constraints_values)) audit(AUDIT_HOST_NOT, 'affected');

var third_party_support = get_kb_item('Host/OS/extended-third-party');
if (!empty_or_null(third_party_support)) {
    var third_party_vendors = distro_constraints_values['third_party'];
    if (!empty_or_null(third_party_vendors)) {
        var vendor;
        foreach vendor (third_party_vendors) {
            if (vendor == third_party_support) exit(0, 'A third party management patch is available for this vulnerability from ' + vendor + '.\n');
        }
    }
}

var report = linux_unpatched::check_unpatched_constraints(distro_constraints_values:distro_constraints_values);

if (!empty_or_null(report))
{
  security_report_v4(
      port       : 0,
      severity   : SECURITY_WARNING,
      extra      : report
  );
  exit(0);
}
else
{
  audit(AUDIT_HOST_NOT, 'affected');
}

Data

Build on a solid foundation with Vulners data

We provide the essential building blocks for cybersecurity solutions with comprehensive, structured, and constantly updated vulnerability and exploits data

Api

Power your application with Vulners API

The Vulners REST API offers reliable, high-performance access to vulnerability intelligence, with 99.9% SLA uptime and CDN-backed data delivery for seamless global access

App

Assess and manage vulnerabilities with Vulners tools

Built on top of Vulners' database and SDK, end-user solutions give security professionals and developers lightweight and powerful tools for vulnerability remediation

25 Jul 2026 00:00Current
6.1Medium risk
Vulners AI Score6.1
EPSS0.0022
2