Lucene search

K
nessusThis script is Copyright (C) 2004-2021 Tenable Network Security, Inc.MANDRAKE_MDKSA-2004-031.NASL
HistoryJul 31, 2004 - 12:00 a.m.

Mandrake Linux Security Advisory : utempter (MDKSA-2004:031-1)

2004-07-3100:00:00
This script is Copyright (C) 2004-2021 Tenable Network Security, Inc.
www.tenable.com
22

Steve Grubb discovered two potential issues in the utempter program :

  1. If the path to the device contained /…/ or /./ or //, the program was not exiting as it should. It would be possible to use something like /dev/…/tmp/tty0, and then if /tmp/tty0 were deleted and symlinked to another important file, programs that have root privileges that do no further validation can then overwrite whatever the symlink pointed to.

  2. Several calls to strncpy without a manual termination of the string. This would most likely crash utempter.

The updated packages are patched to correct these problems.

Update :

The second portion of the patch to address the manual termination of the string has been determined to be uneccessary, as well as reducing the length of utmp strings by one character. As such, it has been removed.

#%NASL_MIN_LEVEL 70300

#
# (C) Tenable Network Security, Inc.
#
# The descriptive text and package checks in this plugin were  
# extracted from Mandrake Linux Security Advisory MDKSA-2004:031. 
# The text itself is copyright (C) Mandriva S.A.
#

include('deprecated_nasl_level.inc');
include('compat.inc');

if (description)
{
  script_id(14130);
  script_version("1.20");
  script_set_attribute(attribute:"plugin_modification_date", value:"2021/01/06");

  script_cve_id("CVE-2004-0233");
  script_xref(name:"MDKSA", value:"2004:031-1");

  script_name(english:"Mandrake Linux Security Advisory : utempter (MDKSA-2004:031-1)");
  script_summary(english:"Checks rpm output for the updated packages");

  script_set_attribute(
    attribute:"synopsis", 
    value:
"The remote Mandrake Linux host is missing one or more security
updates."
  );
  script_set_attribute(
    attribute:"description", 
    value:
"Steve Grubb discovered two potential issues in the utempter program :

1) If the path to the device contained /../ or /./ or //, the program
was not exiting as it should. It would be possible to use something
like /dev/../tmp/tty0, and then if /tmp/tty0 were deleted and
symlinked to another important file, programs that have root
privileges that do no further validation can then overwrite whatever
the symlink pointed to.

2) Several calls to strncpy without a manual termination of the
string. This would most likely crash utempter.

The updated packages are patched to correct these problems.

Update :

The second portion of the patch to address the manual termination of
the string has been determined to be uneccessary, as well as reducing
the length of utmp strings by one character. As such, it has been
removed."
  );
  script_set_attribute(attribute:"solution", value:"Update the affected packages.");
  script_set_cvss_base_vector("CVSS2#AV:L/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:mandriva:linux:lib64utempter0");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:mandriva:linux:lib64utempter0-devel");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:mandriva:linux:libutempter0");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:mandriva:linux:libutempter0-devel");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:mandriva:linux:utempter");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:mandrakesoft:mandrake_linux:10.0");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:mandrakesoft:mandrake_linux:9.1");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:mandrakesoft:mandrake_linux:9.2");

  script_set_attribute(attribute:"patch_publication_date", value:"2004/04/21");
  script_set_attribute(attribute:"plugin_publication_date", value:"2004/07/31");
  script_end_attributes();

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

  script_dependencies("ssh_get_info.nasl");
  script_require_keys("Host/local_checks_enabled", "Host/cpu", "Host/Mandrake/release", "Host/Mandrake/rpm-list");

  exit(0);
}


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


if (!get_kb_item("Host/local_checks_enabled")) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED);
if (!get_kb_item("Host/Mandrake/release")) audit(AUDIT_OS_NOT, "Mandriva / Mandake Linux");
if (!get_kb_item("Host/Mandrake/rpm-list")) audit(AUDIT_PACKAGE_LIST_MISSING);

cpu = get_kb_item("Host/cpu");
if (isnull(cpu)) audit(AUDIT_UNKNOWN_ARCH);
if (cpu !~ "^(amd64|i[3-6]86|x86_64)$") audit(AUDIT_LOCAL_CHECKS_NOT_IMPLEMENTED, "Mandriva / Mandrake Linux", cpu);


flag = 0;
if (rpm_check(release:"MDK10.0", cpu:"amd64", reference:"lib64utempter0-0.5.2-12.2.100mdk", yank:"mdk")) flag++;
if (rpm_check(release:"MDK10.0", cpu:"amd64", reference:"lib64utempter0-devel-0.5.2-12.2.100mdk", yank:"mdk")) flag++;
if (rpm_check(release:"MDK10.0", cpu:"i386", reference:"libutempter0-0.5.2-12.2.100mdk", yank:"mdk")) flag++;
if (rpm_check(release:"MDK10.0", cpu:"i386", reference:"libutempter0-devel-0.5.2-12.2.100mdk", yank:"mdk")) flag++;
if (rpm_check(release:"MDK10.0", reference:"utempter-0.5.2-12.2.100mdk", yank:"mdk")) flag++;

if (rpm_check(release:"MDK9.1", cpu:"i386", reference:"libutempter0-0.5.2-10.2.91mdk", yank:"mdk")) flag++;
if (rpm_check(release:"MDK9.1", cpu:"i386", reference:"libutempter0-devel-0.5.2-10.2.91mdk", yank:"mdk")) flag++;
if (rpm_check(release:"MDK9.1", cpu:"i386", reference:"utempter-0.5.2-10.2.91mdk", yank:"mdk")) flag++;

if (rpm_check(release:"MDK9.2", cpu:"amd64", reference:"lib64utempter0-0.5.2-12.2.92mdk", yank:"mdk")) flag++;
if (rpm_check(release:"MDK9.2", cpu:"amd64", reference:"lib64utempter0-devel-0.5.2-12.2.92mdk", yank:"mdk")) flag++;
if (rpm_check(release:"MDK9.2", cpu:"i386", reference:"libutempter0-0.5.2-12.2.92mdk", yank:"mdk")) flag++;
if (rpm_check(release:"MDK9.2", cpu:"i386", reference:"libutempter0-devel-0.5.2-12.2.92mdk", yank:"mdk")) flag++;
if (rpm_check(release:"MDK9.2", reference:"utempter-0.5.2-12.2.92mdk", yank:"mdk")) flag++;


if (flag)
{
  if (report_verbosity > 0) security_note(port:0, extra:rpm_report_get());
  else security_note(0);
  exit(0);
}
else audit(AUDIT_HOST_NOT, "affected");
VendorProductVersionCPE
mandrivalinuxlib64utempter0p-cpe:/a:mandriva:linux:lib64utempter0
mandrivalinuxlib64utempter0-develp-cpe:/a:mandriva:linux:lib64utempter0-devel
mandrivalinuxlibutempter0p-cpe:/a:mandriva:linux:libutempter0
mandrivalinuxlibutempter0-develp-cpe:/a:mandriva:linux:libutempter0-devel
mandrivalinuxutempterp-cpe:/a:mandriva:linux:utempter
mandrakesoftmandrake_linux10.0cpe:/o:mandrakesoft:mandrake_linux:10.0
mandrakesoftmandrake_linux9.1cpe:/o:mandrakesoft:mandrake_linux:9.1
mandrakesoftmandrake_linux9.2cpe:/o:mandrakesoft:mandrake_linux:9.2