Lucene search

K
nessusThis script is Copyright (C) 2013-2021 and is owned by Tenable, Inc. or an Affiliate thereof.FEDORA_2013-15786.NASL
HistorySep 13, 2013 - 12:00 a.m.

Fedora 19 : perl-Crypt-DSA-1.17-10.fc19 (2013-15786)

2013-09-1300:00:00
This script is Copyright (C) 2013-2021 and is owned by Tenable, Inc. or an Affiliate thereof.
www.tenable.com
8

As taught by the '09 Debian PGP disaster relating to DSA, the randomness source is extremely important. On systems without /dev/random, Crypt::DSA falls back to using Data::Random. Data::Random uses rand(), about which the perldoc says ‘rand() is not cryptographically secure. You should not rely on it in security-sensitive situations.’ In the case of DSA, this is even worse. Using improperly secure randomness sources can compromise the signing key upon signature of a message. See:
http://rdist.root.org/2010/11/19/dsa-requirements-for-random-k-value/ It might seem that this would not affect Linux since /dev/random is always available and so the fall back to Data::Random would never happen. However, if an application is confined using a MAC system such as SELinux then access to /dev/random could be denied by policy and the fall back would be triggered.

Note that Tenable Network Security has extracted the preceding description block directly from the Fedora security advisory. Tenable has attempted to automatically clean and format it as much as possible without introducing additional issues.

#%NASL_MIN_LEVEL 70300
#
# (C) Tenable Network Security, Inc.
#
# The descriptive text and package checks in this plugin were  
# extracted from Fedora Security Advisory 2013-15786.
#

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

if (description)
{
  script_id(69858);
  script_version("1.5");
  script_set_attribute(attribute:"plugin_modification_date", value:"2021/01/11");

  script_cve_id("CVE-2011-3599");
  script_xref(name:"FEDORA", value:"2013-15786");

  script_name(english:"Fedora 19 : perl-Crypt-DSA-1.17-10.fc19 (2013-15786)");
  script_summary(english:"Checks rpm output for the updated package.");

  script_set_attribute(
    attribute:"synopsis", 
    value:"The remote Fedora host is missing a security update."
  );
  script_set_attribute(
    attribute:"description", 
    value:
"As taught by the '09 Debian PGP disaster relating to DSA, the
randomness source is extremely important. On systems without
/dev/random, Crypt::DSA falls back to using Data::Random. Data::Random
uses rand(), about which the perldoc says 'rand() is not
cryptographically secure. You should not rely on it in
security-sensitive situations.' In the case of DSA, this is even
worse. Using improperly secure randomness sources can compromise the
signing key upon signature of a message. See:
http://rdist.root.org/2010/11/19/dsa-requirements-for-random-k-value/
It might seem that this would not affect Linux since /dev/random is
always available and so the fall back to Data::Random would never
happen. However, if an application is confined using a MAC system such
as SELinux then access to /dev/random could be denied by policy and
the fall back would be triggered.

Note that Tenable Network Security has extracted the preceding
description block directly from the Fedora security advisory. Tenable
has attempted to automatically clean and format it as much as possible
without introducing additional issues."
  );
  # http://rdist.root.org/2010/11/19/dsa-requirements-for-random-k-value/
  script_set_attribute(
    attribute:"see_also",
    value:"https://rdist.root.org/2010/11/19/dsa-requirements-for-random-k-value/"
  );
  script_set_attribute(
    attribute:"see_also",
    value:"https://bugzilla.redhat.com/show_bug.cgi?id=743567"
  );
  # https://lists.fedoraproject.org/pipermail/package-announce/2013-September/115603.html
  script_set_attribute(
    attribute:"see_also",
    value:"http://www.nessus.org/u?b8d39785"
  );
  script_set_attribute(
    attribute:"solution", 
    value:"Update the affected perl-Crypt-DSA package."
  );
  script_set_cvss_base_vector("CVSS2#AV:N/AC:M/Au:N/C:P/I:P/A:N");

  script_set_attribute(attribute:"plugin_type", value:"local");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:fedoraproject:fedora:perl-Crypt-DSA");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:fedoraproject:fedora:19");

  script_set_attribute(attribute:"patch_publication_date", value:"2013/09/04");
  script_set_attribute(attribute:"plugin_publication_date", value:"2013/09/13");
  script_end_attributes();

  script_category(ACT_GATHER_INFO);
  script_copyright(english:"This script is Copyright (C) 2013-2021 and is owned by Tenable, Inc. or an Affiliate thereof.");
  script_family(english:"Fedora Local Security Checks");

  script_dependencies("ssh_get_info.nasl");
  script_require_keys("Host/local_checks_enabled", "Host/RedHat/release", "Host/RedHat/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);
release = get_kb_item("Host/RedHat/release");
if (isnull(release) || "Fedora" >!< release) audit(AUDIT_OS_NOT, "Fedora");
os_ver = eregmatch(pattern: "Fedora.*release ([0-9]+)", string:release);
if (isnull(os_ver)) audit(AUDIT_UNKNOWN_APP_VER, "Fedora");
os_ver = os_ver[1];
if (! ereg(pattern:"^19([^0-9]|$)", string:os_ver)) audit(AUDIT_OS_NOT, "Fedora 19.x", "Fedora " + os_ver);

if (!get_kb_item("Host/RedHat/rpm-list")) audit(AUDIT_PACKAGE_LIST_MISSING);

cpu = get_kb_item("Host/cpu");
if (isnull(cpu)) audit(AUDIT_UNKNOWN_ARCH);
if ("x86_64" >!< cpu && cpu !~ "^i[3-6]86$") audit(AUDIT_LOCAL_CHECKS_NOT_IMPLEMENTED, "Fedora", cpu);

flag = 0;
if (rpm_check(release:"FC19", reference:"perl-Crypt-DSA-1.17-10.fc19")) flag++;


if (flag)
{
  if (report_verbosity > 0) security_warning(port:0, extra:rpm_report_get());
  else security_warning(0);
  exit(0);
}
else
{
  tested = pkg_tests_get();
  if (tested) audit(AUDIT_PACKAGE_NOT_AFFECTED, tested);
  else audit(AUDIT_PACKAGE_NOT_INSTALLED, "perl-Crypt-DSA");
}
VendorProductVersionCPE
fedoraprojectfedoraperl-crypt-dsap-cpe:/a:fedoraproject:fedora:perl-crypt-dsa
fedoraprojectfedora19cpe:/o:fedoraproject:fedora:19