Lucene search

K
nessusThis script is Copyright (C) 2021-2023 and is owned by Tenable, Inc. or an Affiliate thereof.DEBIAN_DLA-2770.NASL
HistoryOct 01, 2021 - 12:00 a.m.

Debian DLA-2770-1 : weechat - LTS security update

2021-10-0100:00:00
This script is Copyright (C) 2021-2023 and is owned by Tenable, Inc. or an Affiliate thereof.
www.tenable.com
12

9.7 High

AI Score

Confidence

High

The remote Debian 9 host has packages installed that are affected by multiple vulnerabilities as referenced in the dla-2770 advisory.

  • irc_mode_channel_update in plugins/irc/irc-mode.c in WeeChat through 2.7 allows remote attackers to cause a denial of service (buffer overflow and application crash) or possibly have unspecified other impact via a malformed IRC message 324 (channel mode). (CVE-2020-8955)

  • A Vulnerability of LG Electronic web OS TV Emulator could allow an attacker to escalate privileges and overwrite certain files. This vulnerability is due to wrong environment setting. An attacker could exploit this vulnerability through crafted configuration files and executable files. (CVE-2020-9759)

  • An issue was discovered in WeeChat before 2.7.1 (0.3.4 to 2.7 are affected). When a new IRC message 005 is received with longer nick prefixes, a buffer overflow and possibly a crash can happen when a new mode is set for a nick. (CVE-2020-9760)

  • WeeChat before 3.2.1 allows remote attackers to cause a denial of service (crash) via a crafted WebSocket frame that trigger an out-of-bounds read in plugins/relay/relay-websocket.c in the Relay plugin.
    (CVE-2021-40516)

Note that Nessus has not tested for this issue but has instead relied only on the application’s self-reported version number.

#%NASL_MIN_LEVEL 70300
#
# (C) Tenable Network Security, Inc.
#
# The descriptive text and package checks in this plugin were
# extracted from Debian Security Advisory dla-2770. The text
# itself is copyright (C) Software in the Public Interest, Inc.
#

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

if (description)
{
  script_id(153809);
  script_version("1.5");
  script_set_attribute(attribute:"plugin_modification_date", value:"2023/11/29");

  script_cve_id(
    "CVE-2020-8955",
    "CVE-2020-9759",
    "CVE-2020-9760",
    "CVE-2021-40516"
  );

  script_name(english:"Debian DLA-2770-1 : weechat - LTS security update");

  script_set_attribute(attribute:"synopsis", value:
"The remote Debian host is missing one or more security-related updates.");
  script_set_attribute(attribute:"description", value:
"The remote Debian 9 host has packages installed that are affected by multiple vulnerabilities as referenced in the
dla-2770 advisory.

  - irc_mode_channel_update in plugins/irc/irc-mode.c in WeeChat through 2.7 allows remote attackers to cause
    a denial of service (buffer overflow and application crash) or possibly have unspecified other impact via
    a malformed IRC message 324 (channel mode). (CVE-2020-8955)

  - A Vulnerability of LG Electronic web OS TV Emulator could allow an attacker to escalate privileges and
    overwrite certain files. This vulnerability is due to wrong environment setting. An attacker could exploit
    this vulnerability through crafted configuration files and executable files. (CVE-2020-9759)

  - An issue was discovered in WeeChat before 2.7.1 (0.3.4 to 2.7 are affected). When a new IRC message 005 is
    received with longer nick prefixes, a buffer overflow and possibly a crash can happen when a new mode is
    set for a nick. (CVE-2020-9760)

  - WeeChat before 3.2.1 allows remote attackers to cause a denial of service (crash) via a crafted WebSocket
    frame that trigger an out-of-bounds read in plugins/relay/relay-websocket.c in the Relay plugin.
    (CVE-2021-40516)

Note that Nessus has not tested for this issue but has instead relied only on the application's self-reported version
number.");
  script_set_attribute(attribute:"see_also", value:"https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=951289");
  script_set_attribute(attribute:"see_also", value:"https://security-tracker.debian.org/tracker/source-package/weechat");
  script_set_attribute(attribute:"see_also", value:"https://www.debian.org/lts/security/2021/dla-2770");
  script_set_attribute(attribute:"see_also", value:"https://security-tracker.debian.org/tracker/CVE-2020-8955");
  script_set_attribute(attribute:"see_also", value:"https://security-tracker.debian.org/tracker/CVE-2020-9759");
  script_set_attribute(attribute:"see_also", value:"https://security-tracker.debian.org/tracker/CVE-2020-9760");
  script_set_attribute(attribute:"see_also", value:"https://security-tracker.debian.org/tracker/CVE-2021-40516");
  script_set_attribute(attribute:"see_also", value:"https://packages.debian.org/source/stretch/weechat");
  script_set_attribute(attribute:"solution", value:
"Upgrade the weechat packages.

For Debian 9 stretch, these problems have been fixed in version 1.6-1+deb9u3.");
  script_set_cvss_base_vector("CVSS2#AV:N/AC:M/Au:N/C:C/I:C/A:C");
  script_set_cvss_temporal_vector("CVSS2#E:POC/RL:OF/RC:C");
  script_set_cvss3_base_vector("CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H");
  script_set_cvss3_temporal_vector("CVSS:3.0/E:P/RL:O/RC:C");
  script_set_attribute(attribute:"cvss_score_source", value:"CVE-2020-9759");
  script_set_attribute(attribute:"cvss3_score_source", value:"CVE-2020-9760");

  script_set_attribute(attribute:"exploitability_ease", value:"Exploits are available");
  script_set_attribute(attribute:"exploit_available", value:"true");

  script_set_attribute(attribute:"vuln_publication_date", value:"2020/02/12");
  script_set_attribute(attribute:"patch_publication_date", value:"2021/09/30");
  script_set_attribute(attribute:"plugin_publication_date", value:"2021/10/01");

  script_set_attribute(attribute:"plugin_type", value:"local");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:debian:debian_linux:weechat");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:debian:debian_linux:weechat-core");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:debian:debian_linux:weechat-curses");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:debian:debian_linux:weechat-dbg");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:debian:debian_linux:weechat-dev");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:debian:debian_linux:weechat-doc");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:debian:debian_linux:weechat-plugins");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:debian:debian_linux:9.0");
  script_end_attributes();

  script_category(ACT_GATHER_INFO);
  script_family(english:"Debian Local Security Checks");

  script_copyright(english:"This script is Copyright (C) 2021-2023 and is owned by Tenable, Inc. or an Affiliate thereof.");

  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/dpkg-l")) audit(AUDIT_PACKAGE_LIST_MISSING);

var release = get_kb_item('Host/Debian/release');
if ( isnull(release) ) audit(AUDIT_OS_NOT, 'Debian');
var release = chomp(release);
if (! preg(pattern:"^(9)\.[0-9]+", string:release)) audit(AUDIT_OS_NOT, 'Debian 9.0', 'Debian ' + release);
var cpu = get_kb_item('Host/cpu');
if (isnull(cpu)) audit(AUDIT_UNKNOWN_ARCH);
if ('x86_64' >!< cpu && cpu !~ "^i[3-6]86$" && 'aarch64' >!< cpu) audit(AUDIT_LOCAL_CHECKS_NOT_IMPLEMENTED, 'Debian', cpu);

var pkgs = [
    {'release': '9.0', 'prefix': 'weechat', 'reference': '1.6-1+deb9u3'},
    {'release': '9.0', 'prefix': 'weechat-core', 'reference': '1.6-1+deb9u3'},
    {'release': '9.0', 'prefix': 'weechat-curses', 'reference': '1.6-1+deb9u3'},
    {'release': '9.0', 'prefix': 'weechat-dbg', 'reference': '1.6-1+deb9u3'},
    {'release': '9.0', 'prefix': 'weechat-dev', 'reference': '1.6-1+deb9u3'},
    {'release': '9.0', 'prefix': 'weechat-doc', 'reference': '1.6-1+deb9u3'},
    {'release': '9.0', 'prefix': 'weechat-plugins', 'reference': '1.6-1+deb9u3'}
];

var flag = 0;
foreach package_array ( pkgs ) {
  var release = NULL;
  var prefix = NULL;
  var reference = NULL;
  if (!empty_or_null(package_array['release'])) release = package_array['release'];
  if (!empty_or_null(package_array['prefix'])) prefix = package_array['prefix'];
  if (!empty_or_null(package_array['reference'])) reference = package_array['reference'];
  if (release && prefix && reference) {
    if (deb_check(release:release, prefix:prefix, reference:reference)) flag++;
  }
}

if (flag)
{
  security_report_v4(
    port       : 0,
    severity   : SECURITY_HOLE,
    extra      : deb_report_get()
  );
  exit(0);
}
else
{
  var tested = deb_pkg_tests_get();
  if (tested) audit(AUDIT_PACKAGE_NOT_AFFECTED, tested);
  else audit(AUDIT_PACKAGE_NOT_INSTALLED, 'weechat / weechat-core / weechat-curses / weechat-dbg / weechat-dev / etc');
}
VendorProductVersionCPE
debiandebian_linuxweechatp-cpe:/a:debian:debian_linux:weechat
debiandebian_linuxweechat-corep-cpe:/a:debian:debian_linux:weechat-core
debiandebian_linuxweechat-cursesp-cpe:/a:debian:debian_linux:weechat-curses
debiandebian_linuxweechat-dbgp-cpe:/a:debian:debian_linux:weechat-dbg
debiandebian_linuxweechat-devp-cpe:/a:debian:debian_linux:weechat-dev
debiandebian_linuxweechat-docp-cpe:/a:debian:debian_linux:weechat-doc
debiandebian_linuxweechat-pluginsp-cpe:/a:debian:debian_linux:weechat-plugins
debiandebian_linux9.0cpe:/o:debian:debian_linux:9.0