The remote host is missing an update for the
# SPDX-FileCopyrightText: 2022 Greenbone AG
# Some text descriptions might be excerpted from (a) referenced
# source(s), and are Copyright (C) by the respective right holder(s).
#
# SPDX-License-Identifier: GPL-2.0-only
if(description)
{
script_oid("1.3.6.1.4.1.25623.1.1.10.2021.0571");
script_cve_id("CVE-2021-44538");
script_tag(name:"creation_date", value:"2022-01-28 10:58:44 +0000 (Fri, 28 Jan 2022)");
script_version("2024-02-02T05:06:09+0000");
script_tag(name:"last_modification", value:"2024-02-02 05:06:09 +0000 (Fri, 02 Feb 2024)");
script_tag(name:"cvss_base", value:"7.5");
script_tag(name:"cvss_base_vector", value:"AV:N/AC:L/Au:N/C:P/I:P/A:P");
script_tag(name:"severity_vector", value:"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H");
script_tag(name:"severity_origin", value:"NVD");
script_tag(name:"severity_date", value:"2021-12-21 17:29:02 +0000 (Tue, 21 Dec 2021)");
script_name("Mageia: Security Advisory (MGASA-2021-0571)");
script_category(ACT_GATHER_INFO);
script_copyright("Copyright (C) 2022 Greenbone AG");
script_family("Mageia Linux Local Security Checks");
script_dependencies("gather-package-list.nasl");
script_mandatory_keys("ssh/login/mageia_linux", "ssh/login/release", re:"ssh/login/release=MAGEIA8");
script_xref(name:"Advisory-ID", value:"MGASA-2021-0571");
script_xref(name:"URL", value:"https://advisories.mageia.org/MGASA-2021-0571.html");
script_xref(name:"URL", value:"https://bugs.mageia.org/show_bug.cgi?id=29773");
script_xref(name:"URL", value:"https://matrix.org/blog/2021/12/13/disclosure-buffer-overflow-in-libolm-and-matrix-js-sdk");
script_tag(name:"summary", value:"The remote host is missing an update for the 'olm' package(s) announced via the MGASA-2021-0571 advisory.");
script_tag(name:"vuldetect", value:"Checks if a vulnerable package version is present on the target host.");
script_tag(name:"insight", value:"Updated olm packages fix security vulnerability:
The olm_session_describe function in Matrix libolm before 3.2.7 is
vulnerable to a buffer overflow. The Olm session object represents a
cryptographic channel between two parties. Therefore, its state is
partially controllable by the remote party of the channel. Attackers
can construct a crafted sequence of messages to manipulate the state
of the receiver's session in such a way that, for some buffer sizes,
a buffer overflow happens on a call to olm_session_describe.
Furthermore, safe buffer sizes were undocumented. The overflow content
is partially controllable by the attacker and limited to ASCII spaces
and digits (CVE-2021-44538).");
script_tag(name:"affected", value:"'olm' package(s) on Mageia 8.");
script_tag(name:"solution", value:"Please install the updated package(s).");
script_tag(name:"solution_type", value:"VendorFix");
script_tag(name:"qod_type", value:"package");
exit(0);
}
include("revisions-lib.inc");
include("pkg-lib-rpm.inc");
release = rpm_get_ssh_release();
if(!release)
exit(0);
res = "";
report = "";
if(release == "MAGEIA8") {
if(!isnull(res = isrpmvuln(pkg:"lib64olm-devel", rpm:"lib64olm-devel~3.2.1~1.1.mga8", rls:"MAGEIA8"))) {
report += res;
}
if(!isnull(res = isrpmvuln(pkg:"lib64olm3", rpm:"lib64olm3~3.2.1~1.1.mga8", rls:"MAGEIA8"))) {
report += res;
}
if(!isnull(res = isrpmvuln(pkg:"libolm-devel", rpm:"libolm-devel~3.2.1~1.1.mga8", rls:"MAGEIA8"))) {
report += res;
}
if(!isnull(res = isrpmvuln(pkg:"libolm3", rpm:"libolm3~3.2.1~1.1.mga8", rls:"MAGEIA8"))) {
report += res;
}
if(!isnull(res = isrpmvuln(pkg:"olm", rpm:"olm~3.2.1~1.1.mga8", rls:"MAGEIA8"))) {
report += res;
}
if(!isnull(res = isrpmvuln(pkg:"python3-olm", rpm:"python3-olm~3.2.1~1.1.mga8", rls:"MAGEIA8"))) {
report += res;
}
if(report != "") {
security_message(data:report);
} else if(__pkg_match) {
exit(99);
}
exit(0);
}
exit(0);