The SUSE SLED15 / SLES15 host is affected by multiple vulnerabilities in python-ujson (SUSE-SU-2022:2673-1) package
Reporter | Title | Published | Views | Family All 57 |
---|---|---|---|---|
Tenable Nessus | RHEL 8 : Red Hat OpenStack Platform 16.2.4 (python-ujson) (RHSA-2022:8850) | 23 Jan 202300:00 | – | nessus |
Tenable Nessus | GLSA-202403-03 : UltraJSON: Multiple Vulnerabilities | 3 Mar 202400:00 | – | nessus |
Tenable Nessus | RHEL 8 : Red Hat OpenStack Platform 16.1.9 (python-ujson) (RHSA-2022:8864) | 23 Jan 202300:00 | – | nessus |
Tenable Nessus | Ubuntu 20.04 LTS : UltraJSON vulnerability (USN-6629-2) | 14 Feb 202400:00 | – | nessus |
Tenable Nessus | Ubuntu 20.04 LTS : UltraJSON vulnerabilities (USN-6629-3) | 15 Feb 202400:00 | – | nessus |
Tenable Nessus | Ubuntu 16.04 LTS / 18.04 LTS / 22.04 LTS : UltraJSON vulnerabilities (USN-6629-1) | 12 Feb 202400:00 | – | nessus |
OpenVAS | SUSE: Security Advisory (SUSE-SU-2022:2673-1) | 5 Aug 202200:00 | – | openvas |
OpenVAS | openSUSE: Security Advisory for python-ujson (SUSE-SU-2022:2673-1) | 5 Aug 202200:00 | – | openvas |
OpenVAS | Fedora: Security Advisory for python-ujson (FEDORA-2022-1b2b8d5177) | 24 Jul 202200:00 | – | openvas |
OpenVAS | Mageia: Security Advisory (MGASA-2022-0270) | 1 Aug 202200:00 | – | openvas |
##
# (C) Tenable, Inc.
#
# The package checks in this plugin were extracted from
# SUSE update advisory SUSE-SU-2022:2673-1. The text itself
# is copyright (C) SUSE.
##
include('compat.inc');
if (description)
{
script_id(163879);
script_version("1.7");
script_set_attribute(attribute:"plugin_modification_date", value:"2023/07/14");
script_cve_id("CVE-2022-31116", "CVE-2022-31117");
script_xref(name:"SuSE", value:"SUSE-SU-2022:2673-1");
script_name(english:"SUSE SLED15 / SLES15 Security Update : python-ujson (SUSE-SU-2022:2673-1)");
script_set_attribute(attribute:"synopsis", value:
"The remote SUSE host is missing one or more security updates.");
script_set_attribute(attribute:"description", value:
"The remote SUSE Linux SLED15 / SLED_SAP15 / SLES15 / SLES_SAP15 host has a package installed that is affected by
multiple vulnerabilities as referenced in the SUSE-SU-2022:2673-1 advisory.
- UltraJSON is a fast JSON encoder and decoder written in pure C with bindings for Python 3.7+. Affected
versions were found to improperly decode certain characters. JSON strings that contain escaped surrogate
characters not part of a proper surrogate pair were decoded incorrectly. Besides corrupting strings, this
allowed for potential key confusion and value overwriting in dictionaries. All users parsing JSON from
untrusted sources are vulnerable. From version 5.4.0, UltraJSON decodes lone surrogates in the same way as
the standard library's `json` module does, preserving them in the parsed output. Users are advised to
upgrade. There are no known workarounds for this issue. (CVE-2022-31116)
- UltraJSON is a fast JSON encoder and decoder written in pure C with bindings for Python 3.7+. In versions
prior to 5.4.0 an error occurring while reallocating a buffer for string decoding can cause the buffer to
get freed twice. Due to how UltraJSON uses the internal decoder, this double free is impossible to trigger
from Python. This issue has been resolved in version 5.4.0 and all users should upgrade to UltraJSON
5.4.0. There are no known workarounds for this issue. (CVE-2022-31117)
Note that Nessus has not tested for these issues but has instead relied only on the application's self-reported version
number.");
script_set_attribute(attribute:"see_also", value:"https://bugzilla.suse.com/1201254");
script_set_attribute(attribute:"see_also", value:"https://bugzilla.suse.com/1201255");
script_set_attribute(attribute:"see_also", value:"https://www.suse.com/security/cve/CVE-2022-31116");
script_set_attribute(attribute:"see_also", value:"https://www.suse.com/security/cve/CVE-2022-31117");
# https://lists.suse.com/pipermail/sle-security-updates/2022-August/011803.html
script_set_attribute(attribute:"see_also", value:"http://www.nessus.org/u?20d8f74b");
script_set_attribute(attribute:"solution", value:
"Update the affected python3-ujson package.");
script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:N/C:N/I:N/A:P");
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:N/I:N/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-2022-31116");
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:"2022/07/02");
script_set_attribute(attribute:"patch_publication_date", value:"2022/08/04");
script_set_attribute(attribute:"plugin_publication_date", value:"2022/08/05");
script_set_attribute(attribute:"plugin_type", value:"local");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:python3-ujson");
script_set_attribute(attribute:"cpe", value:"cpe:/o:novell:suse_linux:15");
script_set_attribute(attribute:"generated_plugin", value:"current");
script_end_attributes();
script_category(ACT_GATHER_INFO);
script_family(english:"SuSE Local Security Checks");
script_copyright(english:"This script is Copyright (C) 2022-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/cpu", "Host/SuSE/release", "Host/SuSE/rpm-list");
exit(0);
}
include('rpm.inc');
if (!get_kb_item('Host/local_checks_enabled')) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED);
var os_release = get_kb_item("Host/SuSE/release");
if (isnull(os_release) || os_release !~ "^(SLED|SLES)") audit(AUDIT_OS_NOT, "SUSE");
var os_ver = pregmatch(pattern: "^(SLE(S|D)(?:_SAP)?\d+)", string:os_release);
if (isnull(os_ver)) audit(AUDIT_UNKNOWN_APP_VER, 'SUSE');
os_ver = os_ver[1];
if (! preg(pattern:"^(SLED15|SLED_SAP15|SLES15|SLES_SAP15)$", string:os_ver)) audit(AUDIT_OS_NOT, 'SUSE SLED15 / SLED_SAP15 / SLES15 / SLES_SAP15', 'SUSE (' + os_ver + ')');
if (!get_kb_item("Host/SuSE/rpm-list")) audit(AUDIT_PACKAGE_LIST_MISSING);
var cpu = get_kb_item('Host/cpu');
if (isnull(cpu)) audit(AUDIT_UNKNOWN_ARCH);
if ('x86_64' >!< cpu && cpu !~ "^i[3-6]86$" && 's390' >!< cpu && 'aarch64' >!< cpu) audit(AUDIT_LOCAL_CHECKS_NOT_IMPLEMENTED, 'SUSE (' + os_ver + ')', cpu);
var service_pack = get_kb_item("Host/SuSE/patchlevel");
if (isnull(service_pack)) service_pack = "0";
if (os_ver == "SLED15" && (! preg(pattern:"^(3|4)$", string:service_pack))) audit(AUDIT_OS_NOT, "SLED15 SP3/4", os_ver + " SP" + service_pack);
if (os_ver == "SLED_SAP15" && (! preg(pattern:"^(3|4)$", string:service_pack))) audit(AUDIT_OS_NOT, "SLED_SAP15 SP3/4", os_ver + " SP" + service_pack);
if (os_ver == "SLES15" && (! preg(pattern:"^(3|4)$", string:service_pack))) audit(AUDIT_OS_NOT, "SLES15 SP3/4", os_ver + " SP" + service_pack);
if (os_ver == "SLES_SAP15" && (! preg(pattern:"^(3|4)$", string:service_pack))) audit(AUDIT_OS_NOT, "SLES_SAP15 SP3/4", os_ver + " SP" + service_pack);
var pkgs = [
{'reference':'python3-ujson-1.35-150100.3.5.1', 'sp':'3', 'release':'SLED_SAP15', 'rpm_spec_vers_cmp':TRUE, 'exists_check':['SLES_SAP-release-15.3']},
{'reference':'python3-ujson-1.35-150100.3.5.1', 'sp':'3', 'release':'SLES_SAP15', 'rpm_spec_vers_cmp':TRUE, 'exists_check':['SLES_SAP-release-15.3']},
{'reference':'python3-ujson-1.35-150100.3.5.1', 'sp':'4', 'release':'SLED_SAP15', 'rpm_spec_vers_cmp':TRUE, 'exists_check':['SLES_SAP-release-15.4']},
{'reference':'python3-ujson-1.35-150100.3.5.1', 'sp':'4', 'release':'SLES_SAP15', 'rpm_spec_vers_cmp':TRUE, 'exists_check':['SLES_SAP-release-15.4']},
{'reference':'python3-ujson-1.35-150100.3.5.1', 'sp':'3', 'release':'SLED15', 'rpm_spec_vers_cmp':TRUE, 'exists_check':['SLE_HPC-release-15.3', 'sle-module-development-tools-release-15.3', 'sled-release-15.3', 'sles-release-15.3']},
{'reference':'python3-ujson-1.35-150100.3.5.1', 'sp':'3', 'release':'SLES15', 'rpm_spec_vers_cmp':TRUE, 'exists_check':['SLE_HPC-release-15.3', 'sle-module-development-tools-release-15.3', 'sled-release-15.3', 'sles-release-15.3']},
{'reference':'python3-ujson-1.35-150100.3.5.1', 'sp':'4', 'release':'SLED15', 'rpm_spec_vers_cmp':TRUE, 'exists_check':['SLE_HPC-release-15.4', 'sle-module-development-tools-release-15.4', 'sled-release-15.4', 'sles-release-15.4']},
{'reference':'python3-ujson-1.35-150100.3.5.1', 'sp':'4', 'release':'SLES15', 'rpm_spec_vers_cmp':TRUE, 'exists_check':['SLE_HPC-release-15.4', 'sle-module-development-tools-release-15.4', 'sled-release-15.4', 'sles-release-15.4']}
];
var ltss_caveat_required = FALSE;
var flag = 0;
foreach var package_array ( pkgs ) {
var reference = NULL;
var _release = NULL;
var sp = NULL;
var _cpu = NULL;
var exists_check = NULL;
var rpm_spec_vers_cmp = NULL;
if (!empty_or_null(package_array['reference'])) reference = package_array['reference'];
if (!empty_or_null(package_array['release'])) _release = package_array['release'];
if (!empty_or_null(package_array['sp'])) sp = package_array['sp'];
if (!empty_or_null(package_array['cpu'])) _cpu = package_array['cpu'];
if (!empty_or_null(package_array['exists_check'])) exists_check = package_array['exists_check'];
if (!empty_or_null(package_array['rpm_spec_vers_cmp'])) rpm_spec_vers_cmp = package_array['rpm_spec_vers_cmp'];
if (reference && _release) {
if (exists_check) {
var check_flag = 0;
foreach var check (exists_check) {
if (!rpm_exists(release:_release, rpm:check)) continue;
check_flag++;
}
if (!check_flag) continue;
}
if (rpm_check(release:_release, sp:sp, cpu:_cpu, reference:reference, rpm_spec_vers_cmp:rpm_spec_vers_cmp)) flag++;
}
}
if (flag)
{
security_report_v4(
port : 0,
severity : SECURITY_WARNING,
extra : rpm_report_get()
);
exit(0);
}
else
{
var tested = pkg_tests_get();
if (tested) audit(AUDIT_PACKAGE_NOT_AFFECTED, tested);
else audit(AUDIT_PACKAGE_NOT_INSTALLED, 'python3-ujson');
}
Transform Your Security Services
Elevate your offerings with Vulners' advanced Vulnerability Intelligence. Contact us for a demo and discover the difference comprehensive, actionable intelligence can make in your security strategy.
Book a live demo