OpenPrinting CUPS is a standards-based, open source printing system for Linux and other Unix-like operating systems. Starting in version 2.0.0 and prior to version 2.4.6, CUPS logs data of free memory to the logging service AFTER the connection has been closed, when it should have logged the data right before. This is a use-after-free bug that impacts the entire cupsd process. The exact cause of this issue is the function httpClose(con->http)
being called in scheduler/client.c
. The problem is that httpClose always, provided its argument is not null, frees the pointer at the end of the call, only for cupsdLogClient to pass the pointer to httpGetHostname. This issue happens in function cupsdAcceptClient
if LogLevel is warn or higher and in two scenarios: there is a double-lookup for the IP Address (HostNameLookups Double is set in cupsd.conf
) which fails to resolve, or if CUPS is compiled with TCP wrappers and the connection is refused by rules from /etc/hosts.allow
and /etc/hosts.deny
. Version 2.4.6 has a patch for this issue.
{ "availability": "Available with Ubuntu Pro (Infra-only): https://ubuntu.com/pro", "ubuntu_priority": "medium", "binaries": [ { "binary_version": "2.1.3-4ubuntu0.11+esm3", "binary_name": "cups" }, { "binary_version": "2.1.3-4ubuntu0.11+esm3", "binary_name": "cups-bsd" }, { "binary_version": "2.1.3-4ubuntu0.11+esm3", "binary_name": "cups-bsd-dbgsym" }, { "binary_version": "2.1.3-4ubuntu0.11+esm3", "binary_name": "cups-client" }, { "binary_version": "2.1.3-4ubuntu0.11+esm3", "binary_name": "cups-client-dbgsym" }, { "binary_version": "2.1.3-4ubuntu0.11+esm3", "binary_name": "cups-common" }, { "binary_version": "2.1.3-4ubuntu0.11+esm3", "binary_name": "cups-core-drivers" }, { "binary_version": "2.1.3-4ubuntu0.11+esm3", "binary_name": "cups-core-drivers-dbgsym" }, { "binary_version": "2.1.3-4ubuntu0.11+esm3", "binary_name": "cups-daemon" }, { "binary_version": "2.1.3-4ubuntu0.11+esm3", "binary_name": "cups-daemon-dbgsym" }, { "binary_version": "2.1.3-4ubuntu0.11+esm3", "binary_name": "cups-dbg" }, { "binary_version": "2.1.3-4ubuntu0.11+esm3", "binary_name": "cups-dbgsym" }, { "binary_version": "2.1.3-4ubuntu0.11+esm3", "binary_name": "cups-ipp-utils" }, { "binary_version": "2.1.3-4ubuntu0.11+esm3", "binary_name": "cups-ipp-utils-dbgsym" }, { "binary_version": "2.1.3-4ubuntu0.11+esm3", "binary_name": "cups-ppdc" }, { "binary_version": "2.1.3-4ubuntu0.11+esm3", "binary_name": "cups-ppdc-dbgsym" }, { "binary_version": "2.1.3-4ubuntu0.11+esm3", "binary_name": "cups-server-common" }, { "binary_version": "2.1.3-4ubuntu0.11+esm3", "binary_name": "libcups2" }, { "binary_version": "2.1.3-4ubuntu0.11+esm3", "binary_name": "libcups2-dbgsym" }, { "binary_version": "2.1.3-4ubuntu0.11+esm3", "binary_name": "libcups2-dev" }, { "binary_version": "2.1.3-4ubuntu0.11+esm3", "binary_name": "libcups2-dev-dbgsym" }, { "binary_version": "2.1.3-4ubuntu0.11+esm3", "binary_name": "libcupscgi1" }, { "binary_version": "2.1.3-4ubuntu0.11+esm3", "binary_name": "libcupscgi1-dbgsym" }, { "binary_version": "2.1.3-4ubuntu0.11+esm3", "binary_name": "libcupscgi1-dev" }, { "binary_version": "2.1.3-4ubuntu0.11+esm3", "binary_name": "libcupscgi1-dev-dbgsym" }, { "binary_version": "2.1.3-4ubuntu0.11+esm3", "binary_name": "libcupsimage2" }, { "binary_version": "2.1.3-4ubuntu0.11+esm3", "binary_name": "libcupsimage2-dbgsym" }, { "binary_version": "2.1.3-4ubuntu0.11+esm3", "binary_name": "libcupsimage2-dev" }, { "binary_version": "2.1.3-4ubuntu0.11+esm3", "binary_name": "libcupsimage2-dev-dbgsym" }, { "binary_version": "2.1.3-4ubuntu0.11+esm3", "binary_name": "libcupsmime1" }, { "binary_version": "2.1.3-4ubuntu0.11+esm3", "binary_name": "libcupsmime1-dbgsym" }, { "binary_version": "2.1.3-4ubuntu0.11+esm3", "binary_name": "libcupsmime1-dev" }, { "binary_version": "2.1.3-4ubuntu0.11+esm3", "binary_name": "libcupsmime1-dev-dbgsym" }, { "binary_version": "2.1.3-4ubuntu0.11+esm3", "binary_name": "libcupsppdc1" }, { "binary_version": "2.1.3-4ubuntu0.11+esm3", "binary_name": "libcupsppdc1-dbgsym" }, { "binary_version": "2.1.3-4ubuntu0.11+esm3", "binary_name": "libcupsppdc1-dev" }, { "binary_version": "2.1.3-4ubuntu0.11+esm3", "binary_name": "libcupsppdc1-dev-dbgsym" } ] }
{ "availability": "Available with Ubuntu Pro (Infra-only): https://ubuntu.com/pro", "ubuntu_priority": "medium", "binaries": [ { "binary_version": "2.2.7-1ubuntu2.10+esm1", "binary_name": "cups" }, { "binary_version": "2.2.7-1ubuntu2.10+esm1", "binary_name": "cups-bsd" }, { "binary_version": "2.2.7-1ubuntu2.10+esm1", "binary_name": "cups-bsd-dbgsym" }, { "binary_version": "2.2.7-1ubuntu2.10+esm1", "binary_name": "cups-client" }, { "binary_version": "2.2.7-1ubuntu2.10+esm1", "binary_name": "cups-client-dbgsym" }, { "binary_version": "2.2.7-1ubuntu2.10+esm1", "binary_name": "cups-common" }, { "binary_version": "2.2.7-1ubuntu2.10+esm1", "binary_name": "cups-core-drivers" }, { "binary_version": "2.2.7-1ubuntu2.10+esm1", "binary_name": "cups-core-drivers-dbgsym" }, { "binary_version": "2.2.7-1ubuntu2.10+esm1", "binary_name": "cups-daemon" }, { "binary_version": "2.2.7-1ubuntu2.10+esm1", "binary_name": "cups-daemon-dbgsym" }, { "binary_version": "2.2.7-1ubuntu2.10+esm1", "binary_name": "cups-dbgsym" }, { "binary_version": "2.2.7-1ubuntu2.10+esm1", "binary_name": "cups-ipp-utils" }, { "binary_version": "2.2.7-1ubuntu2.10+esm1", "binary_name": "cups-ipp-utils-dbgsym" }, { "binary_version": "2.2.7-1ubuntu2.10+esm1", "binary_name": "cups-ppdc" }, { "binary_version": "2.2.7-1ubuntu2.10+esm1", "binary_name": "cups-ppdc-dbgsym" }, { "binary_version": "2.2.7-1ubuntu2.10+esm1", "binary_name": "cups-server-common" }, { "binary_version": "2.2.7-1ubuntu2.10+esm1", "binary_name": "libcups2" }, { "binary_version": "2.2.7-1ubuntu2.10+esm1", "binary_name": "libcups2-dbgsym" }, { "binary_version": "2.2.7-1ubuntu2.10+esm1", "binary_name": "libcups2-dev" }, { "binary_version": "2.2.7-1ubuntu2.10+esm1", "binary_name": "libcupscgi1" }, { "binary_version": "2.2.7-1ubuntu2.10+esm1", "binary_name": "libcupscgi1-dbgsym" }, { "binary_version": "2.2.7-1ubuntu2.10+esm1", "binary_name": "libcupsimage2" }, { "binary_version": "2.2.7-1ubuntu2.10+esm1", "binary_name": "libcupsimage2-dbgsym" }, { "binary_version": "2.2.7-1ubuntu2.10+esm1", "binary_name": "libcupsimage2-dev" }, { "binary_version": "2.2.7-1ubuntu2.10+esm1", "binary_name": "libcupsmime1" }, { "binary_version": "2.2.7-1ubuntu2.10+esm1", "binary_name": "libcupsmime1-dbgsym" }, { "binary_version": "2.2.7-1ubuntu2.10+esm1", "binary_name": "libcupsppdc1" }, { "binary_version": "2.2.7-1ubuntu2.10+esm1", "binary_name": "libcupsppdc1-dbgsym" } ] }
{ "availability": "No subscription required", "ubuntu_priority": "medium", "binaries": [ { "binary_version": "2.3.1-9ubuntu1.4", "binary_name": "cups" }, { "binary_version": "2.3.1-9ubuntu1.4", "binary_name": "cups-bsd" }, { "binary_version": "2.3.1-9ubuntu1.4", "binary_name": "cups-bsd-dbgsym" }, { "binary_version": "2.3.1-9ubuntu1.4", "binary_name": "cups-client" }, { "binary_version": "2.3.1-9ubuntu1.4", "binary_name": "cups-client-dbgsym" }, { "binary_version": "2.3.1-9ubuntu1.4", "binary_name": "cups-common" }, { "binary_version": "2.3.1-9ubuntu1.4", "binary_name": "cups-core-drivers" }, { "binary_version": "2.3.1-9ubuntu1.4", "binary_name": "cups-core-drivers-dbgsym" }, { "binary_version": "2.3.1-9ubuntu1.4", "binary_name": "cups-daemon" }, { "binary_version": "2.3.1-9ubuntu1.4", "binary_name": "cups-daemon-dbgsym" }, { "binary_version": "2.3.1-9ubuntu1.4", "binary_name": "cups-dbgsym" }, { "binary_version": "2.3.1-9ubuntu1.4", "binary_name": "cups-ipp-utils" }, { "binary_version": "2.3.1-9ubuntu1.4", "binary_name": "cups-ipp-utils-dbgsym" }, { "binary_version": "2.3.1-9ubuntu1.4", "binary_name": "cups-ppdc" }, { "binary_version": "2.3.1-9ubuntu1.4", "binary_name": "cups-ppdc-dbgsym" }, { "binary_version": "2.3.1-9ubuntu1.4", "binary_name": "cups-server-common" }, { "binary_version": "2.3.1-9ubuntu1.4", "binary_name": "libcups2" }, { "binary_version": "2.3.1-9ubuntu1.4", "binary_name": "libcups2-dbgsym" }, { "binary_version": "2.3.1-9ubuntu1.4", "binary_name": "libcups2-dev" }, { "binary_version": "2.3.1-9ubuntu1.4", "binary_name": "libcupsimage2" }, { "binary_version": "2.3.1-9ubuntu1.4", "binary_name": "libcupsimage2-dbgsym" }, { "binary_version": "2.3.1-9ubuntu1.4", "binary_name": "libcupsimage2-dev" } ] }
{ "availability": "No subscription required", "ubuntu_priority": "medium", "binaries": [ { "binary_version": "2.4.1op1-1ubuntu4.4", "binary_name": "cups" }, { "binary_version": "2.4.1op1-1ubuntu4.4", "binary_name": "cups-bsd" }, { "binary_version": "2.4.1op1-1ubuntu4.4", "binary_name": "cups-bsd-dbgsym" }, { "binary_version": "2.4.1op1-1ubuntu4.4", "binary_name": "cups-client" }, { "binary_version": "2.4.1op1-1ubuntu4.4", "binary_name": "cups-client-dbgsym" }, { "binary_version": "2.4.1op1-1ubuntu4.4", "binary_name": "cups-common" }, { "binary_version": "2.4.1op1-1ubuntu4.4", "binary_name": "cups-core-drivers" }, { "binary_version": "2.4.1op1-1ubuntu4.4", "binary_name": "cups-core-drivers-dbgsym" }, { "binary_version": "2.4.1op1-1ubuntu4.4", "binary_name": "cups-daemon" }, { "binary_version": "2.4.1op1-1ubuntu4.4", "binary_name": "cups-daemon-dbgsym" }, { "binary_version": "2.4.1op1-1ubuntu4.4", "binary_name": "cups-dbgsym" }, { "binary_version": "2.4.1op1-1ubuntu4.4", "binary_name": "cups-ipp-utils" }, { "binary_version": "2.4.1op1-1ubuntu4.4", "binary_name": "cups-ipp-utils-dbgsym" }, { "binary_version": "2.4.1op1-1ubuntu4.4", "binary_name": "cups-ppdc" }, { "binary_version": "2.4.1op1-1ubuntu4.4", "binary_name": "cups-ppdc-dbgsym" }, { "binary_version": "2.4.1op1-1ubuntu4.4", "binary_name": "cups-server-common" }, { "binary_version": "2.4.1op1-1ubuntu4.4", "binary_name": "libcups2" }, { "binary_version": "2.4.1op1-1ubuntu4.4", "binary_name": "libcups2-dbgsym" }, { "binary_version": "2.4.1op1-1ubuntu4.4", "binary_name": "libcups2-dev" }, { "binary_version": "2.4.1op1-1ubuntu4.4", "binary_name": "libcupsimage2" }, { "binary_version": "2.4.1op1-1ubuntu4.4", "binary_name": "libcupsimage2-dbgsym" }, { "binary_version": "2.4.1op1-1ubuntu4.4", "binary_name": "libcupsimage2-dev" } ] }