CVE-2015-3636 Use after free in n/a

Medium 4.9 Published Updated

Local attackers can exploit a use-after-free in the Linux kernel ping implementation to escalate privileges or crash the system.

Exploited in the wild
Not known
Login needed
Any signed-in user
Attackable
Local or same network only
Victim action needed
Not needed
Fix
Available

What is CVE-2015-3636?

CVE-2015-3636 is a medium-severity use after free vulnerability in Canonical Ubuntu Linux, published on 6 Aug 2015. It can only be exploited from the same machine or local network, with no action from the victim.

Official description

The ping_unhash function in net/ipv4/ping.c in the Linux kernel before 4.0.3 does not initialize a certain list data structure during an unhash operation, which allows local users to gain privileges or cause a denial of service (use-after-free and system crash) by leveraging the ability to make a SOCK_DGRAM socket system call for the IPPROTO_ICMP or IPPROTO_ICMPV6 protocol, and then making a connect system call after a disconnect.

Which versions are affected by CVE-2015-3636?

It affects 4 products.

Linux distribution packages (40)
kernel Red Hat:rhel_aus:6.4::serverAll versions0:2.6.32-358.65.1.el6
kernel-debug Red Hat:rhel_aus:6.4::serverAll versions0:2.6.32-358.65.1.el6
kernel-debug-debuginfo Red Hat:rhel_aus:6.4::serverAll versions0:2.6.32-358.65.1.el6
kernel-debug-devel Red Hat:rhel_aus:6.4::serverAll versions0:2.6.32-358.65.1.el6
kernel-debuginfo Red Hat:rhel_aus:6.4::serverAll versions0:2.6.32-358.65.1.el6
kernel-debuginfo-common-x86_64 Red Hat:rhel_aus:6.4::serverAll versions0:2.6.32-358.65.1.el6
kernel-devel Red Hat:rhel_aus:6.4::serverAll versions0:2.6.32-358.65.1.el6
kernel-doc Red Hat:rhel_aus:6.4::serverAll versions0:2.6.32-358.65.1.el6
kernel-firmware Red Hat:rhel_aus:6.4::serverAll versions0:2.6.32-358.65.1.el6
kernel-headers Red Hat:rhel_aus:6.4::serverAll versions0:2.6.32-358.65.1.el6
perf Red Hat:rhel_aus:6.4::serverAll versions0:2.6.32-358.65.1.el6
perf-debuginfo Red Hat:rhel_aus:6.4::serverAll versions0:2.6.32-358.65.1.el6
python-perf Red Hat:rhel_aus:6.4::serverAll versions0:2.6.32-358.65.1.el6
python-perf-debuginfo Red Hat:rhel_aus:6.4::serverAll versions0:2.6.32-358.65.1.el6
kernel Red Hat:rhel_eus:6.5::computenodeAll versions0:2.6.32-431.61.2.el6
kernel-abi-whitelists Red Hat:rhel_eus:6.5::computenodeAll versions0:2.6.32-431.61.2.el6
kernel-debug Red Hat:rhel_eus:6.5::computenodeAll versions0:2.6.32-431.61.2.el6
kernel-debug-debuginfo Red Hat:rhel_eus:6.5::computenodeAll versions0:2.6.32-431.61.2.el6
kernel-debug-devel Red Hat:rhel_eus:6.5::computenodeAll versions0:2.6.32-431.61.2.el6
kernel-debuginfo Red Hat:rhel_eus:6.5::computenodeAll versions0:2.6.32-431.61.2.el6
kernel-debuginfo-common-x86_64 Red Hat:rhel_eus:6.5::computenodeAll versions0:2.6.32-431.61.2.el6
kernel-devel Red Hat:rhel_eus:6.5::computenodeAll versions0:2.6.32-431.61.2.el6
kernel-doc Red Hat:rhel_eus:6.5::computenodeAll versions0:2.6.32-431.61.2.el6
kernel-firmware Red Hat:rhel_eus:6.5::computenodeAll versions0:2.6.32-431.61.2.el6
kernel-headers Red Hat:rhel_eus:6.5::computenodeAll versions0:2.6.32-431.61.2.el6
perf Red Hat:rhel_eus:6.5::computenodeAll versions0:2.6.32-431.61.2.el6
perf-debuginfo Red Hat:rhel_eus:6.5::computenodeAll versions0:2.6.32-431.61.2.el6
python-perf Red Hat:rhel_eus:6.5::computenodeAll versions0:2.6.32-431.61.2.el6
python-perf-debuginfo Red Hat:rhel_eus:6.5::computenodeAll versions0:2.6.32-431.61.2.el6
kernel Red Hat:rhel_eus:6.5::serverAll versions0:2.6.32-431.61.2.el6
kernel-abi-whitelists Red Hat:rhel_eus:6.5::serverAll versions0:2.6.32-431.61.2.el6
kernel-bootwrapper Red Hat:rhel_eus:6.5::serverAll versions0:2.6.32-431.61.2.el6
kernel-debug Red Hat:rhel_eus:6.5::serverAll versions0:2.6.32-431.61.2.el6
kernel-debug-debuginfo Red Hat:rhel_eus:6.5::serverAll versions0:2.6.32-431.61.2.el6
kernel-debug-devel Red Hat:rhel_eus:6.5::serverAll versions0:2.6.32-431.61.2.el6
kernel-debuginfo Red Hat:rhel_eus:6.5::serverAll versions0:2.6.32-431.61.2.el6
kernel-debuginfo-common-i686 Red Hat:rhel_eus:6.5::serverAll versions0:2.6.32-431.61.2.el6
kernel-debuginfo-common-ppc64 Red Hat:rhel_eus:6.5::serverAll versions0:2.6.32-431.61.2.el6
kernel-debuginfo-common-s390x Red Hat:rhel_eus:6.5::serverAll versions0:2.6.32-431.61.2.el6
kernel-debuginfo-common-x86_64 Red Hat:rhel_eus:6.5::serverAll versions0:2.6.32-431.61.2.el6

Products include Canonical Ubuntu Linux, Debian Debian Linux, Linux kernel, Redhat Enterprise Linux.

How do I fix CVE-2015-3636?

Apply the vendor's patch.

Upgrade to the fixed version. These bugs are found with fuzzing and sanitisers and avoided by memory-safe languages. More about Use after free.

Is CVE-2015-3636 being exploited?

There is no known exploitation of CVE-2015-3636 in the wild and no public exploit code.

Public exploit code: 7 proofs of concept on GitHub.

All Canonical Ubuntu Linux vulnerabilities

Sources

Also known as DEBIAN-CVE-2015-3636, GHSA-67pv-68g5-4j93, RHSA-2015:1583, RHSA-2015:1643, UBUNTU-CVE-2015-3636.

Is CVE-2015-3636 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free