#%NASL_MIN_LEVEL 80900
##
# (C) Tenable, Inc.
#
# The descriptive text and package checks in this plugin were
# extracted from Red Hat Security Advisory RHSA-2019:3906. The text
# itself is copyright (C) Red Hat, Inc.
##
include('compat.inc');
if (description)
{
script_id(312525);
script_version("1.2");
script_set_attribute(attribute:"plugin_modification_date", value:"2026/05/07");
script_cve_id("CVE-2019-9512", "CVE-2019-9514");
script_xref(name:"RHSA", value:"2019:3906");
script_xref(name:"CEA-ID", value:"CEA-2019-0643");
script_name(english:"RHCOS 3 : OpenShift Container Platform 3.11 HTTP/2 (RHSA-2019:3906)");
script_set_attribute(attribute:"synopsis", value:
"The remote Red Hat CoreOS host is missing one or more security updates for OpenShift Container Platform 3.11 HTTP/2.");
script_set_attribute(attribute:"description", value:
"The remote Red Hat Enterprise Linux CoreOS 3 host has packages installed that are affected by multiple vulnerabilities
as referenced in the RHSA-2019:3906 advisory.
- HTTP/2: flood using PING frames results in unbounded memory growth (CVE-2019-9512)
- HTTP/2: flood using HEADERS frames results in unbounded memory growth (CVE-2019-9514)
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://access.redhat.com/security/updates/classification/#important");
script_set_attribute(attribute:"see_also", value:"https://bugzilla.redhat.com/show_bug.cgi?id=1735645");
script_set_attribute(attribute:"see_also", value:"https://bugzilla.redhat.com/show_bug.cgi?id=1735744");
# https://security.access.redhat.com/data/csaf/v2/advisories/2019/rhsa-2019_3906.json
script_set_attribute(attribute:"see_also", value:"http://www.nessus.org/u?84812716");
script_set_attribute(attribute:"see_also", value:"https://access.redhat.com/errata/RHSA-2019:3906");
script_set_attribute(attribute:"solution", value:
"Update the RHCOS OpenShift Container Platform 3.11 HTTP/2 package based on the guidance in RHSA-2019:3906.");
script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:N/C:N/I:N/A:C");
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:N/I:N/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-2019-9514");
script_set_attribute(attribute:"exploitability_ease", value:"No known exploits are available");
script_set_attribute(attribute:"exploit_available", value:"false");
script_cwe_id(400);
script_set_attribute(attribute:"vendor_severity", value:"Important");
script_set_attribute(attribute:"vuln_publication_date", value:"2019/08/09");
script_set_attribute(attribute:"patch_publication_date", value:"2019/11/18");
script_set_attribute(attribute:"plugin_publication_date", value:"2026/05/06");
script_set_attribute(attribute:"plugin_type", value:"local");
script_set_attribute(attribute:"cpe", value:"cpe:/o:redhat:enterprise_linux:7:coreos");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:redhat:enterprise_linux:atomic-enterprise-service-catalog");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:redhat:enterprise_linux:atomic-enterprise-service-catalog-svcat");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:redhat:enterprise_linux:atomic-openshift-cluster-autoscaler");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:redhat:enterprise_linux:atomic-openshift-descheduler");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:redhat:enterprise_linux:atomic-openshift-metrics-server");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:redhat:enterprise_linux:atomic-openshift-node-problem-detector");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:redhat:enterprise_linux:atomic-openshift-service-idler");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:redhat:enterprise_linux:atomic-openshift-web-console");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:redhat:enterprise_linux:cockpit");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:redhat:enterprise_linux:cockpit-kubernetes");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:redhat:enterprise_linux:csi-attacher");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:redhat:enterprise_linux:csi-driver-registrar");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:redhat:enterprise_linux:csi-livenessprobe");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:redhat:enterprise_linux:csi-provisioner");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:redhat:enterprise_linux:golang-github-openshift-oauth-proxy");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:redhat:enterprise_linux:golang-github-openshift-prometheus-alert-buffer");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:redhat:enterprise_linux:golang-github-prometheus-alertmanager");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:redhat:enterprise_linux:golang-github-prometheus-node_exporter");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:redhat:enterprise_linux:golang-github-prometheus-prometheus");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:redhat:enterprise_linux:hawkular-openshift-agent");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:redhat:enterprise_linux:heapster");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:redhat:enterprise_linux:image-inspector");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:redhat:enterprise_linux:openshift-enterprise-autoheal");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:redhat:enterprise_linux:openshift-enterprise-cluster-capacity");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:redhat:enterprise_linux:openshift-eventrouter");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:redhat:enterprise_linux:openshift-external-storage");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:redhat:enterprise_linux:openshift-external-storage-cephfs-provisioner");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:redhat:enterprise_linux:openshift-external-storage-efs-provisioner");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:redhat:enterprise_linux:openshift-external-storage-local-provisioner");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:redhat:enterprise_linux:openshift-external-storage-manila-provisioner");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:redhat:enterprise_linux:openshift-external-storage-snapshot-controller");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:redhat:enterprise_linux:openshift-external-storage-snapshot-provisioner");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:redhat:enterprise_linux:prometheus");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:redhat:enterprise_linux:prometheus-alertmanager");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:redhat:enterprise_linux:prometheus-node-exporter");
script_set_attribute(attribute:"generated_plugin", value:"current");
script_end_attributes();
script_category(ACT_GATHER_INFO);
script_family(english:"Red Hat 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/RedHat/release", "Host/RedHat/rpm-list", "Host/cpu");
exit(0);
}
include('rpm2.inc');
include('rhel.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) || 'Red Hat' >!< os_product) audit(AUDIT_OS_NOT, 'Red Hat');
var os_version = get_kb_item('installed_os/local/SSH/0/version');
if (isnull(os_version)) audit(AUDIT_UNKNOWN_APP_VER, 'Red Hat CoreOS');
if (!rhel_check_release(operator: 'eq', os_version: os_version, rhel_version: '3.11')) audit(AUDIT_OS_NOT, 'Red Hat CoreOS 3.11', 'Red Hat CoreOS ' + os_version);
if (!get_kb_item('Host/RedHat/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 && 'ppc' >!< cpu) audit(AUDIT_LOCAL_CHECKS_NOT_IMPLEMENTED, 'Red Hat CoreOS', cpu);
var constraints = [
{
'release': '3',
'pkgs': [
{'reference':'atomic-enterprise-service-catalog-3.11.154-1.git.1.fa68ced.el7', 'cpu':'ppc64le', 'el_string':'el7', 'rpm_spec_vers_cmp':TRUE, 'epoch':'1', 'exists_check':'openshift-ansible'},
{'reference':'atomic-enterprise-service-catalog-3.11.154-1.git.1.fa68ced.el7', 'cpu':'x86_64', 'el_string':'el7', 'rpm_spec_vers_cmp':TRUE, 'epoch':'1', 'exists_check':'openshift-ansible'},
{'reference':'atomic-enterprise-service-catalog-svcat-3.11.154-1.git.1.fa68ced.el7', 'cpu':'ppc64le', 'el_string':'el7', 'rpm_spec_vers_cmp':TRUE, 'epoch':'1', 'exists_check':'openshift-ansible'},
{'reference':'atomic-enterprise-service-catalog-svcat-3.11.154-1.git.1.fa68ced.el7', 'cpu':'x86_64', 'el_string':'el7', 'rpm_spec_vers_cmp':TRUE, 'epoch':'1', 'exists_check':'openshift-ansible'},
{'reference':'atomic-openshift-cluster-autoscaler-3.11.154-1.git.1.532da7a.el7', 'cpu':'ppc64le', 'el_string':'el7', 'rpm_spec_vers_cmp':TRUE, 'exists_check':'openshift-ansible'},
{'reference':'atomic-openshift-cluster-autoscaler-3.11.154-1.git.1.532da7a.el7', 'cpu':'x86_64', 'el_string':'el7', 'rpm_spec_vers_cmp':TRUE, 'exists_check':'openshift-ansible'},
{'reference':'atomic-openshift-descheduler-3.11.154-1.git.1.1d31032.el7', 'cpu':'ppc64le', 'el_string':'el7', 'rpm_spec_vers_cmp':TRUE, 'exists_check':'openshift-ansible'},
{'reference':'atomic-openshift-descheduler-3.11.154-1.git.1.1d31032.el7', 'cpu':'x86_64', 'el_string':'el7', 'rpm_spec_vers_cmp':TRUE, 'exists_check':'openshift-ansible'},
{'reference':'atomic-openshift-metrics-server-3.11.154-1.git.1.6a6b6ce.el7', 'cpu':'ppc64le', 'el_string':'el7', 'rpm_spec_vers_cmp':TRUE, 'exists_check':'openshift-ansible'},
{'reference':'atomic-openshift-metrics-server-3.11.154-1.git.1.6a6b6ce.el7', 'cpu':'x86_64', 'el_string':'el7', 'rpm_spec_vers_cmp':TRUE, 'exists_check':'openshift-ansible'},
{'reference':'atomic-openshift-node-problem-detector-3.11.154-1.git.1.5e8e065.el7', 'cpu':'ppc64le', 'el_string':'el7', 'rpm_spec_vers_cmp':TRUE, 'exists_check':'openshift-ansible'},
{'reference':'atomic-openshift-node-problem-detector-3.11.154-1.git.1.5e8e065.el7', 'cpu':'x86_64', 'el_string':'el7', 'rpm_spec_vers_cmp':TRUE, 'exists_check':'openshift-ansible'},
{'reference':'atomic-openshift-service-idler-3.11.154-1.git.1.f80fb86.el7', 'cpu':'ppc64le', 'el_string':'el7', 'rpm_spec_vers_cmp':TRUE, 'exists_check':'openshift-ansible'},
{'reference':'atomic-openshift-service-idler-3.11.154-1.git.1.f80fb86.el7', 'cpu':'x86_64', 'el_string':'el7', 'rpm_spec_vers_cmp':TRUE, 'exists_check':'openshift-ansible'},
{'reference':'atomic-openshift-web-console-3.11.154-1.git.1.f54cb18.el7', 'cpu':'ppc64le', 'el_string':'el7', 'rpm_spec_vers_cmp':TRUE, 'exists_check':'openshift-ansible'},
{'reference':'atomic-openshift-web-console-3.11.154-1.git.1.f54cb18.el7', 'cpu':'x86_64', 'el_string':'el7', 'rpm_spec_vers_cmp':TRUE, 'exists_check':'openshift-ansible'},
{'reference':'cockpit-kubernetes-195-2.rhaos.el7', 'cpu':'ppc64le', 'el_string':'el7', 'rpm_spec_vers_cmp':TRUE, 'allowmaj':TRUE, 'exists_check':'openshift-ansible'},
{'reference':'cockpit-kubernetes-195-2.rhaos.el7', 'cpu':'x86_64', 'el_string':'el7', 'rpm_spec_vers_cmp':TRUE, 'allowmaj':TRUE, 'exists_check':'openshift-ansible'},
{'reference':'csi-attacher-0.2.0-4.git27299be.el7', 'cpu':'ppc64le', 'el_string':'el7', 'rpm_spec_vers_cmp':TRUE, 'exists_check':'openshift-ansible'},
{'reference':'csi-attacher-0.2.0-4.git27299be.el7', 'cpu':'x86_64', 'el_string':'el7', 'rpm_spec_vers_cmp':TRUE, 'exists_check':'openshift-ansible'},
{'reference':'csi-driver-registrar-0.2.0-2.el7', 'cpu':'ppc64le', 'el_string':'el7', 'rpm_spec_vers_cmp':TRUE, 'exists_check':'openshift-ansible'},
{'reference':'csi-driver-registrar-0.2.0-2.el7', 'cpu':'x86_64', 'el_string':'el7', 'rpm_spec_vers_cmp':TRUE, 'exists_check':'openshift-ansible'},
{'reference':'csi-livenessprobe-0.0.1-2.gitff5b6a0.el7', 'cpu':'ppc64le', 'el_string':'el7', 'rpm_spec_vers_cmp':TRUE, 'exists_check':'openshift-ansible'},
{'reference':'csi-livenessprobe-0.0.1-2.gitff5b6a0.el7', 'cpu':'x86_64', 'el_string':'el7', 'rpm_spec_vers_cmp':TRUE, 'exists_check':'openshift-ansible'},
{'reference':'csi-provisioner-0.2.0-3.el7', 'cpu':'ppc64le', 'el_string':'el7', 'rpm_spec_vers_cmp':TRUE, 'exists_check':'openshift-ansible'},
{'reference':'csi-provisioner-0.2.0-3.el7', 'cpu':'x86_64', 'el_string':'el7', 'rpm_spec_vers_cmp':TRUE, 'exists_check':'openshift-ansible'},
{'reference':'golang-github-openshift-oauth-proxy-3.11.154-1.git.1.220e3dc.el7', 'cpu':'ppc64le', 'el_string':'el7', 'rpm_spec_vers_cmp':TRUE, 'exists_check':'openshift-ansible'},
{'reference':'golang-github-openshift-oauth-proxy-3.11.154-1.git.1.220e3dc.el7', 'cpu':'x86_64', 'el_string':'el7', 'rpm_spec_vers_cmp':TRUE, 'exists_check':'openshift-ansible'},
{'reference':'golang-github-openshift-prometheus-alert-buffer-0-3.gitceca8c1.el7', 'cpu':'ppc64le', 'el_string':'el7', 'rpm_spec_vers_cmp':TRUE, 'exists_check':'openshift-ansible'},
{'reference':'golang-github-openshift-prometheus-alert-buffer-0-3.gitceca8c1.el7', 'cpu':'x86_64', 'el_string':'el7', 'rpm_spec_vers_cmp':TRUE, 'exists_check':'openshift-ansible'},
{'reference':'hawkular-openshift-agent-1.2.2-3.el7', 'cpu':'ppc64le', 'el_string':'el7', 'rpm_spec_vers_cmp':TRUE, 'exists_check':'openshift-ansible'},
{'reference':'hawkular-openshift-agent-1.2.2-3.el7', 'cpu':'x86_64', 'el_string':'el7', 'rpm_spec_vers_cmp':TRUE, 'exists_check':'openshift-ansible'},
{'reference':'heapster-1.3.0-4.el7', 'cpu':'ppc64le', 'el_string':'el7', 'rpm_spec_vers_cmp':TRUE, 'exists_check':'openshift-ansible'},
{'reference':'heapster-1.3.0-4.el7', 'cpu':'x86_64', 'el_string':'el7', 'rpm_spec_vers_cmp':TRUE, 'exists_check':'openshift-ansible'},
{'reference':'image-inspector-2.4.0-4.el7', 'cpu':'ppc64le', 'el_string':'el7', 'rpm_spec_vers_cmp':TRUE, 'exists_check':'openshift-ansible'},
{'reference':'image-inspector-2.4.0-4.el7', 'cpu':'x86_64', 'el_string':'el7', 'rpm_spec_vers_cmp':TRUE, 'exists_check':'openshift-ansible'},
{'reference':'openshift-enterprise-autoheal-3.11.154-1.git.1.13199be.el7', 'cpu':'ppc64le', 'el_string':'el7', 'rpm_spec_vers_cmp':TRUE, 'exists_check':'openshift-ansible'},
{'reference':'openshift-enterprise-autoheal-3.11.154-1.git.1.13199be.el7', 'cpu':'x86_64', 'el_string':'el7', 'rpm_spec_vers_cmp':TRUE, 'exists_check':'openshift-ansible'},
{'reference':'openshift-enterprise-cluster-capacity-3.11.154-1.git.1.5798c2c.el7', 'cpu':'ppc64le', 'el_string':'el7', 'rpm_spec_vers_cmp':TRUE, 'exists_check':'openshift-ansible'},
{'reference':'openshift-enterprise-cluster-capacity-3.11.154-1.git.1.5798c2c.el7', 'cpu':'x86_64', 'el_string':'el7', 'rpm_spec_vers_cmp':TRUE, 'exists_check':'openshift-ansible'},
{'reference':'openshift-eventrouter-0.2-4.git7c289cc.el7', 'cpu':'ppc64le', 'el_string':'el7', 'rpm_spec_vers_cmp':TRUE, 'exists_check':'openshift-ansible'},
{'reference':'openshift-eventrouter-0.2-4.git7c289cc.el7', 'cpu':'x86_64', 'el_string':'el7', 'rpm_spec_vers_cmp':TRUE, 'exists_check':'openshift-ansible'},
{'reference':'openshift-external-storage-cephfs-provisioner-0.0.2-9.gitd3c94f0.el7', 'cpu':'ppc64le', 'el_string':'el7', 'rpm_spec_vers_cmp':TRUE, 'exists_check':'openshift-ansible'},
{'reference':'openshift-external-storage-cephfs-provisioner-0.0.2-9.gitd3c94f0.el7', 'cpu':'x86_64', 'el_string':'el7', 'rpm_spec_vers_cmp':TRUE, 'exists_check':'openshift-ansible'},
{'reference':'openshift-external-storage-efs-provisioner-0.0.2-9.gitd3c94f0.el7', 'cpu':'ppc64le', 'el_string':'el7', 'rpm_spec_vers_cmp':TRUE, 'exists_check':'openshift-ansible'},
{'reference':'openshift-external-storage-efs-provisioner-0.0.2-9.gitd3c94f0.el7', 'cpu':'x86_64', 'el_string':'el7', 'rpm_spec_vers_cmp':TRUE, 'exists_check':'openshift-ansible'},
{'reference':'openshift-external-storage-local-provisioner-0.0.2-9.gitd3c94f0.el7', 'cpu':'ppc64le', 'el_string':'el7', 'rpm_spec_vers_cmp':TRUE, 'exists_check':'openshift-ansible'},
{'reference':'openshift-external-storage-local-provisioner-0.0.2-9.gitd3c94f0.el7', 'cpu':'x86_64', 'el_string':'el7', 'rpm_spec_vers_cmp':TRUE, 'exists_check':'openshift-ansible'},
{'reference':'openshift-external-storage-manila-provisioner-0.0.2-9.gitd3c94f0.el7', 'cpu':'ppc64le', 'el_string':'el7', 'rpm_spec_vers_cmp':TRUE, 'exists_check':'openshift-ansible'},
{'reference':'openshift-external-storage-manila-provisioner-0.0.2-9.gitd3c94f0.el7', 'cpu':'x86_64', 'el_string':'el7', 'rpm_spec_vers_cmp':TRUE, 'exists_check':'openshift-ansible'},
{'reference':'openshift-external-storage-snapshot-controller-0.0.2-9.gitd3c94f0.el7', 'cpu':'ppc64le', 'el_string':'el7', 'rpm_spec_vers_cmp':TRUE, 'exists_check':'openshift-ansible'},
{'reference':'openshift-external-storage-snapshot-controller-0.0.2-9.gitd3c94f0.el7', 'cpu':'x86_64', 'el_string':'el7', 'rpm_spec_vers_cmp':TRUE, 'exists_check':'openshift-ansible'},
{'reference':'openshift-external-storage-snapshot-provisioner-0.0.2-9.gitd3c94f0.el7', 'cpu':'ppc64le', 'el_string':'el7', 'rpm_spec_vers_cmp':TRUE, 'exists_check':'openshift-ansible'},
{'reference':'openshift-external-storage-snapshot-provisioner-0.0.2-9.gitd3c94f0.el7', 'cpu':'x86_64', 'el_string':'el7', 'rpm_spec_vers_cmp':TRUE, 'exists_check':'openshift-ansible'},
{'reference':'prometheus-3.11.154-1.git.1.148db48.el7', 'cpu':'ppc64le', 'el_string':'el7', 'rpm_spec_vers_cmp':TRUE, 'exists_check':'openshift-ansible'},
{'reference':'prometheus-3.11.154-1.git.1.148db48.el7', 'cpu':'x86_64', 'el_string':'el7', 'rpm_spec_vers_cmp':TRUE, 'exists_check':'openshift-ansible'},
{'reference':'prometheus-alertmanager-3.11.154-1.git.1.4acd2e6.el7', 'cpu':'ppc64le', 'el_string':'el7', 'rpm_spec_vers_cmp':TRUE, 'exists_check':'openshift-ansible'},
{'reference':'prometheus-alertmanager-3.11.154-1.git.1.4acd2e6.el7', 'cpu':'x86_64', 'el_string':'el7', 'rpm_spec_vers_cmp':TRUE, 'exists_check':'openshift-ansible'},
{'reference':'prometheus-node-exporter-3.11.154-1.git.1.bc9f224.el7', 'cpu':'ppc64le', 'el_string':'el7', 'rpm_spec_vers_cmp':TRUE, 'exists_check':'openshift-ansible'},
{'reference':'prometheus-node-exporter-3.11.154-1.git.1.bc9f224.el7', 'cpu':'x86_64', 'el_string':'el7', 'rpm_spec_vers_cmp':TRUE, 'exists_check':'openshift-ansible'}
]
}
];
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_HOLE,
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, 'atomic-enterprise-service-catalog / 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