Vulnerabilities > CVE-2004-1484 - Remote Format String vulnerability in Socat

047910
CVSS 5.0 - MEDIUM
Attack vector
NETWORK
Attack complexity
LOW
Privileges required
NONE
Confidentiality impact
NONE
Integrity impact
PARTIAL
Availability impact
NONE
network
low complexity
socat
nessus
exploit available

Summary

Format string vulnerability in the _msg function in error.c in socat 1.4.0.3 and earlier, when used as an HTTP proxy client and run with the -ly option, allows remote attackers or local users to execute arbitrary code via format string specifiers in a syslog message.

Exploit-Db

descriptionsocat <= 1.4.0.2 Local Format String Exploit (not setuid). CVE-2004-1484. Local exploit for linux platform
idEDB-ID:591
last seen2016-01-31
modified2004-10-23
published2004-10-23
reporterCoKi
sourcehttps://www.exploit-db.com/download/591/
titlesocat <= 1.4.0.2 - Local Format String Exploit not setuid

Nessus

NASL familyGentoo Local Security Checks
NASL idGENTOO_GLSA-200410-26.NASL
descriptionThe remote host is affected by the vulnerability described in GLSA-200410-26 (socat: Format string vulnerability) socat contains a syslog() based format string vulnerablility in the
last seen2020-06-01
modified2020-06-02
plugin id15568
published2004-10-26
reporterThis script is Copyright (C) 2004-2019 Tenable Network Security, Inc.
sourcehttps://www.tenable.com/plugins/nessus/15568
titleGLSA-200410-26 : socat: Format string vulnerability
code
#%NASL_MIN_LEVEL 80502
#
# (C) Tenable Network Security, Inc.
#
# The descriptive text and package checks in this plugin were
# extracted from Gentoo Linux Security Advisory GLSA 200410-26.
#
# The advisory text is Copyright (C) 2001-2015 Gentoo Foundation, Inc.
# and licensed under the Creative Commons - Attribution / Share Alike 
# license. See http://creativecommons.org/licenses/by-sa/3.0/
#

include("compat.inc");

if (description)
{
  script_id(15568);
  script_version("1.14");
  script_cvs_date("Date: 2019/08/02 13:32:41");

  script_cve_id("CVE-2004-1484");
  script_xref(name:"GLSA", value:"200410-26");

  script_name(english:"GLSA-200410-26 : socat: Format string vulnerability");
  script_summary(english:"Checks for updated package(s) in /var/db/pkg");

  script_set_attribute(
    attribute:"synopsis", 
    value:
"The remote Gentoo host is missing one or more security-related
patches."
  );
  script_set_attribute(
    attribute:"description", 
    value:
"The remote host is affected by the vulnerability described in GLSA-200410-26
(socat: Format string vulnerability)

    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."
  );
  script_set_attribute(
    attribute:"see_also",
    value:"http://www.dest-unreach.org/socat/advisory/socat-adv-1.html"
  );
  script_set_attribute(
    attribute:"see_also",
    value:"https://security.gentoo.org/glsa/200410-26"
  );
  script_set_attribute(
    attribute:"solution", 
    value:
"All socat users should upgrade to the latest version:
    # emerge --sync
    # emerge --ask --oneshot --verbose '>=net-misc/socat-1.4.0.3'"
  );
  script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:N/C:N/I:P/A:N");

  script_set_attribute(attribute:"plugin_type", value:"local");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:gentoo:linux:socat");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:gentoo:linux");

  script_set_attribute(attribute:"patch_publication_date", value:"2004/10/25");
  script_set_attribute(attribute:"plugin_publication_date", value:"2004/10/26");
  script_set_attribute(attribute:"vuln_publication_date", value:"2004/10/18");
  script_end_attributes();

  script_category(ACT_GATHER_INFO);
  script_copyright(english:"This script is Copyright (C) 2004-2019 Tenable Network Security, Inc.");
  script_family(english:"Gentoo Local Security Checks");

  script_dependencies("ssh_get_info.nasl");
  script_require_keys("Host/local_checks_enabled", "Host/Gentoo/release", "Host/Gentoo/qpkg-list");

  exit(0);
}


include("audit.inc");
include("global_settings.inc");
include("qpkg.inc");

if (!get_kb_item("Host/local_checks_enabled")) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED);
if (!get_kb_item("Host/Gentoo/release")) audit(AUDIT_OS_NOT, "Gentoo");
if (!get_kb_item("Host/Gentoo/qpkg-list")) audit(AUDIT_PACKAGE_LIST_MISSING);


flag = 0;

if (qpkg_check(package:"net-misc/socat", unaffected:make_list("ge 1.4.0.3"), vulnerable:make_list("lt 1.4.0.3"))) flag++;

if (flag)
{
  if (report_verbosity > 0) security_warning(port:0, extra:qpkg_report_get());
  else security_warning(0);
  exit(0);
}
else
{
  tested = qpkg_tests_get();
  if (tested) audit(AUDIT_PACKAGE_NOT_AFFECTED, tested);
  else audit(AUDIT_PACKAGE_NOT_INSTALLED, "socat");
}