Bug 21057 - libcroco new security issues CVE-2017-7960, CVE-2017-7961, CVE-2017-8834, and CVE-2017-8871
Summary: libcroco new security issues CVE-2017-7960, CVE-2017-7961, CVE-2017-8834, and...
Status: RESOLVED FIXED
Alias: None
Product: Mageia
Classification: Unclassified
Component: Security (show other bugs)
Version: 7
Hardware: All Linux
Priority: Normal normal
Target Milestone: ---
Assignee: QA Team
QA Contact: Sec team
URL:
Whiteboard: MGA7-64-OK
Keywords: advisory, validated_update
Depends on:
Blocks:
 
Reported: 2017-06-10 00:23 CEST by David Walser
Modified: 2019-12-15 19:04 CET (History)
6 users (show)

See Also:
Source RPM: libcroco-0.6.12-2.mga6.src.rpm
CVE:
Status comment:


Attachments
example css file (526 bytes, text/css)
2019-12-07 11:53 CET, Herman Viaene
Details

Description David Walser 2017-06-10 00:23:24 CEST
Two security issues reported upstream in libcroco have been assigned CVEs:
https://bugzilla.gnome.org/show_bug.cgi?id=782647
https://bugzilla.gnome.org/show_bug.cgi?id=782649

No fixes are available yet.

Mageia 5 is also affected.
David Walser 2017-06-10 00:23:32 CEST

Whiteboard: (none) => MGA5TOO

Comment 1 Marja Van Waes 2017-06-11 09:05:03 CEST
Assigning to all packagers collectively, since there is no registered maintainer for this package.

Assignee: bugsquad => pkg-bugs
CC: (none) => marja11

Comment 2 Rémi Verschelde 2017-07-01 10:18:00 CEST
There seems to be two other older CVEs which I'm not sure we've patched so far:
- CVE-2017-7960: https://security-tracker.debian.org/tracker/CVE-2017-7960
- CVE-2017-7961: https://security-tracker.debian.org/tracker/CVE-2017-7961

Those two have upstream patches.
Comment 3 Rémi Verschelde 2017-07-01 10:21:50 CEST
For the reference, all 4 CVEs are considered minor by both Debian and RedHat, and WONTFIX for RHEL [567].
Comment 4 Rémi Verschelde 2017-07-01 10:23:14 CEST
(In reply to Rémi Verschelde from comment #2)
> There seems to be two other older CVEs which I'm not sure we've patched so
> far:
> - CVE-2017-7960: https://security-tracker.debian.org/tracker/CVE-2017-7960
> - CVE-2017-7961: https://security-tracker.debian.org/tracker/CVE-2017-7961
> 
> Those two have upstream patches.

Those two are fixed in Cauldron already by David Walser, but not in Mageia 5.
Comment 5 David Walser 2017-07-01 16:18:57 CEST
(In reply to Rémi Verschelde from comment #4)
> Those two are fixed in Cauldron already by David Walser, but not in Mageia 5.

Mageia 5 is not affected.
David Walser 2017-07-07 04:24:46 CEST

Whiteboard: MGA5TOO => MGA6TOO, MGA5TOO

Comment 6 David Walser 2017-12-28 23:11:16 CET
Still no fixes, so no can do for Mageia 5.

Whiteboard: MGA6TOO, MGA5TOO => MGA6TOO

David Walser 2018-02-02 18:13:55 CET

Status comment: (none) => Not fixed upstream as of end of 2017

David Walser 2019-01-21 02:41:58 CET

Status comment: Not fixed upstream as of end of 2017 => Not fixed upstream as of end of 2018

David Walser 2019-06-23 19:24:39 CEST

Whiteboard: MGA6TOO => MGA7TOO, MGA6TOO

Comment 7 David Walser 2019-12-04 23:04:53 CET
openSUSE has issued an advisory for this on June 18:
https://lists.opensuse.org/opensuse-updates/2019-06/msg00092.html

The new CVEs I just added are fixed in 0.6.13.  I'm not sure if the original two are as well.

Status comment: Not fixed upstream as of end of 2018 => (none)
Whiteboard: MGA7TOO, MGA6TOO => MGA7TOO
Summary: libcroco new security issues CVE-2017-8834 and CVE-2017-8871 => libcroco new security issues CVE-2017-7960, CVE-2017-7961, CVE-2017-8834, and CVE-2017-8871

Comment 8 David GEIGER 2019-12-05 08:18:21 CET
Still not, CVE-2017-8834 and CVE-2017-8871 are not yet fixed upstream.

There is a proposed patch who seems fixes both, but not yet accepted upstream:

https://bugzilla.gnome.org/show_bug.cgi?id=782647

https://bugzilla.gnome.org/show_bug.cgi?id=782649#c2

CC: (none) => geiger.david68210

Comment 9 David Walser 2019-12-05 14:58:07 CET
We can borrow the patch from openSUSE then.
Comment 10 David GEIGER 2019-12-06 07:23:15 CET
Done for both Cauldron and mga7!
Comment 11 David Walser 2019-12-06 13:39:22 CET
Advisory:
========================

Updated libcroco packages fix security vulnerabilities:

Heap overflow (input: check end of input before reading a byte)
(CVE-2017-7960).

Undefined behavior (tknzr: support only max long rgb values) (CVE-2017-7961).

Denial of service (memory allocation error) via a crafted CSS file
(CVE-2017-8834).

Denial of service (infinite loop and CPU consumption) via a crafted CSS file
(CVE-2017-8871).

References:
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-7960
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-7961
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-8834
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-8871
https://lists.opensuse.org/opensuse-updates/2019-06/msg00092.html
========================

Updated packages in core/updates_testing:
========================
libcroco0.6_3-0.6.13-1.1.mga7
libcroco-devel-0.6.13-1.1.mga7
libcroco-utils-0.6.13-1.1.mga7

from libcroco-0.6.13-1.1.mga7.src.rpm

Assignee: pkg-bugs => qa-bugs
Whiteboard: MGA7TOO => (none)
Version: Cauldron => 7

Comment 12 Herman Viaene 2019-12-07 11:45:36 CET
MGA7-64 Plasma on Lenovo B50
No installation issues
Not much to find with urpmq
Tried to fiddle with csslint-0.6 command.
$ csslint-0.6 -h
Usage: csslint <path to a css file>
        | csslint -v|--version
        | csslint --dump-location <path to a css file>
        | csslint <--evaluate | -e> [--author-sheet <path> --user-sheet <path> --ua-sheet <path>
           ] --xml <path> --xpath <xpath expression>
Googled an example css file (see attachment) and
$ csslint-0.6 -v
0.6.12

$ csslint-0.6 --dump-location gistfile.css 
body {
/************************************************
 *Parsing location information of the selector
 ************************************************/
/*body*/
/*line:3 column:1 byte offset:108 */
  /*body*/
  /*line:3 column:1 byte offset:108 */


margin : 25px;
ad a lot more
Seems to provide info on each line of the file.
Oracle man pages say
"  csslint-0.6 parses one or more CSS (Cascading Style Sheet) files, spec-
       ified on the command line.  It displays various types of output depend-
       ing on the options specified.  It is useful for detecting errors in the
       CSS code and in the CSS parser itself.

       Except  when  the  --dump-location option is used, csslint-0.6 parses a
       CSS file and builds a CSS object model."
and
"
 --dump-location         Dumps parsing location information  for  selec-
                               tors and property declarations."

If that al makes sense to someone, I'll be happy to OK the update.

CC: (none) => herman.viaene

Comment 13 Herman Viaene 2019-12-07 11:53:01 CET
Created attachment 11388 [details]
example css file
Comment 14 Thomas Andrews 2019-12-15 18:24:26 CET
Herman's test included a clean install, and while the output isn't something the layman would understand it doesn't look like it failed.

I'll OK it, and validate. Advisory in Comment 11.

CC: (none) => andrewsfarm, sysadmin-bugs
Whiteboard: (none) => MGA7-64-OK
Keywords: (none) => validated_update

Thomas Backlund 2019-12-15 18:40:27 CET

CC: (none) => tmb
Keywords: (none) => advisory

Comment 15 Mageia Robot 2019-12-15 19:04:13 CET
An update for this issue has been pushed to the Mageia Updates repository.

https://advisories.mageia.org/MGASA-2019-0389.html

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


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