socat: Format string vulnerability — GLSA 200410-26

socat contains a format string vulnerability that can potentially lead to remote or local execution of arbitrary code with the privileges of the socat process.

Affected packages

net-misc/socat on all architectures
Affected versions < 1.4.0.3
Unaffected versions >= 1.4.0.3

Background

socat is a multipurpose bidirectional relay, similar to netcat.

Description

socat contains a syslog() based format string vulnerablility in the '_msg()' function of 'error.c'. Exploitation of this bug is only possible when socat is run with the '-ly' option, causing it to log messages to syslog.

Impact

Remote exploitation is possible when socat is used as a HTTP proxy client and connects to a malicious server. Local privilege escalation can be achieved when socat listens on a UNIX domain socket. Potential execution of arbitrary code with the privileges of the socat process is possible with both local and remote exploitations.

Workaround

Disable logging to syslog by not using the '-ly' option when starting socat.

Resolution

All socat users should upgrade to the latest version:

 # emerge --sync
 # emerge --ask --oneshot --verbose ">=net-misc/socat-1.4.0.3"

References

Release date
October 25, 2004

Latest revision
May 22, 2006: 02

Severity
normal

Exploitable
remote

Bugzilla entries