Vulnerabilities > CVE-2004-0649
Attack vector
UNKNOWN Attack complexity
UNKNOWN Privileges required
UNKNOWN Confidentiality impact
UNKNOWN Integrity impact
UNKNOWN Availability impact
UNKNOWN Summary
Buffer overflow in write_packet in control.c for l2tpd may allow remote attackers to execute arbitrary code.
Vulnerable Configurations
Part | Description | Count |
---|---|---|
Application | 8 | |
OS | 1 |
Nessus
NASL family Gentoo Local Security Checks NASL id GENTOO_GLSA-200407-17.NASL description The remote host is affected by the vulnerability described in GLSA-200407-17 (l2tpd: Buffer overflow) Thomas Walpuski discovered a buffer overflow that may be exploitable by sending a specially crafted packet. In order to exploit the vulnerable code, an attacker would need to fake the establishment of an L2TP tunnel. Impact : A remote attacker may be able to execute arbitrary code with the privileges of the user running l2tpd. Workaround : There is no known workaround for this vulnerability. last seen 2020-06-01 modified 2020-06-02 plugin id 14550 published 2004-08-30 reporter This script is Copyright (C) 2004-2019 and is owned by Tenable, Inc. or an Affiliate thereof. source https://www.tenable.com/plugins/nessus/14550 title GLSA-200407-17 : l2tpd: Buffer overflow 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 200407-17. # # The advisory text is Copyright (C) 2001-2018 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(14550); script_version("1.16"); script_cvs_date("Date: 2019/08/02 13:32:41"); script_cve_id("CVE-2004-0649"); script_xref(name:"GLSA", value:"200407-17"); script_name(english:"GLSA-200407-17 : l2tpd: Buffer overflow"); 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-200407-17 (l2tpd: Buffer overflow) Thomas Walpuski discovered a buffer overflow that may be exploitable by sending a specially crafted packet. In order to exploit the vulnerable code, an attacker would need to fake the establishment of an L2TP tunnel. Impact : A remote attacker may be able to execute arbitrary code with the privileges of the user running l2tpd. Workaround : There is no known workaround for this vulnerability." ); # http://seclists.org/lists/fulldisclosure/2004/Jun/0094.html script_set_attribute( attribute:"see_also", value:"https://seclists.org/lists/fulldisclosure/2004/Jun/0094.html" ); script_set_attribute( attribute:"see_also", value:"https://security.gentoo.org/glsa/200407-17" ); script_set_attribute( attribute:"solution", value: "All users are recommended to upgrade to the latest stable version: # emerge sync # emerge -pv '>=net-l2tpd-0.69-r2' # emerge '>=net-l2tpd-0.69-r2'" ); script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:N/C:C/I:C/A:C"); script_set_attribute(attribute:"plugin_type", value:"local"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:gentoo:linux:l2tpd"); script_set_attribute(attribute:"cpe", value:"cpe:/o:gentoo:linux"); script_set_attribute(attribute:"patch_publication_date", value:"2004/07/22"); script_set_attribute(attribute:"plugin_publication_date", value:"2004/08/30"); script_end_attributes(); script_category(ACT_GATHER_INFO); script_copyright(english:"This script is Copyright (C) 2004-2019 and is owned by Tenable, Inc. or an Affiliate thereof."); 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-dialup/l2tpd", unaffected:make_list("ge 0.69-r2"), vulnerable:make_list("lt 0.69-r2"))) flag++; if (flag) { if (report_verbosity > 0) security_hole(port:0, extra:qpkg_report_get()); else security_hole(0); exit(0); } else { tested = qpkg_tests_get(); if (tested) audit(AUDIT_PACKAGE_NOT_AFFECTED, tested); else audit(AUDIT_PACKAGE_NOT_INSTALLED, "l2tpd"); }
NASL family Debian Local Security Checks NASL id DEBIAN_DSA-530.NASL description Thomas Walpuski reported a buffer overflow in l2tpd, an implementation of the layer 2 tunneling protocol, whereby a remote attacker could potentially cause arbitrary code to be executed by transmitting a specially crafted packet. The exploitability of this vulnerability has not been verified. last seen 2020-06-01 modified 2020-06-02 plugin id 15367 published 2004-09-29 reporter This script is Copyright (C) 2004-2019 Tenable Network Security, Inc. source https://www.tenable.com/plugins/nessus/15367 title Debian DSA-530-1 : l2tpd - buffer overflow code #%NASL_MIN_LEVEL 80502 # # (C) Tenable Network Security, Inc. # # The descriptive text and package checks in this plugin were # extracted from Debian Security Advisory DSA-530. The text # itself is copyright (C) Software in the Public Interest, Inc. # include("compat.inc"); if (description) { script_id(15367); script_version("1.18"); script_cvs_date("Date: 2019/08/02 13:32:18"); script_cve_id("CVE-2004-0649"); script_xref(name:"DSA", value:"530"); script_name(english:"Debian DSA-530-1 : l2tpd - buffer overflow"); script_summary(english:"Checks dpkg output for the updated package"); script_set_attribute( attribute:"synopsis", value:"The remote Debian host is missing a security-related update." ); script_set_attribute( attribute:"description", value: "Thomas Walpuski reported a buffer overflow in l2tpd, an implementation of the layer 2 tunneling protocol, whereby a remote attacker could potentially cause arbitrary code to be executed by transmitting a specially crafted packet. The exploitability of this vulnerability has not been verified." ); script_set_attribute( attribute:"see_also", value:"http://www.debian.org/security/2004/dsa-530" ); script_set_attribute( attribute:"solution", value: "For the current stable distribution (woody), this problem has been fixed in version 0.67-1.2. We recommend that you update your l2tpd package." ); script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:N/C:C/I:C/A:C"); script_set_attribute(attribute:"plugin_type", value:"local"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:debian:debian_linux:l2tpd"); script_set_attribute(attribute:"cpe", value:"cpe:/o:debian:debian_linux:3.0"); script_set_attribute(attribute:"patch_publication_date", value:"2004/07/17"); script_set_attribute(attribute:"plugin_publication_date", value:"2004/09/29"); 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:"Debian Local Security Checks"); script_dependencies("ssh_get_info.nasl"); script_require_keys("Host/local_checks_enabled", "Host/Debian/release", "Host/Debian/dpkg-l"); exit(0); } include("audit.inc"); include("debian_package.inc"); if (!get_kb_item("Host/local_checks_enabled")) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED); if (!get_kb_item("Host/Debian/release")) audit(AUDIT_OS_NOT, "Debian"); if (!get_kb_item("Host/Debian/dpkg-l")) audit(AUDIT_PACKAGE_LIST_MISSING); flag = 0; if (deb_check(release:"3.0", prefix:"l2tpd", reference:"0.67-1.2")) flag++; if (flag) { if (report_verbosity > 0) security_hole(port:0, extra:deb_report_get()); else security_hole(0); exit(0); } else audit(AUDIT_HOST_NOT, "affected");
NASL family Gain a shell remotely NASL id L2TPD_OVERFLOW2.NASL description The remote host is running a version of l2tpd which is older or equal to 0.68. This version is vulnerable to a buffer overflow which might allow an attacker to execute arbitrary commands on the remote host with super-user privileges. last seen 2020-06-01 modified 2020-06-02 plugin id 13659 published 2004-07-22 reporter This script is Copyright (C) 2004-2018 Tenable Network Security, Inc. source https://www.tenable.com/plugins/nessus/13659 title l2tpd < 0.69 control.c write_packet Function Remote Overflow code # # (C) Tenable Network Security, Inc. # # include("compat.inc"); if (description) { script_id(13659); script_version ("1.15"); script_cve_id("CVE-2004-0649"); script_bugtraq_id(10466); script_name(english:"l2tpd < 0.69 control.c write_packet Function Remote Overflow"); script_set_attribute(attribute:"synopsis", value: "The remote host is running a network tunneling application that is affected by a buffer overflow vulnerability." ); script_set_attribute(attribute:"description", value: "The remote host is running a version of l2tpd which is older or equal to 0.68. This version is vulnerable to a buffer overflow which might allow an attacker to execute arbitrary commands on the remote host with super-user privileges." ); script_set_attribute(attribute:"see_also", value:"https://seclists.org/bugtraq/2004/Jun/73" ); script_set_attribute(attribute:"solution", value: "Upgrade to l2tpd 0.69 or later." ); script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:N/C:C/I:C/A:C"); script_set_cvss_temporal_vector("CVSS2#E:U/RL:OF/RC:C"); script_set_attribute(attribute:"exploitability_ease", value:"No known exploits are available"); script_set_attribute(attribute:"exploit_available", value:"false"); script_set_attribute(attribute:"plugin_publication_date", value: "2004/07/22"); script_set_attribute(attribute:"vuln_publication_date", value: "2004/06/07"); script_cvs_date("Date: 2018/11/15 20:50:22"); script_set_attribute(attribute:"plugin_type", value:"remote"); script_end_attributes(); script_summary(english:"Determines the version of the remote l2tpd"); script_category(ACT_GATHER_INFO); script_family(english:"Gain a shell remotely"); script_copyright(english:"This script is Copyright (C) 2004-2018 Tenable Network Security, Inc."); script_dependencie("l2tp_detection.nasl"); script_require_ports("Services/udp/l2tp"); exit(0); } if (! get_kb_item("Services/udp/l2tp") ) exit(0); port = 1701; if (! get_udp_port_state(port)) exit(0, "UDP port "+port+" is not open."); function find_firmware(rep) { local_var firmware, i, len; for(i=12;i<strlen(rep);i++) { len = ord(rep[i]) * 256 + ord(rep[i+1]); if(ord(rep[i]) & 0x80)len -= 0x80 * 256; if(ord(rep[i+5]) == 6) { firmware = ord(rep[i+6]) * 256 + ord(rep[i+7]); return firmware; } else i += len - 1; } return NULL; } req = raw_string(0xC8, 2, 0, 20, 0, 0, 0, 0,0,0,0,0,0,8, 0,0,0,0,0,0); soc = open_sock_udp(port); send(socket:soc, data:req); r = recv(socket:soc, length:1024); if(!r)exit(0); close(soc); if(("l2tpd" >< r) || ("Adtran" >< r)) { firmware = find_firmware(rep:r); hi = firmware / 256; lo = firmware % 256; if((hi == 0x06) && (lo < 0x90))security_hole(port:port, proto:"udp"); }