Bug 27241 - librepo new security issue CVE-2020-14352
Summary: librepo new security issue CVE-2020-14352
Status: RESOLVED FIXED
Alias: None
Product: Mageia
Classification: Unclassified
Component: Security (show other bugs)
Version: 7
Hardware: All Linux
Priority: Normal critical
Target Milestone: ---
Assignee: QA Team
QA Contact: Sec team
URL:
Whiteboard: MGA7-64-OK
Keywords: advisory, validated_update
Depends on:
Blocks:
 
Reported: 2020-09-03 22:14 CEST by David Walser
Modified: 2020-11-21 13:22 CET (History)
4 users (show)

See Also:
Source RPM: librepo-1.12.0-2.mga8.src.rpm
CVE:
Status comment:


Attachments

Description David Walser 2020-09-03 22:14:10 CEST
openSUSE has issued an advisory on August 30:
https://lists.opensuse.org/opensuse-security-announce/2020-08/msg00072.html

Mageia 7 is also affected.
David Walser 2020-09-03 22:14:36 CEST

Whiteboard: (none) => MGA7TOO

Comment 1 Aurelien Oudelet 2020-09-04 09:50:14 CEST
Hi, thanks for reporting this bug.
Assigned to the package maintainer.

(Packagers: Please set the status to 'assigned' if you are working on it)

Assignee: bugsquad => ngompa13
Keywords: (none) => Triaged

Comment 2 David Walser 2020-09-08 15:45:01 CEST
RedHat has issued an advisory for this today (September 8):
https://access.redhat.com/errata/RHSA-2020:3658
Comment 3 David Walser 2020-10-18 23:09:21 CEST
Fedora has issued an advisory for this today (October 18):
https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/thread/33RX4P5R5YL4NZSFSE4NOX37X6YCXAS4/

The issue is fixed upstream in 1.12.1.

The RedHat bug links the upstream commit that fixed the issue:
https://bugzilla.redhat.com/show_bug.cgi?id=1866498

Severity: major => critical

Comment 4 David Walser 2020-11-11 00:14:02 CET
RedHat has issued an advisory for this today (November 10):
https://access.redhat.com/errata/RHSA-2020:5012
Comment 5 Mike Rambo 2020-11-13 14:26:28 CET
Upgraded cauldron to 1.12.1.

Patched package uploaded for Mageia 7.

Advisory:
========================

Updated librepo package fixes security vulnerability:

It was discovered that librepo was subject to a directory traversal vulnerability where it failed to sanitize paths in remote repository metadata. An attacker controlling a remote repository may be able to copy files outside of the destination directory on the targeted system via path traversal. This flaw could potentially result in system compromise via the overwriting of critical system files (CVE-2020-14352).


References:
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-14352
https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/thread/33RX4P5R5YL4NZSFSE4NOX37X6YCXAS4/
========================

Updated packages in core/updates_testing:
========================
lib64repo0-1.10.3-1.1.mga7.x86_64.rpm
lib64repo-devel-1.10.3-1.1.mga7.x86_64.rpm
python3-librepo-1.10.3-1.1.mga7.x86_64.rpm

from librepo-1.10.3-1.1.mga7.src.rpm

Whiteboard: MGA7TOO => (none)
CC: (none) => mrambo
Assignee: ngompa13 => qa-bugs
Version: Cauldron => 7
Keywords: Triaged => (none)

Comment 6 Herman Viaene 2020-11-19 11:23:44 CET
MGA7-64 MATE on Peaq C1011
No installation issues.
No previous updates on this, so starting wild hunt.
# urpmq --whatrequires lib64repo0
lib64dnf2
lib64hif1
lib64repo0
python3-librepo
python3-librepo
Not promissing
# urpmq --whatrequires-recursive lib64repo0
shows pages full.
Tried some of the list, but many of them are either KDE- or Gnome-dependent, and i don't want those on this restricted notebook.
Final test will be dnfdragora, reporting later

CC: (none) => herman.viaene

Comment 7 Herman Viaene 2020-11-19 11:42:37 CET
Installed dnfdragora and run
# strace -o /home/tester7/Documents/librepo.txt dnfdragora 
Skipped exception: <[Errno 2] No such file or directory: './dnfdragora.yaml'> 
/usr/lib/python3.7/site-packages/dnfdragora/config.py:55: YAMLLoadWarning: calling yaml.load() without Loader=... is deprecated, as the default Loader is unsafe. Please read https://msg.pyyaml.org/load for full details.
  self._systemSettings = yaml.load(ymlfile)
Skipped exception: <[Errno 2] No such file or directory: '/root/.config/dnfdragora.yaml'> 
<_M_> [ui] YUILoader.cc:50 loadUI(): DISPLAY: ":0"
<_M_> [ui] YUILoader.cc:51 loadUI(): XDG_CURRENT_DESKTOP: ""
<_M_> [ui] YUILoader.cc:52 loadUI(): YUI_PREFERED_BACKEND: ""
and lots more .....
But it runs, and enabled the nonfree and tainted repos and the three update repos, and then installed one update.
The trace file shows a call to /lib64/librepo.so.0 which is what I wanted to see.
OK for me.

Whiteboard: (none) => MGA7-64-OK

Comment 8 Aurelien Oudelet 2020-11-19 22:41:54 CET
Validating.
Advisory pushed to SVN.

CC: (none) => ouaurelien, sysadmin-bugs
Keywords: (none) => advisory, validated_update

Comment 9 Mageia Robot 2020-11-21 13:22:19 CET
An update for this issue has been pushed to the Mageia Updates repository.

https://advisories.mageia.org/MGASA-2020-0429.html

Resolution: (none) => FIXED
Status: NEW => RESOLVED


Note You need to log in before you can comment on or make changes to this bug.