#%NASL_MIN_LEVEL 80900
##
# (C) Tenable, Inc.
#
# The package checks in this plugin were extracted from
# Miracle Linux Security Advisory AXSA:2015-694:01.
##
include('deprecated_nasl_level.inc');
include('compat.inc');
if (description)
{
script_id(289131);
script_version("1.2");
script_set_attribute(attribute:"plugin_modification_date", value:"2026/01/19");
script_cve_id("CVE-2015-0272", "CVE-2015-2924", "CVE-2015-8215");
script_name(english:"MiracleLinux 7 : [security - medium] NetworkManager (AXSA:2015-694: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 7 host has packages installed that are affected by multiple vulnerabilities as referenced in the
AXSA:2015-694:01 advisory.
ModemManager
The ModemManager service manages WWAN modems and provides a consistent API for
interacting with these devices to client applications.
NetworkManager
NetworkManager is a system service that manages network interfaces and
connections based on user or automatic configuration. It supports
Ethernet, Bridge, Bond, VLAN, Team, InfiniBand, Wi-Fi, mobile broadband
(WWAN), PPPoE and other devices, and supports a variety of different VPN
services.
NetworkManager-libreswan
This package contains software for integrating the libreswan VPN software
with NetworkManager and the GNOME desktop
network-manager-applet
This package contains a network control and status notification area applet
for use with NetworkManager.
Security issues fixed with this release:
CVE-2015-0272
GNOME NetworkManager allows remote attackers to cause a denial of
service (IPv6 traffic disruption) via a crafted MTU value in an IPv6
Router Advertisement (RA) message, a different vulnerability than
CVE-2015-8215.
CVE-2015-2924
The receive_ra function in rdisc/nm-lndp-rdisc.c in the Neighbor
Discovery (ND) protocol implementation in the IPv6 stack in
NetworkManager 1.x allows remote attackers to reconfigure a hop-limit
setting via a small hop_limit value in a Router Advertisement (RA)
message, a similar issue to CVE-2015-2922.
Fixed bugs:
* It was not previously possible to set the Wi-Fi band to the a or bg values to lock to a specific
frequency band. NetworkManager has been fixed, and it now sets the wpa_supplicant's freq_list option
correctly, which enables proper Wi-Fi band locking.
* NetworkManager immediately failed activation of devices that did not have a carrier early in the boot
process. The legacy network.service then reported activation failure. Now, NetworkManager has a grace
period during which it waits for the carrier to appear. Devices that have a carrier down for a short time
on system startup no longer cause the legacy network.service to fail.
* NetworkManager brought down a team device if the teamd service managing it exited unexpectedly, and the
team device was deactivated. Now, NetworkManager respawns the teamd instances that disappear and is able
to recover from a teamd failure avoiding disruption of the team device operation.
* NetworkManager did not send the FQDN DHCP option even if host name was set to FQDN. Consequently,
Dynamic DNS (DDNS) setups failed to update the DNS records for clients running NetworkManager. Now,
NetworkManager sends the FQDN option with DHCP requests, and the DHCP server is able to create DNS records
for such clients.
* The command-line client was not validating the vlan.flags property correctly, and a spurious warning
message was displayed when the nmcli tool worked with VLAN connections. The validation routine has been
fixed, and the warning message no longer appears.
* NetworkManager did not propagate a media access control (MAC) address change from a bonding interface to
a VLAN interface on top of it. Consequently, a VLAN interface on top of a bond used an incorrect MAC
address. Now, NetworkManager synchronizes the addresses correctly.
Enhancements:
* IPv6 Privacy extensions are now enabled by default. NetworkManager checks the per-network configuration
files, NetworkManager.conf, and then falls back to /proc/sys/net/ipv6/conf/default/use_tempaddr to
determine and set IPv6 privacy settings at device activation.
* The NetworkManager command-line tool, nmcli, now allows setting the wake-on-lan property to 0 (none,
disable, disabled).
* NetworkManager now provides information about metered connections.
* NetworkManager daemon and the connection editor now support setting the Maximum Transmission Unit (MTU)
of a bond. It is now possible to change MTU of a bond interface in a GUI.
* NetworkManager daemon and the connection editor now support setting the MTU of a team, allowing to
change MTU of a teaming interface.
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/6079");
script_set_attribute(attribute:"solution", value:
"Update the affected packages.");
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: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-2015-8215");
script_set_attribute(attribute:"cvss3_score_source", value:"CVE-2015-0272");
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:"2015/04/04");
script_set_attribute(attribute:"patch_publication_date", value:"2015/11/23");
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:ModemManager");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:miracle:linux:ModemManager-glib");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:miracle:linux:NetworkManager");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:miracle:linux:NetworkManager-adsl");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:miracle:linux:NetworkManager-bluetooth");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:miracle:linux:NetworkManager-config-server");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:miracle:linux:NetworkManager-glib");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:miracle:linux:NetworkManager-libnm");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:miracle:linux:NetworkManager-libreswan");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:miracle:linux:NetworkManager-libreswan-gnome");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:miracle:linux:NetworkManager-team");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:miracle:linux:NetworkManager-tui");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:miracle:linux:NetworkManager-wifi");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:miracle:linux:NetworkManager-wwan");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:miracle:linux:libnm-gtk");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:miracle:linux:nm-connection-editor");
script_set_attribute(attribute:"cpe", value:"cpe:/o:miracle:linux:7");
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:"^7([^0-9]|$)", string:os_version)) audit(AUDIT_OS_NOT, 'MiracleLinux 7.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': '7',
'pkgs': [
{'reference':'libnm-gtk-1.0.6-2.el7', 'cpu':'i686', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'libnm-gtk-1.0.6-2.el7', 'cpu':'x86_64', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'ModemManager-1.1.0-8.git20130913.el7', 'cpu':'x86_64', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'ModemManager-glib-1.1.0-8.git20130913.el7', 'cpu':'i686', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'ModemManager-glib-1.1.0-8.git20130913.el7', 'cpu':'x86_64', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'NetworkManager-1.0.6-27.el7', 'cpu':'x86_64', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'NetworkManager-adsl-1.0.6-27.el7', 'cpu':'x86_64', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'NetworkManager-bluetooth-1.0.6-27.el7', 'cpu':'x86_64', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'NetworkManager-config-server-1.0.6-27.el7', 'cpu':'x86_64', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'NetworkManager-glib-1.0.6-27.el7', 'cpu':'i686', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'NetworkManager-glib-1.0.6-27.el7', 'cpu':'x86_64', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'NetworkManager-libnm-1.0.6-27.el7', 'cpu':'i686', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'NetworkManager-libnm-1.0.6-27.el7', 'cpu':'x86_64', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'NetworkManager-libreswan-1.0.6-3.el7', 'cpu':'x86_64', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'NetworkManager-libreswan-gnome-1.0.6-3.el7', 'cpu':'x86_64', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'NetworkManager-team-1.0.6-27.el7', 'cpu':'x86_64', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'NetworkManager-tui-1.0.6-27.el7', 'cpu':'x86_64', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'NetworkManager-wifi-1.0.6-27.el7', 'cpu':'x86_64', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'NetworkManager-wwan-1.0.6-27.el7', 'cpu':'x86_64', 'rpm_spec_vers_cmp':TRUE, 'epoch':'0'},
{'reference':'nm-connection-editor-1.0.6-2.el7', 'cpu':'x86_64', '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, 'ModemManager / ModemManager-glib / NetworkManager / 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