7 High
CVSS3
Attack Vector
LOCAL
Attack Complexity
HIGH
Privileges Required
LOW
User Interaction
NONE
Scope
UNCHANGED
Confidentiality Impact
HIGH
Integrity Impact
HIGH
Availability Impact
HIGH
CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H
0.0004 Low
EPSS
Percentile
14.1%
Xenstore: Guests can get access to Xenstore nodes of deleted domains Access rights of Xenstore nodes are per domid.
When a domain is gone, there might be Xenstore nodes left with access rights containing the domid of the removed domain.
This is normally no problem, as those access right entries will be corrected when such a node is written later. There is a small time window when a new domain is created, where the access rights of a past domain with the same domid as the new one will be regarded to be still valid, leading to the new domain being able to get access to a node which was meant to be accessible by the removed domain. For this to happen another domain needs to write the node before the newly created domain is being introduced to Xenstore by dom0.
Note that Nessus has not tested for this issue but has instead relied only on the application’s self-reported version number.
#%NASL_MIN_LEVEL 80900
##
# (C) Tenable Inc.
##
include('compat.inc');
if (description)
{
script_id(167279);
script_version("1.4");
script_set_attribute(attribute:"plugin_modification_date", value:"2023/09/08");
script_cve_id("CVE-2022-42320");
script_xref(name:"IAVB", value:"2022-B-0048-S");
script_name(english:"Xenstore: Guests can get access to Xenstore nodes of deleted domains (XSA-417)");
script_set_attribute(attribute:"synopsis", value:
"The remote Xen hypervisor installation is missing a security update.");
script_set_attribute(attribute:"description", value:
"Xenstore: Guests can get access to Xenstore nodes of deleted domains Access rights of Xenstore nodes are per domid.
When a domain is gone, there might be Xenstore nodes left with access rights containing the domid of the removed domain.
This is normally no problem, as those access right entries will be corrected when such a node is written later. There is
a small time window when a new domain is created, where the access rights of a past domain with the same domid as the
new one will be regarded to be still valid, leading to the new domain being able to get access to a node which was meant
to be accessible by the removed domain. For this to happen another domain needs to write the node before the newly
created domain is being introduced to Xenstore by dom0.
Note that Nessus has not tested for this issue but has instead relied only on the application's self-reported version
number.");
script_set_attribute(attribute:"see_also", value:"https://xenbits.xenproject.org/xsa/advisory-417.txt");
script_set_attribute(attribute:"solution", value:
"Apply the appropriate patch according to the vendor advisory.");
script_set_cvss_base_vector("CVSS2#AV:L/AC:H/Au:S/C:C/I:C/A:C");
script_set_cvss_temporal_vector("CVSS2#E:U/RL:OF/RC:C");
script_set_cvss3_base_vector("CVSS:3.0/AV:L/AC:H/PR:L/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-2022-42320");
script_set_attribute(attribute:"exploitability_ease", value:"No known exploits are available");
script_set_attribute(attribute:"vuln_publication_date", value:"2022/11/01");
script_set_attribute(attribute:"patch_publication_date", value:"2022/11/01");
script_set_attribute(attribute:"plugin_publication_date", value:"2022/11/11");
script_set_attribute(attribute:"potential_vulnerability", value:"true");
script_set_attribute(attribute:"plugin_type", value:"local");
script_set_attribute(attribute:"cpe", value:"cpe:/o:xen:xen");
script_set_attribute(attribute:"stig_severity", value:"I");
script_end_attributes();
script_category(ACT_GATHER_INFO);
script_family(english:"Misc.");
script_copyright(english:"This script is Copyright (C) 2022-2023 and is owned by Tenable, Inc. or an Affiliate thereof.");
script_dependencies("xen_server_detect.nbin");
script_require_keys("installed_sw/Xen Hypervisor", "Settings/ParanoidReport");
exit(0);
}
include('vcf.inc');
include('vcf_extras.inc');
var fixes;
var app = 'Xen Hypervisor';
var app_info = vcf::xen_hypervisor::get_app_info(app:app);
if (report_paranoia < 2) audit(AUDIT_PARANOID);
fixes['4.13']['fixed_ver'] = '4.13.4';
fixes['4.13']['fixed_ver_display'] = '4.13.4 (changeset e6655e8)';
fixes['4.13']['affected_ver_regex'] = "^4\.13([^0-9]|$)";
fixes['4.13']['affected_changesets'] = make_list('2fdf874', 'e30f7c6',
'0252d04', '723e248', 'c3c5f0a', '0135300', 'bc93157', 'c084ee8',
'd71e4ec', '63dc2a1', '146b954', '7dc06ed', 'c17d491', '115156c',
'b917d57', '8cd25ae', 'f859218', '5fa4f2c', 'e84ef3b', '2963ee5',
'538b61b', 'cde36e0', '1761828', '6f31127', '95fe444', 'fcba6c7',
'149ebf0', '5b66863', '3954468', '0be63c2', '042de08', '867fcf6',
'e6b1e38', '2ae9bbe', '9992c08', 'eed4ef4', '3e7aa35', '6e537d3',
'08eec20', '181ff7a', 'aa78910', '0021c26', '763f965', '4e38cc1',
'5475195', 'bde3b13', 'd8a6930', 'c946524', 'f8614c7', '3feba68',
'3c71016', 'ebe3f5d', '5994b73', 'fbf19ba', 'ba33672', '196b4f4',
'10d8c56', '4b42462', 'a7e7287', '159e223', 'b8d573a', '074e388',
'bf5f5e8', '8974821', '55e4c72', 'd43b47e', '4eddf13', 'f614e3c',
'8a2cc1e', '14c5e0c', '87ff113', '413b083', 'a84bc5b', '1575075',
'f9ae12f', 'e8c04e4', '8d9f361', 'fce392f', 'c7da430', '7669737',
'3826ba5', 'fe97133', 'd64d466', 'a6902a6', '169a283', '454d535',
'e6d6b5b', '7cfe357', 'ab37463', '92acf6b', '73e25ec', '235aa15',
'33c1365', '81918ce', '650b888', '920e93d', '2ce2aec', '8ed46cc',
'7b9814b', 'fbabb62', '47125f5', 'd99df7d', '03db213', '9a8804a',
'ce49a1d', 'e48c787', '2d601a5', 'd0e2c27', 'd3c2319', 'd3cfb4b',
'd94d006', '0b28069', 'b4bb02d', '6e2fc12');
fixes['4.14']['fixed_ver'] = '4.14.5';
fixes['4.14']['fixed_ver_display'] = '4.14.5 (changeset 2761f00)';
fixes['4.14']['affected_ver_regex'] = "^4\.14([^0-9]|$)";
fixes['4.14']['affected_changesets'] = make_list('55e23bf', '2cf1372',
'8db5e6f', 'b8b3734', '7f5d36d', '3a67865', '276908c', 'f6a5a1d',
'0bc44ec', '7c5316d', '0cc9d66', '36812ae', '3a7c46a', 'cc28906',
'03889b6', '0406917', '93a9c3a', '82dfb67', '9ad9fde', '83b9da9',
'3dafa5a', '36ed7fe', 'a03e2a3', '3530aa6', '00240cf', 'bd50953',
'd0dd461', '96220ae', 'f25c377', '016de62', '6e5608d', '7d64fb5',
'4220eac', 'fd688b0', 'e3b66e5', '804f83b', 'f90615c', 'fc10984',
'9b5a7fd', 'b8f4a5d', '0bab3ab', '3163e34', '54b6eab', '9c975e6',
'7a7406b', '4ed063a', '261b882', 'ef571a5', '87d90d5', '5bccfbb',
'318d7bc', '0a6561b', 'd2f0cf7', '51e812a', '73465a7', 'b60c995',
'e5fd508', '2d31666', 'f178689', 'a556377', '104dd46', 'c5f774e',
'9f07848', '878e684', 'd7ebe3d', '82ba97e', '25c7ade', '204d4f1',
'07fbed8', 'a72146d', '758f40d', 'c70071e', '17848df');
fixes['4.15']['fixed_ver'] = '4.15.4';
fixes['4.15']['fixed_ver_display'] = '4.15.4-pre (changeset 8012324)';
fixes['4.15']['affected_ver_regex'] = "^4\.15([^0-9]|$)";
fixes['4.15']['affected_changesets'] = make_list('607e186', '26faa6b',
'64048b4', '9e5290d', 'fccdca8', 'bbb4cea', '9f89883', '4581622',
'8fabb96', '4d30175', '1fc3ecc', '32efe29', '9c2e71f', '0113aac',
'aa29eb6', 'ccef72b', '1035371', '8ee7ed7', '3e51699', '97c251f',
'56300e8', '53a77b8', '8999db8', 'b322923', '0d8bea4', '579e733',
'ee03d9b', 'ddab5b1', 'b68e3fd', 'a46f01f', '317894f', '9b8b65c',
'bff4c44', '6b035f4', '08bc78b', '9c51146', '1f679f0', 'b833014',
'916668b', '3885fa4', 'f8915cd', '6f948fd', '816580a', '0d23392',
'9690bb2', '62e534d', '3ac64b3', '182f8bb', '19cf28b', 'd176808',
'd638c20', '735b108', '7923ea4', 'd65ebac', 'bb43a10', '7ad38a3',
'c521504', '45336d8', '0c0680d', 'b03074b', '686c920', '7f055b0',
'4f9b535', '1e26afa', '95f6d55', 'd24a10a', '0f3eab9', '0d805f9',
'09fc590', '9acedc3', 'a075900', '104a54a', 'fba0c22', 'c373ad3',
'1e31848', '5efcae1', '8ae0b4d', 'df3395f', '1b9845d', 'b64f1c9',
'30d3de4', '4799a20', 'a095c6c', '5f1d017', 'c370994', 'a2684d9',
'2173d9c', '3859f3e', '35bf91d', '409976b', '2b29ac4', 'f0d78e0',
'd7f5fb1', 'c707015', '2cfbca3', '156ab77', '505771b');
fixes['4.16']['fixed_ver'] = '4.16.3';
fixes['4.16']['fixed_ver_display'] = '4.16.3-pre (changeset 036fa87)';
fixes['4.16']['affected_ver_regex'] = "^4\.16([^0-9]|$)";
fixes['4.16']['affected_changesets'] = make_list('c758765', 'a026fdd',
'cec3c52', 'ea15678', '59981b0', '8b60ad4', 'a63bbcf', 'ab21bb1',
'b0e95b4', 'b584b9b', '0a67b4e', '578d422', 'bce9857', '30c8e75',
'2e406cf', '2d39cf7', '7017cfe', '717460e', '787241f', 'b270ad4',
'49344fb', 'd08cdf0', 'e26d6f4', 'f8af1a2', 'ce6aea7', '427e86b',
'28ea39a', '62e7fb7', 'c229b16', '2f75e36', '08f6c88', '426a834',
'aac1085', '8f3f8f2', '96d26f1', '9fdb4f1', '88f2bf5', '481465f',
'54f8ed8', 'd4a11d6', '02ab5e9', '5dae065', 'e5a5bde', '86cb374',
'1bce7fb', '3f4da85', 'b956076', '4951007', '2b694dd', '4f3204c',
'c377cea', 'd4e971a', 'e8882bc', 'e85e2a3', '32cb815', '44e9dcc',
'3a16da8', '914fc8e', '755a9b5', 'a603386', 'f5959ed', '943635d',
'745e0b3', '28d3f67', '40e9daf', '3422c19', '8fc19c1', '937fdba',
'8d9531a', '4aa3291');
vcf::xen_hypervisor::check_version_and_report(app_info:app_info, fixes:fixes, severity:SECURITY_WARNING);