#%NASL_MIN_LEVEL 80900
##
# (C) Tenable, Inc.
#
# The package checks in this plugin were extracted from
# Miracle Linux Security Advisory AXSA:2014-613:01.
##
include('deprecated_nasl_level.inc');
include('compat.inc');
if (description)
{
script_id(289405);
script_version("1.1");
script_set_attribute(attribute:"plugin_modification_date", value:"2026/01/16");
script_cve_id(
"CVE-2013-1981",
"CVE-2013-1982",
"CVE-2013-1983",
"CVE-2013-1984",
"CVE-2013-1985",
"CVE-2013-1986",
"CVE-2013-1987",
"CVE-2013-1988",
"CVE-2013-1989",
"CVE-2013-1990",
"CVE-2013-1991",
"CVE-2013-1995",
"CVE-2013-1997",
"CVE-2013-1998",
"CVE-2013-1999",
"CVE-2013-2000",
"CVE-2013-2001",
"CVE-2013-2002",
"CVE-2013-2003",
"CVE-2013-2004"
);
script_name(english:"MiracleLinux 4 : X11 client libraries (AXSA:2014-613:01)");
script_set_attribute(attribute:"synopsis", value:
"The remote MiracleLinux host is missing one or more security updates.");
script_set_attribute(attribute:"description", value:
"The remote MiracleLinux 4 host has packages installed that are affected by multiple vulnerabilities as referenced in the
AXSA:2014-613:01 advisory.
Description:
The X11 (Xorg) libraries provide library routines that are used within all X Window applications.
Security issues fixed with this release:
CVE-2013-1981
Multiple integer overflows in X.org libX11 1.5.99.901 (1.6 RC1) and earlier allow X servers to trigger
allocation of insufficient memory and a buffer overflow via vectors related to the (1) XQueryFont, (2)
_XF86BigfontQueryFont, (3) XListFontsWithInfo, (4) XGetMotionEvents, (5) XListHosts, (6)
XGetModifierMapping, (7) XGetPointerMapping, (8) XGetKeyboardMapping, (9) XGetWindowProperty, (10)
XGetImage, (11) LoadColornameDB, (12) XrmGetFileDatabase, (13) _XimParseStringFile, or (14) TransFileName
functions.
CVE-2013-1982
Multiple integer overflows in X.org libXext 1.3.1 and earlier allow X servers to trigger allocation of
insufficient memory and a buffer overflow via vectors related to the (1) XcupGetReservedColormapEntries,
(2) XcupStoreColors, (3) XdbeGetVisualInfo, (4) XeviGetVisualInfo, (5) XShapeGetRectangles, and (6)
XSyncListSystemCounters functions.
CVE-2013-1983
Integer overflow in X.org libXfixes 5.0 and earlier allows X servers to trigger allocation of insufficient
memory and a buffer overflow via vectors related to the XFixesGetCursorImage function.
CVE-2013-1984
Multiple integer overflows in X.org libXi 1.7.1 and earlier allow X servers to trigger allocation of
insufficient memory and a buffer overflow via vectors related to the (1) XGetDeviceControl, (2)
XGetFeedbackControl, (3) XGetDeviceDontPropagateList, (4) XGetDeviceMotionEvents, (5) XIGetProperty, (6)
XIGetSelectedEvents, (7) XGetDeviceProperties, and (8) XListInputDevices functions.
CVE-2013-1985
Integer overflow in X.org libXinerama 1.1.2 and earlier allows X servers to trigger allocation of
insufficient memory and a buffer overflow via vectors related to the XineramaQueryScreens function.
CVE-2013-1986
Multiple integer overflows in X.org libXrandr 1.4.0 and earlier allow X servers to trigger allocation of
insufficient memory and a buffer overflow via vectors related to the (1) XRRQueryOutputProperty and (2)
XRRQueryProviderProperty functions.
CVE-2013-1987
Multiple integer overflows in X.org libXrender 0.9.7 and earlier allow X servers to trigger allocation of
insufficient memory and a buffer overflow via vectors related to the (1) XRenderQueryFilters, (2)
XRenderQueryFormats, and (3) XRenderQueryPictIndexValues functions.
CVE-2013-1988
Multiple integer overflows in X.org libXRes 1.0.6 and earlier allow X servers to trigger allocation of
insufficient memory and a buffer overflow via vectors related to the (1) XResQueryClients and (2)
XResQueryClientResources functions.
CVE-2013-1989
Multiple integer overflows in X.org libXv 1.0.7 and earlier allow X servers to trigger allocation of
insufficient memory and a buffer overflow via vectors related to the (1) XvQueryPortAttributes, (2)
XvListImageFormats, and (3) XvCreateImage function.
CVE-2013-1990
Multiple integer overflows in X.org libXvMC 1.0.7 and earlier allow X servers to trigger allocation of
insufficient memory and a buffer overflow via vectors related to the (1) XvMCListSurfaceTypes and (2)
XvMCListSubpictureTypes functions.
CVE-2013-1991
Multiple integer overflows in X.org libXxf86dga 1.1.3 and earlier allow X servers to trigger allocation of
insufficient memory and a buffer overflow via vectors related to the (1) XDGAQueryModes and (2)
XDGASetMode functions.
CVE-2013-1995
X.org libXi 1.7.1 and earlier allows X servers to trigger allocation of insufficient memory and a buffer
overflow via vectors related to an unexpected sign extension in the XListInputDevices function.
CVE-2013-1997
Multiple buffer overflows in X.org libX11 1.5.99.901 (1.6 RC1) and earlier allow X servers to cause a
denial of service (crash) and possibly execute arbitrary code via crafted length or index values to the
(1) XAllocColorCells, (2) _XkbReadGetDeviceInfoReply, (3) _XkbReadGeomShapes, (4)
_XkbReadGetGeometryReply, (5) _XkbReadKeySyms, (6) _XkbReadKeyActions, (7) _XkbReadKeyBehaviors, (8)
_XkbReadModifierMap, (9) _XkbReadExplicitComponents, (10) _XkbReadVirtualModMap, (11)
_XkbReadGetNamesReply, (12) _XkbReadGetMapReply, (13) _XimXGetReadData, (14) XListFonts, (15)
XListExtensions, and (16) XGetFontPath functions.
CVE-2013-1998
Multiple buffer overflows in X.org libXi 1.7.1 and earlier allow X servers to cause a denial of service
(crash) and possibly execute arbitrary code via crafted length or index values to the (1)
XGetDeviceButtonMapping, (2) XIPassiveGrabDevice, and (3) XQueryDeviceState functions.
CVE-2013-1999
Buffer overflow in X.org libXvMC 1.0.7 and earlier allows X servers to cause a denial of service (crash)
and possibly execute arbitrary code via crafted length or index values to the XvMCGetDRInfo function.
CVE-2013-2000
Multiple buffer overflows in X.org libXxf86dga 1.1.3 and earlier allow X servers to cause a denial of
service (crash) and possibly execute arbitrary code via crafted length or index values to the (1)
XDGAQueryModes and (2) XDGASetMode functions.
CVE-2013-2001
Buffer overflow in X.org libXxf86vm 1.1.2 and earlier allows X servers to cause a denial of service
(crash) and possibly execute arbitrary code via crafted length or index values to the
XF86VidModeGetGammaRamp function.
CVE-2013-2002
Buffer overflow in X.org libXt 1.1.3 and earlier allows X servers to cause a denial of service (crash) and
possibly execute arbitrary code via crafted length or index values to the _XtResourceConfigurationEH
function.
CVE-2013-2003
Integer overflow in X.org libXcursor 1.1.13 and earlier allows X servers to trigger allocation of
insufficient memory and a buffer overflow via vectors related to the _XcursorFileHeaderCreate function.
CVE-2013-2004
The (1) GetDatabase and (2) _XimParseStringFile functions in X.org libX11 1.5.99.901 (1.6 RC1) and earlier
do not restrict the recursion depth when processing directives to include files, which allows X servers to
cause a denial of service (stack consumption) via a crafted file.
CVE-2013-2005
X.org libXt 1.1.3 and earlier does not check the return value of the XGetWindowProperty function, which
allows X servers to trigger use of an uninitialized pointer and memory corruption via vectors related to
the (1) ReqCleanup, (2) HandleSelectionEvents, (3) ReqTimedOut, (4) HandleNormal, and (5)
HandleSelectionReplies functions.
CVE-2013-2062
Multiple integer overflows in X.org libXp 1.0.1 and earlier allow X servers to trigger allocation of
insufficient memory and a buffer overflow via vectors related to the (1) XpGetAttributes, (2)
XpGetOneAttribute, (3) XpGetPrinterList, and (4) XpQueryScreens functions.
CVE-2013-2064
Integer overflow in X.org libxcb 1.9 and earlier allows X servers to trigger allocation of insufficient
memory and a buffer overflow via vectors related to the read_packet function.
CVE-2013-2066
Buffer overflow in X.org libXv 1.0.7 and earlier allows X servers to cause a denial of service (crash) and
possibly execute arbitrary code via crafted length or index values to the XvQueryPortAttributes function.
Fixed bugs:
* Previously, updating the mesa-libGL package did not update the libX11 package, although it was listed as
a dependency of mesa-libGL. With this update, fixed it.
* Previously, closing a customer application could occasionally cause the X Server to terminate
unexpectedly. With this update, fixed it.
Tenable has extracted the preceding description block directly from the MiracleLinux security advisory.
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://tsn.miraclelinux.com/en/node/5071");
script_set_attribute(attribute:"solution", value:
"Update the affected packages.");
script_set_cvss_base_vector("CVSS2#AV:N/AC:M/Au:N/C:P/I:P/A:P");
script_set_cvss_temporal_vector("CVSS2#E:U/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:U/RL:O/RC:C");
script_set_attribute(attribute:"cvss_score_source", value:"CVE-2013-2004");
script_set_attribute(attribute:"cvss3_score_source", value:"CVE-2013-1997");
script_set_attribute(attribute:"exploitability_ease", value:"No known exploits are available");
script_set_attribute(attribute:"exploit_available", value:"false");
script_set_attribute(attribute:"vendor_severity", value:"Moderate");
script_set_attribute(attribute:"vuln_publication_date", value:"2013/05/23");
script_set_attribute(attribute:"patch_publication_date", value:"2014/10/22");
script_set_attribute(attribute:"plugin_publication_date", value:"2026/01/16");
script_set_attribute(attribute:"plugin_type", value:"local");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:miracle:linux:libX11");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:miracle:linux:libX11-common");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:miracle:linux:libX11-devel");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:miracle:linux:libXcursor");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:miracle:linux:libXcursor-devel");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:miracle:linux:libXext");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:miracle:linux:libXext-devel");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:miracle:linux:libXfixes");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:miracle:linux:libXfixes-devel");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:miracle:linux:libXi");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:miracle:linux:libXi-devel");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:miracle:linux:libXinerama");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:miracle:linux:libXinerama-devel");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:miracle:linux:libXp");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:miracle:linux:libXp-devel");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:miracle:linux:libXrandr");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:miracle:linux:libXrandr-devel");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:miracle:linux:libXrender");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:miracle:linux:libXrender-devel");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:miracle:linux:libXres");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:miracle:linux:libXt");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:miracle:linux:libXt-devel");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:miracle:linux:libXtst");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:miracle:linux:libXtst-devel");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:miracle:linux:libXv");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:miracle:linux:libXv-devel");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:miracle:linux:libXvMC");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:miracle:linux:libXxf86dga");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:miracle:linux:libXxf86vm");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:miracle:linux:libXxf86vm-devel");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:miracle:linux:libdmx");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:miracle:linux:libxcb");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:miracle:linux:libxcb-devel");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:miracle:linux:xkeyboard-config");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:miracle:linux:xorg-x11-proto-devel");
script_set_attribute(attribute:"cpe", value:"cpe:/o:miracle:linux:4");
script_set_attribute(attribute:"generated_plugin", value:"current");
script_end_attributes();
script_category(ACT_GATHER_INFO);
script_family(english:"Miracle Linux Local Security Checks");
script_copyright(english:"This script is Copyright (C) 2026 and is owned by Tenable, Inc. or an Affiliate thereof.");
script_dependencies("ssh_get_info.nasl");
script_require_keys("Host/local_checks_enabled", "Host/MiracleLinux/release", "Host/MiracleLinux/rpm-list", "Host/cpu");
exit(0);
}
include('rpm2.inc');
if (!get_kb_item('Host/local_checks_enabled')) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED);
var os_product = get_kb_item('installed_os/local/SSH/0/product');
if (isnull(os_product) || 'MIRACLE LINUX' >!< os_product) audit(AUDIT_OS_NOT, 'MIRACLE LINUX');
var os_version = get_kb_item('installed_os/local/SSH/0/version');
if (isnull(os_version)) audit(AUDIT_UNKNOWN_APP_VER, 'MIRACLE LINUX');
if (! preg(pattern:"^4([^0-9]|$)", string:os_version)) audit(AUDIT_OS_NOT, 'MiracleLinux 4.x', 'MIRACLE LINUX ' + os_version);
if (!get_kb_item('Host/MiracleLinux/rpm-list')) audit(AUDIT_PACKAGE_LIST_MISSING);
var cpu = get_kb_item('Host/cpu');
if (isnull(cpu)) audit(AUDIT_UNKNOWN_ARCH);
if ('aarch64' >!< cpu && 'ppc' >!< cpu && 's390' >!< cpu && 'x86_64' >!< cpu && cpu !~ "^i[3-6]86$") audit(AUDIT_LOCAL_CHECKS_NOT_IMPLEMENTED, 'MIRACLE LINUX', cpu);
var constraints = [
{
'release': '4',
'pkgs': [
{'reference':'libdmx-1.1.3-3.AXS4', 'cpu':'i686', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'libdmx-1.1.3-3.AXS4', 'cpu':'x86_64', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'libX11-1.6.0-2.2.AXS4', 'cpu':'i686', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'libX11-1.6.0-2.2.AXS4', 'cpu':'x86_64', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'libX11-common-1.6.0-2.2.AXS4', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'libX11-devel-1.6.0-2.2.AXS4', 'cpu':'i686', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'libX11-devel-1.6.0-2.2.AXS4', 'cpu':'x86_64', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'libxcb-1.9.1-2.AXS4', 'cpu':'i686', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'libxcb-1.9.1-2.AXS4', 'cpu':'x86_64', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'libxcb-devel-1.9.1-2.AXS4', 'cpu':'i686', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'libxcb-devel-1.9.1-2.AXS4', 'cpu':'x86_64', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'libXcursor-1.1.14-2.1.AXS4', 'cpu':'i686', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'libXcursor-1.1.14-2.1.AXS4', 'cpu':'x86_64', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'libXcursor-devel-1.1.14-2.1.AXS4', 'cpu':'i686', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'libXcursor-devel-1.1.14-2.1.AXS4', 'cpu':'x86_64', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'libXext-1.3.2-2.1.AXS4', 'cpu':'i686', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'libXext-1.3.2-2.1.AXS4', 'cpu':'x86_64', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'libXext-devel-1.3.2-2.1.AXS4', 'cpu':'i686', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'libXext-devel-1.3.2-2.1.AXS4', 'cpu':'x86_64', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'libXfixes-5.0.1-2.1.AXS4', 'cpu':'i686', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'libXfixes-5.0.1-2.1.AXS4', 'cpu':'x86_64', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'libXfixes-devel-5.0.1-2.1.AXS4', 'cpu':'i686', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'libXfixes-devel-5.0.1-2.1.AXS4', 'cpu':'x86_64', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'libXi-1.7.2-2.2.AXS4', 'cpu':'i686', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'libXi-1.7.2-2.2.AXS4', 'cpu':'x86_64', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'libXi-devel-1.7.2-2.2.AXS4', 'cpu':'i686', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'libXi-devel-1.7.2-2.2.AXS4', 'cpu':'x86_64', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'libXinerama-1.1.3-2.1.AXS4', 'cpu':'i686', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'libXinerama-1.1.3-2.1.AXS4', 'cpu':'x86_64', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'libXinerama-devel-1.1.3-2.1.AXS4', 'cpu':'i686', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'libXinerama-devel-1.1.3-2.1.AXS4', 'cpu':'x86_64', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'libXp-1.0.2-2.1.AXS4', 'cpu':'i686', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'libXp-1.0.2-2.1.AXS4', 'cpu':'x86_64', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'libXp-devel-1.0.2-2.1.AXS4', 'cpu':'i686', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'libXp-devel-1.0.2-2.1.AXS4', 'cpu':'x86_64', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'libXrandr-1.4.1-2.1.AXS4', 'cpu':'i686', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'libXrandr-1.4.1-2.1.AXS4', 'cpu':'x86_64', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'libXrandr-devel-1.4.1-2.1.AXS4', 'cpu':'i686', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'libXrandr-devel-1.4.1-2.1.AXS4', 'cpu':'x86_64', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'libXrender-0.9.8-2.1.AXS4', 'cpu':'i686', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'libXrender-0.9.8-2.1.AXS4', 'cpu':'x86_64', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'libXrender-devel-0.9.8-2.1.AXS4', 'cpu':'i686', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'libXrender-devel-0.9.8-2.1.AXS4', 'cpu':'x86_64', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'libXres-1.0.7-2.1.AXS4', 'cpu':'i686', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'libXres-1.0.7-2.1.AXS4', 'cpu':'x86_64', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'libXt-1.1.4-6.1.AXS4', 'cpu':'i686', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'libXt-1.1.4-6.1.AXS4', 'cpu':'x86_64', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'libXt-devel-1.1.4-6.1.AXS4', 'cpu':'i686', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'libXt-devel-1.1.4-6.1.AXS4', 'cpu':'x86_64', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'libXtst-1.2.2-2.1.AXS4', 'cpu':'i686', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'libXtst-1.2.2-2.1.AXS4', 'cpu':'x86_64', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'libXtst-devel-1.2.2-2.1.AXS4', 'cpu':'i686', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'libXtst-devel-1.2.2-2.1.AXS4', 'cpu':'x86_64', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'libXv-1.0.9-2.1.AXS4', 'cpu':'i686', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'libXv-1.0.9-2.1.AXS4', 'cpu':'x86_64', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'libXv-devel-1.0.9-2.1.AXS4', 'cpu':'i686', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'libXv-devel-1.0.9-2.1.AXS4', 'cpu':'x86_64', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'libXvMC-1.0.8-2.1.AXS4', 'cpu':'i686', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'libXvMC-1.0.8-2.1.AXS4', 'cpu':'x86_64', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'libXxf86dga-1.1.4-2.1.AXS4', 'cpu':'i686', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'libXxf86dga-1.1.4-2.1.AXS4', 'cpu':'x86_64', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'libXxf86vm-1.1.3-2.1.AXS4', 'cpu':'i686', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'libXxf86vm-1.1.3-2.1.AXS4', 'cpu':'x86_64', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'libXxf86vm-devel-1.1.3-2.1.AXS4', 'cpu':'i686', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'libXxf86vm-devel-1.1.3-2.1.AXS4', 'cpu':'x86_64', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'xkeyboard-config-2.11-1.AXS4', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'xorg-x11-proto-devel-7.7-9.AXS4', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'}
]
}
];
var os_release = get_one_kb_item('installed_os/local/SSH/0/release');
var os_sp = get_one_kb_item('Host/*/minor_release');
var flag = 0;
var reference;
var sp;
var _cpu;
var el_string;
var rpm_spec_vers_cmp;
var epoch;
var allowmaj;
var exists_check;
var cves;
foreach var constraint ( constraints ) {
# Check that the target release is equal to the affected release
if (!empty_or_null(constraint['release'])){
if (constraint['release'] != os_release) continue;
}
if (!empty_or_null(constraint['sp'])){
if (constraint['sp'] != os_sp) continue;
}
foreach var pkg ( constraint['pkgs'] ) {
reference = NULL;
sp = NULL;
_cpu = NULL;
el_string = NULL;
rpm_spec_vers_cmp = NULL;
epoch = NULL;
allowmaj = NULL;
exists_check = NULL;
cves = NULL;
if (!empty_or_null(pkg['reference'])) reference = pkg['reference'];
if (!empty_or_null(pkg['sp'])) sp = pkg['sp'];
if (!empty_or_null(pkg['cpu'])) _cpu = pkg['cpu'];
if (!empty_or_null(pkg['el_string'])) el_string = pkg['el_string'];
if (!empty_or_null(pkg['rpm_spec_vers_cmp'])) rpm_spec_vers_cmp = pkg['rpm_spec_vers_cmp'];
if (!empty_or_null(pkg['epoch'])) epoch = pkg['epoch'];
if (!empty_or_null(pkg['allowmaj'])) allowmaj = pkg['allowmaj'];
if (!empty_or_null(pkg['exists_check'])) exists_check = pkg['exists_check'];
if (!empty_or_null(pkg['cves'])) cves = pkg['cves'];
if (reference &&
## (no known rpm to check OR known rpm_exists)
(!exists_check || rpm_exists(rpm:exists_check)) &&
rpm_check(sp:sp, cpu:_cpu, reference:reference, epoch:epoch, el_string:el_string, rpm_spec_vers_cmp:rpm_spec_vers_cmp, allowmaj:allowmaj, cves:cves)) 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, 'libX11 / libX11-common / libX11-devel / libXcursor / etc');
}
Data
Build on a solid foundation with Vulners data
We provide the essential building blocks for cybersecurity solutions with comprehensive, structured, and constantly updated vulnerability and exploits data
Api
Power your application with Vulners API
The Vulners REST API offers reliable, high-performance access to vulnerability intelligence, with 99.9% SLA uptime and CDN-backed data delivery for seamless global access
App
Assess and manage vulnerabilities with Vulners tools
Built on top of Vulners' database and SDK, end-user solutions give security professionals and developers lightweight and powerful tools for vulnerability remediation