Bug 2223718

Summary: CVE-2023-3750 libvirt: improper locking in virStoragePoolObjListSearch may lead to denial of service [fedora-all]
Product: [Fedora] Fedora Reporter: Mauro Matteo Cascella <mcascell>
Component: libvirtAssignee: Libvirt Maintainers <libvirt-maint>
Status: POST --- QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: medium    
Version: 38CC: berrange, clalancette, crobinso, jforbes, laine, libvirt-maint, pkrempa, virt-maint
Target Milestone: ---Keywords: Security, SecurityTracking
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: No Doc Update
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 2222210    

Description Mauro Matteo Cascella 2023-07-18 15:38:29 UTC
More information about this security flaw is available in the following bug:

http://bugzilla.redhat.com/show_bug.cgi?id=2222210

Disclaimer: Community trackers are created by Red Hat Product Security team on a best effort basis. Package maintainers are required to ascertain if the flaw indeed affects their package, before starting the update process.

Comment 1 Mauro Matteo Cascella 2023-07-18 15:38:33 UTC
Use the following template to for the 'fedpkg update' request to submit an
update for this issue as it contains the top-level parent bug(s) as well as
this tracking bug.  This will ensure that all associated bugs get updated
when new packages are pushed to stable.

=====

# bugfix, security, enhancement, newpackage (required)
type=security

# low, medium, high, urgent (required)
severity=medium

# testing, stable
request=testing

# Bug numbers: 1234,9876
bugs=2222210,2223718

# Description of your update
notes=Security fix for [PUT CVEs HERE]

# Enable request automation based on the stable/unstable karma thresholds
autokarma=True
stable_karma=3
unstable_karma=-3

# Automatically close bugs when this marked as stable
close_bugs=True

# Suggest that users restart after update
suggest_reboot=False

======

Additionally, you may opt to use the bodhi web interface to submit updates:

https://bodhi.fedoraproject.org/updates/new

Comment 2 Peter Krempa 2023-07-25 11:51:44 UTC
Fixed upstream:

commit 9a47442366fcf8a7b6d7422016d7bbb6764a1098
Author: Peter Krempa <pkrempa>
Date:   Thu Jul 13 16:16:37 2023 +0200

    storage: Fix returning of locked objects from 'virStoragePoolObjListSearch'
    
    CVE-2023-3750
    
    'virStoragePoolObjListSearch' explicitly documents that it's returning
    a pointer to a locked and ref'd pool that maches the lookup function.
    
    This was not the case as in commit 0c4b391e2a9 (released in
    libvirt-8.3.0) the code was accidentally converted to use 'VIR_LOCK_GUARD'
    which auto-unlocked it when leaving the scope, even when the code was
    originally "leaking" the lock.
    
    Revert the corresponding conversion and add a comment that this function
    is intentionally leaking a locked object.
    
    Fixes: 0c4b391e2a9
    Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=2221851
    Signed-off-by: Peter Krempa <pkrempa>
    Reviewed-by: Ján Tomko <jtomko>

v9.5.0-78-g9a47442366