{"id":"UBUNTU-CVE-2026-12087","details":"Socket versions before 2.041 for Perl have an out-of-bounds heap read. In Socket.xs, pack_ip_mreq_source() checks the length of its source argument before the argument is read, so the check tests the byte length carried over from the preceding multiaddr argument instead. Both addresses occupy a 4-byte field, so a valid multiaddr lets a source of any length pass the check, and the source is then copied into the 4-byte imr_sourceaddr field with a fixed-size copy. A source shorter than 4 bytes is not rejected, and the copy reads up to 3 bytes past the end of its buffer. Calling pack_ip_mreq_source() with a source value shorter than 4 bytes copies adjacent heap memory into the returned packed structure.","modified":"2026-09-10T00:56:43.241086512Z","published":"2026-06-15T22:16:00Z","related":["USN-8675-1","USN-8675-2","USN-8684-1"],"upstream":["CVE-2026-12087"],"references":[{"type":"REPORT","url":"https://ubuntu.com/security/CVE-2026-12087"},{"type":"REPORT","url":"https://www.cve.org/CVERecord?id=CVE-2026-12087"},{"type":"REPORT","url":"https://lists.security.metacpan.org/cve-announce/msg/41020451/"},{"type":"ADVISORY","url":"https://ubuntu.com/security/notices/USN-8675-1"},{"type":"ADVISORY","url":"https://ubuntu.com/security/notices/USN-8684-1"},{"type":"ADVISORY","url":"https://ubuntu.com/security/notices/USN-8675-2"}],"affected":[{"package":{"name":"perl","ecosystem":"Ubuntu:Pro:14.04:LTS","purl":"pkg:deb/ubuntu/perl?arch=source&distro=esm-infra-legacy%2Ftrusty"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"5.18.2-2ubuntu1.7+esm8"}]}],"versions":["5.14.2-21build1","5.18.1-4","5.18.1-4build1","5.18.1-5","5.18.2-2","5.18.2-2ubuntu1","5.18.2-2ubuntu1.1","5.18.2-2ubuntu1.3","5.18.2-2ubuntu1.4","5.18.2-2ubuntu1.6","5.18.2-2ubuntu1.7","5.18.2-2ubuntu1.7+esm3","5.18.2-2ubuntu1.7+esm4","5.18.2-2ubuntu1.7+esm5","5.18.2-2ubuntu1.7+esm7"],"ecosystem_specific":{"availability":"Available with Ubuntu Pro with Legacy support add-on: https://ubuntu.com/pro","binaries":[{"binary_name":"libcgi-fast-perl","binary_version":"5.18.2-2ubuntu1.7+esm8"},{"binary_name":"libperl5.18","binary_version":"5.18.2-2ubuntu1.7+esm8"},{"binary_version":"5.18.2-2ubuntu1.7+esm8","binary_name":"perl"},{"binary_version":"5.18.2-2ubuntu1.7+esm8","binary_name":"perl-base"},{"binary_name":"perl-debug","binary_version":"5.18.2-2ubuntu1.7+esm8"},{"binary_name":"perl-modules","binary_version":"5.18.2-2ubuntu1.7+esm8"}]},"database_specific":{"source":"https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-12087.json"}},{"package":{"name":"perl","ecosystem":"Ubuntu:Pro:16.04:LTS","purl":"pkg:deb/ubuntu/perl?arch=source&distro=esm-infra-legacy%2Fxenial"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"5.22.1-9ubuntu0.9+esm3"}]}],"versions":["5.20.2-6","5.22.1-3","5.22.1-4","5.22.1-5","5.22.1-7","5.22.1-8","5.22.1-9","5.22.1-9ubuntu0.2","5.22.1-9ubuntu0.3","5.22.1-9ubuntu0.5","5.22.1-9ubuntu0.6","5.22.1-9ubuntu0.9","5.22.1-9ubuntu0.9+esm1","5.22.1-9ubuntu0.9+esm2"],"ecosystem_specific":{"binaries":[{"binary_version":"5.22.1-9ubuntu0.9+esm3","binary_name":"libperl5.22"},{"binary_version":"5.22.1-9ubuntu0.9+esm3","binary_name":"perl"},{"binary_version":"5.22.1-9ubuntu0.9+esm3","binary_name":"perl-base"},{"binary_name":"perl-debug","binary_version":"5.22.1-9ubuntu0.9+esm3"},{"binary_version":"5.22.1-9ubuntu0.9+esm3","binary_name":"perl-modules-5.22"}],"availability":"Available with Ubuntu Pro with Legacy support add-on: https://ubuntu.com/pro"},"database_specific":{"source":"https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-12087.json"}},{"package":{"name":"libsocket-perl","ecosystem":"Ubuntu:16.04:LTS","purl":"pkg:deb/ubuntu/libsocket-perl?arch=source&distro=xenial"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["2.020-1","2.021-1","2.021-1build1"],"ecosystem_specific":{"binaries":[{"binary_name":"libsocket-perl","binary_version":"2.021-1build1"}]},"database_specific":{"source":"https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-12087.json"}},{"package":{"name":"perl","ecosystem":"Ubuntu:Pro:18.04:LTS","purl":"pkg:deb/ubuntu/perl?arch=source&distro=esm-infra%2Fbionic"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"5.26.1-6ubuntu0.7+esm3"}]}],"versions":["5.26.0-8ubuntu1","5.26.1-2ubuntu1","5.26.1-3","5.26.1-4","5.26.1-4build1","5.26.1-5","5.26.1-6","5.26.1-6ubuntu0.1","5.26.1-6ubuntu0.2","5.26.1-6ubuntu0.3","5.26.1-6ubuntu0.5","5.26.1-6ubuntu0.6","5.26.1-6ubuntu0.7","5.26.1-6ubuntu0.7+esm2"],"ecosystem_specific":{"availability":"Available with Ubuntu Pro (Infra-only): https://ubuntu.com/pro","binaries":[{"binary_name":"libperl5.26","binary_version":"5.26.1-6ubuntu0.7+esm3"},{"binary_name":"perl","binary_version":"5.26.1-6ubuntu0.7+esm3"},{"binary_version":"5.26.1-6ubuntu0.7+esm3","binary_name":"perl-base"},{"binary_name":"perl-debug","binary_version":"5.26.1-6ubuntu0.7+esm3"},{"binary_version":"5.26.1-6ubuntu0.7+esm3","binary_name":"perl-modules-5.26"}]},"database_specific":{"source":"https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-12087.json"}},{"package":{"name":"libsocket-perl","ecosystem":"Ubuntu:18.04:LTS","purl":"pkg:deb/ubuntu/libsocket-perl?arch=source&distro=bionic"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["2.024-1build2","2.027-1"],"ecosystem_specific":{"binaries":[{"binary_version":"2.027-1","binary_name":"libsocket-perl"}]},"database_specific":{"source":"https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-12087.json"}},{"package":{"name":"perl","ecosystem":"Ubuntu:Pro:20.04:LTS","purl":"pkg:deb/ubuntu/perl?arch=source&distro=esm-infra%2Ffocal"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"5.30.0-9ubuntu0.5+esm3"}]}],"versions":["5.28.1-6build1","5.30.0-7","5.30.0-9","5.30.0-9build1","5.30.0-9ubuntu0.2","5.30.0-9ubuntu0.3","5.30.0-9ubuntu0.4","5.30.0-9ubuntu0.5","5.30.0-9ubuntu0.5+esm2"],"ecosystem_specific":{"binaries":[{"binary_name":"libperl5.30","binary_version":"5.30.0-9ubuntu0.5+esm3"},{"binary_version":"5.30.0-9ubuntu0.5+esm3","binary_name":"perl"},{"binary_name":"perl-base","binary_version":"5.30.0-9ubuntu0.5+esm3"},{"binary_name":"perl-debug","binary_version":"5.30.0-9ubuntu0.5+esm3"},{"binary_name":"perl-modules-5.30","binary_version":"5.30.0-9ubuntu0.5+esm3"}],"availability":"Available with Ubuntu Pro (Infra-only): https://ubuntu.com/pro"},"database_specific":{"source":"https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-12087.json"}},{"package":{"name":"libsocket-perl","ecosystem":"Ubuntu:20.04:LTS","purl":"pkg:deb/ubuntu/libsocket-perl?arch=source&distro=focal"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["2.029-1","2.029-1build1"],"ecosystem_specific":{"binaries":[{"binary_version":"2.029-1build1","binary_name":"libsocket-perl"}]},"database_specific":{"source":"https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-12087.json"}},{"package":{"name":"libsocket-perl","ecosystem":"Ubuntu:22.04:LTS","purl":"pkg:deb/ubuntu/libsocket-perl?arch=source&distro=jammy"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["2.031-1","2.032-1","2.032-1build1"],"ecosystem_specific":{"binaries":[{"binary_version":"2.032-1build1","binary_name":"libsocket-perl"}]},"database_specific":{"source":"https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-12087.json"}},{"package":{"name":"perl","ecosystem":"Ubuntu:22.04:LTS","purl":"pkg:deb/ubuntu/perl?arch=source&distro=jammy"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"5.34.0-3ubuntu1.8"}]}],"versions":["5.32.1-3ubuntu3","5.34.0-3ubuntu1","5.34.0-3ubuntu1.1","5.34.0-3ubuntu1.2","5.34.0-3ubuntu1.3","5.34.0-3ubuntu1.4","5.34.0-3ubuntu1.5","5.34.0-3ubuntu1.7"],"ecosystem_specific":{"availability":"No subscription required","binaries":[{"binary_name":"libperl5.34","binary_version":"5.34.0-3ubuntu1.8"},{"binary_version":"5.34.0-3ubuntu1.8","binary_name":"perl"},{"binary_version":"5.34.0-3ubuntu1.8","binary_name":"perl-base"},{"binary_name":"perl-debug","binary_version":"5.34.0-3ubuntu1.8"},{"binary_name":"perl-modules-5.34","binary_version":"5.34.0-3ubuntu1.8"}]},"database_specific":{"source":"https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-12087.json"}},{"package":{"name":"libsocket-perl","ecosystem":"Ubuntu:24.04:LTS","purl":"pkg:deb/ubuntu/libsocket-perl?arch=source&distro=noble"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["2.037-1","2.037-1build1","2.037-1build2","2.037-1build3"],"ecosystem_specific":{"binaries":[{"binary_name":"libsocket-perl","binary_version":"2.037-1build3"}]},"database_specific":{"source":"https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-12087.json"}},{"package":{"name":"perl","ecosystem":"Ubuntu:24.04:LTS","purl":"pkg:deb/ubuntu/perl?arch=source&distro=noble"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"5.38.2-3.2ubuntu0.4"}]}],"versions":["5.36.0-9ubuntu1","5.36.0-10ubuntu1","5.38.2-3","5.38.2-3.2","5.38.2-3.2build1","5.38.2-3.2build2","5.38.2-3.2build2.1","5.38.2-3.2ubuntu0.1","5.38.2-3.2ubuntu0.2","5.38.2-3.2ubuntu0.3"],"ecosystem_specific":{"binaries":[{"binary_name":"libperl5.38t64","binary_version":"5.38.2-3.2ubuntu0.4"},{"binary_name":"perl","binary_version":"5.38.2-3.2ubuntu0.4"},{"binary_name":"perl-base","binary_version":"5.38.2-3.2ubuntu0.4"},{"binary_name":"perl-debug","binary_version":"5.38.2-3.2ubuntu0.4"},{"binary_name":"perl-modules-5.38","binary_version":"5.38.2-3.2ubuntu0.4"}],"availability":"No subscription required"},"database_specific":{"source":"https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-12087.json"}},{"package":{"name":"libsocket-perl","ecosystem":"Ubuntu:25.10","purl":"pkg:deb/ubuntu/libsocket-perl?arch=source&distro=questing"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["2.038-1build1"],"ecosystem_specific":{"binaries":[{"binary_name":"libsocket-perl","binary_version":"2.038-1build1"}]},"database_specific":{"source":"https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-12087.json"}},{"package":{"name":"perl","ecosystem":"Ubuntu:25.10","purl":"pkg:deb/ubuntu/perl?arch=source&distro=questing"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["5.40.1-2","5.40.1-3","5.40.1-5","5.40.1-6","5.40.1-6build1","5.40.1-6ubuntu0.1"],"ecosystem_specific":{"binaries":[{"binary_name":"libperl5.40","binary_version":"5.40.1-6ubuntu0.1"},{"binary_name":"perl","binary_version":"5.40.1-6ubuntu0.1"},{"binary_version":"5.40.1-6ubuntu0.1","binary_name":"perl-base"},{"binary_name":"perl-debug","binary_version":"5.40.1-6ubuntu0.1"},{"binary_name":"perl-modules-5.40","binary_version":"5.40.1-6ubuntu0.1"}]},"database_specific":{"source":"https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-12087.json"}},{"package":{"name":"libsocket-perl","ecosystem":"Ubuntu:26.04:LTS","purl":"pkg:deb/ubuntu/libsocket-perl?arch=source&distro=resolute"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["2.038-1build1","2.040-1"],"ecosystem_specific":{"binaries":[{"binary_version":"2.040-1","binary_name":"libsocket-perl"}]},"database_specific":{"source":"https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-12087.json"}},{"package":{"name":"perl","ecosystem":"Ubuntu:26.04:LTS","purl":"pkg:deb/ubuntu/perl?arch=source&distro=resolute"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"5.40.1-7ubuntu0.3"}]}],"versions":["5.40.1-6build1","5.40.1-7build1","5.40.1-7ubuntu0.1","5.40.1-7ubuntu0.2"],"ecosystem_specific":{"binaries":[{"binary_version":"5.40.1-7ubuntu0.3","binary_name":"libperl5.40"},{"binary_name":"perl","binary_version":"5.40.1-7ubuntu0.3"},{"binary_version":"5.40.1-7ubuntu0.3","binary_name":"perl-base"},{"binary_name":"perl-debug","binary_version":"5.40.1-7ubuntu0.3"},{"binary_name":"perl-modules-5.40","binary_version":"5.40.1-7ubuntu0.3"}],"availability":"No subscription required"},"database_specific":{"source":"https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-12087.json"}}],"schema_version":"1.9.0","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:H"},{"type":"Ubuntu","score":"medium"}]}