Secunia has released and advisory affecting cups printing system:
A vulnerability has been discovered in CUPS, which can be exploited by
malicious people to cause a DoS (Denial of Service) or to potentially
compromise a vulnerable system.
The vulnerability is caused due to an error within the
"process_browse_data()" function when adding printers and classes. This
can be exploited to free the same buffer twice by sending specially
crafted browser packets to the UDP port on which cupsd is listening (by
default port 631/UDP).
Successful exploitation may allow execution of arbitrary code.
The vulnerability is confirmed in version 1.3.5. Prior versions may also
Update to version 1.3.6.
Upstream bug report:
Further info from Tim Waugh:
In Red Hat Enterprise Linux 3, 4 and 5 we ship with 'BrowseAllow
@LOCAL' (the upstream default at the time), which causes CUPS to drop
UDP Browse packets from source IP addresses not matching a local subnet
(i.e. interface address & netmask, for each interface).
In Fedora we ship with 'BrowseAll All' in the CUPS configuration,
which allows all UDP Browse packets in.
Communication to 631/udp is allowed by default in iptables configuration.
We've determined through source code analysis that the older versions of CUPS as
shipped in Red Hat Enterprise Linux 3 and 4 do not contain the code that can
cause this double-free to occur. We also tested this using a reproducer.
Red Hat Enterprise Linux 5 does have the double-free and we can cause CUPS to
remotely crash using an internal reproducer. However the glibc pointer checking
as part of Enterprise Linux 5 limits the exploitability of this issue to just a
crash of CUPS and not the ability to execute arbitrary code.
cups-1.2.12-9.fc7 has been submitted as an update for Fedora 7
cups-1.3.6-2.fc8 has been pushed to the Fedora 8 stable repository. If problems still persist, please make note of it in this bug report.
cups-1.2.12-9.fc7 has been pushed to the Fedora 7 stable repository. If problems still persist, please make note of it in this bug report.
This issue was addressed in:
Red Hat Enterprise Linux: