Bug 22956 - libraw security fixes upstream in 0.18.11 (including CVE-2018-10528 and CVE-2018-10529)
Summary: libraw security fixes upstream in 0.18.11 (including CVE-2018-10528 and CVE-2...
Status: RESOLVED FIXED
Alias: None
Product: Mageia
Classification: Unclassified
Component: Security (show other bugs)
Version: 6
Hardware: All Linux
Priority: Normal normal
Target Milestone: ---
Assignee: QA Team
QA Contact: Sec team
URL:
Whiteboard: MGA6-64-OK
Keywords: advisory, validated_update
Depends on:
Blocks: 22800
  Show dependency treegraph
 
Reported: 2018-04-27 09:06 CEST by José Jorge
Modified: 2022-02-22 18:46 CET (History)
5 users (show)

See Also:
Source RPM: libraw-0.18.8-1.mga6.src.rpm
CVE:
Status comment:


Attachments

Description José Jorge 2018-04-27 09:06:41 CEST
I have pushed libraw 0.18.9 to updates testing.

Suggested advisory :

Minor security fixes have been done in libraw version 0.18.9.

Ref: https://www.libraw.org/news/libraw-0-18-9

SRPM:
libraw-0.18.9-1.mga6.srpm

RPMS :
libraw-tools-0.18.9-1.mga6.i586.rpm
libraw16-0.18.9-1.mga6.i586.rpm
libraw_r16-0.18.9-1.mga6.i586.rpm
libraw-devel-0.18.9-1.mga6.i586.rpm
José Jorge 2018-04-27 09:07:30 CEST

CC: (none) => lists.jjorge

David Walser 2018-04-27 16:53:29 CEST

Blocks: (none) => 22800

Comment 1 David Walser 2018-04-27 16:53:52 CEST
0.18.9 fixed SA81800 and some buffer and stack overruns:
https://www.libraw.org/download

QA Contact: (none) => security
Component: RPM Packages => Security
Source RPM: libraw => libraw-0.18.8-1.mga6.src.rpm

Comment 2 Len Lawrence 2018-04-28 22:07:17 CEST
Mageia 6, x86_64.

libraw packages already installed.
Clean update, ignoring the rpm signature problems.

Running virtually the same tests as for bug 22695 on the same collection of RAW images.
$ 4channels RAW_NIKON_D1.NEF
Writing file RAW_NIKON_D1.NEF.R.tiff
Writing file RAW_NIKON_D1.NEF.G.tiff
Writing file RAW_NIKON_D1.NEF.B.tiff
Writing file RAW_NIKON_D1.NEF.G2.tiff
These display as black frames.
$ multirender_test RAW_NIKON_D1.NEF
Processing file RAW_NIKON_D1.NEF
Writing file RAW_NIKON_D1.NEF.1.ppm
Writing file RAW_NIKON_D1.NEF.2.ppm
Writing file RAW_NIKON_D1.NEF.3.ppm
Writing file RAW_NIKON_D1.NEF.4.ppm
Writing file RAW_NIKON_D1.NEF.5.ppm
Writing file RAW_NIKON_D1.NEF.6.ppm
Writing file RAW_NIKON_D1.NEF.7.ppm
Writing file RAW_NIKON_D1.NEF.8.ppm
<That worked better>
$ display RAW_NIKON_D1.NEF.1.ppm
<This showed an image very similar to the original file (using nomacs)>
$ postprocessing_benchmark -R 20 RAW_NIKON_D1.NEF
Processing file RAW_NIKON_D1.NEF
19.8 msec for unpack
Performance: 8.40 Mpix/sec
File: RAW_NIKON_D1.NEF, Frame: 0 2.7 total Mpix, 317.1 msec
Params:      WB=default Highlight=0 Qual=-1 HalfSize=No Median=0 Wavelet=0
Crop:        0-0:2012x1324, active Mpix: 2.66, 3.2 frames/sec

$ raw-identify RAW_FUJI*
RAW_FUJI_S5PRO_V106.RAF is a Fujifilm S5Pro image.
RAW_FUJI_S6500FD.RAF is a Fujifilm S6500fd image.
RAW_FUJI_X-T10.RAF is a Fujifilm X-T10 image.

$ unprocessed_raw RAW_NIKON_D1.NEF
Processing file RAW_NIKON_D1.NEF
Image size: 2012x1324
Raw size: 2012x1324
Margins: top=0, left=0
Unpacked....
Stored to file RAW_NIKON_D1.NEF.pgm
$ display RAW_NIKON_D1.NEF.pgm
<Showed a black frame>
$ unprocessed_raw -g RAW_NIKON_D1.NEF
Processing file RAW_NIKON_D1.NEF
Image size: 2012x1324
Raw size: 2012x1324
Margins: top=0, left=0
Unpacked....
Gamma-corrected....
Stored to file RAW_NIKON_D1.NEF.pgm
$ display RAW_NIKON_D1.NEF.pgm
<Image displayed in dark greyscale tones>

There are probably other tests that could be used but these show no regression with respect to previous tests.

We can pass this.

CC: (none) => tarazed25
Whiteboard: (none) => MGA6-64-OK

Comment 3 David Walser 2018-04-28 22:55:08 CEST
Don't ignore signature problems.

CC: (none) => luigiwalser

Comment 4 Len Lawrence 2018-04-29 10:00:16 CEST
Re comment 3.  
What is the correct procedure when the signing fails?  Just report that?
There was a note on the mailing lists that this is the time of year when certificates are renewed so we should expect more of this kind of thing?
Comment 5 David Walser 2018-04-29 15:18:11 CEST
Someone mentioned yesterday that it could also be a disk space issue causing it.  Either way, just feedback any affected bugs until the sysadmins fix the build system and rebuild the affected packages.
Comment 6 Lewis Smith 2018-04-29 20:25:48 CEST
Re the previous 4 comments, esp c5, feedbacking this. Thanks for tests, Len.
Will do the advisory now.

Keywords: (none) => advisory, feedback

Comment 7 Dave Hodgins 2018-05-01 11:50:07 CEST
The following package has bad signature:
/var/cache/urpmi/rpms/lib64raw16-0.18.9-1.mga6.x86_64.rpm: Missing signature (OK ((none)))

The unsigned package must be rebuilt, and then the tests repeated.

Removing the advisory and OK whiteboard entries, as the srpm will have to be
updated in the advisory, and the new package re-tested, once the package has
been rebuilt.

CC: (none) => davidwhodgins
Whiteboard: MGA6-64-OK => (none)
Keywords: advisory => (none)

Comment 8 José Jorge 2018-05-01 14:39:04 CEST
(In reply to Dave Hodgins from comment #7)
> The unsigned package must be rebuilt, and then the tests repeated.

Version 0.18.9-2 pushed. I'd say only the signature needs a test, as nothing else changed.
José Jorge 2018-05-01 14:39:12 CEST

Keywords: feedback => (none)

Comment 9 David Walser 2018-05-03 18:50:15 CEST
Two more vulnerabilities were discovered in 0.18.9.

openSUSE has issued an advisory for this today (May 3):
https://lists.opensuse.org/opensuse-updates/2018-05/msg00009.html

Summary: libraw minor security fixes upstream in 0.18.9 => libraw minor security fixes upstream in 0.18.9 (plus CVE-2018-10528 and CVE-2018-10529)
Keywords: (none) => feedback

Comment 10 José Jorge 2018-05-04 17:46:27 CEST
I have pushed libraw 0.18.10 to updates testing. So the advisory get longer.
Comment 11 David Walser 2018-05-12 23:37:57 CEST
Indeed the CVEs were fixed in 0.18.10.  0.18.11 fixes SA83050 and other issues:
https://www.libraw.org/download

Summary: libraw minor security fixes upstream in 0.18.9 (plus CVE-2018-10528 and CVE-2018-10529) => libraw security fixes upstream in 0.18.11 (including CVE-2018-10528 and CVE-2018-10529)

Comment 12 José Jorge 2018-05-13 08:51:16 CEST
Lets hope it is the last one : I have pushed libraw 0.18.11 to updates testing.

Suggested advisory :

Several security fixes have been done in libraw version 0.18.9, then 0.18.10 and finally 0.18.11.

Ref: https://www.libraw.org/news/libraw-0-18-11

SRPM:
libraw-0.18.11-1.mga6.srpm

RPMS :
libraw-tools-0.18.11-1.mga6.i586.rpm
libraw16-0.18.11-1.mga6.i586.rpm
libraw_r16-0.18.11-1.mga6.i586.rpm
libraw-devel-0.18.11-1.mga6.i586.rpm

Keywords: feedback => (none)

Comment 13 Len Lawrence 2018-05-15 13:25:16 CEST
Shall look at this for mga6 later this afternoon.
Comment 14 Len Lawrence 2018-05-15 17:40:09 CEST
Mageia 6, x86_64
It is not clear how to exercize all of the tools but some are fairly easy to use.  Usage information is printed if a command is invoked without arguments.

Repeating the earlier tests after updating.
$ raw-identify RAW_NIKON_D1.NEF
RAW_NIKON_D1.NEF is a Nikon D1 image.
This can be displayed with nomacs or shotwell.
$ shotwell RAW_NIKON_D1.NEF
ORF IMAGE
ORF IMAGE
ORF IMAGE
ORF IMAGE
ORF IMAGE
invalid type value detected in Image::printIFDStructure:  0
It displays OK though.
Extract individual frames from a composite image.
$ 4channels RAW_NIKON_D1.NEF
Processing file RAW_NIKON_D1.NEF
Black level (unscaled)=0
Writing file RAW_NIKON_D1.NEF.R.tiff
Writing file RAW_NIKON_D1.NEF.G.tiff
Writing file RAW_NIKON_D1.NEF.B.tiff
Writing file RAW_NIKON_D1.NEF.G2.tiff

$ nomacs RAW_NIKON_D1.NEF.G.tiff
Shows a black panel but under 'Adjustments' select 'auto-adjust' or 'normalize' to enhance the image.

$ multirender_test 'KODAK C603 C643 Format 420 CCDI0001.RAW'
Processing file KODAK C603 C643 Format 420 CCDI0001.RAW
Writing file KODAK C603 C643 Format 420 CCDI0001.RAW.1.ppm
Writing file KODAK C603 C643 Format 420 CCDI0001.RAW.2.ppm
Writing file KODAK C603 C643 Format 420 CCDI0001.RAW.3.ppm
Writing file KODAK C603 C643 Format 420 CCDI0001.RAW.4.ppm
Writing file KODAK C603 C643 Format 420 CCDI0001.RAW.5.ppm
Writing file KODAK C603 C643 Format 420 CCDI0001.RAW.6.ppm
Writing file KODAK C603 C643 Format 420 CCDI0001.RAW.7.ppm
Writing file KODAK C603 C643 Format 420 CCDI0001.RAW.8.ppm

The individual PPM files can be viewed with nomacs.

$ unprocessed_raw -g 'KODAK C603 C643 Format 420 CCDI0001.RAW' 
Processing file KODAK C603 C643 Format 420 CCDI0001.RAW
Image size: 2864x2152
Raw size: 2864x2152
Margins: top=0, left=0
Unpacked....
Gamma-corrected....
Stored to file KODAK C603 C643 Format 420 CCDI0001.RAW.pgm
$ nomacs 'KODAK C603 C643 Format 420 CCDI0001.RAW.pgm'
[INFO] Hi there
[WARNING] QObject::connect: Cannot connect (null)::runPlugin(DkViewPortInterface*, bool) to nmc::DkControlWidget::setPluginWidget(DkViewPortInterface*, bool)
[WARNING] QObject::connect: Cannot connect (null)::applyPluginChanges(bool) to nmc::DkControlWidget::applyPluginChanges(bool)
[WARNING] QObject::connect: Cannot connect (null)::runPlugin(DkPluginContainer*, const QString&) to nmc::DkViewPort::applyPlugin(DkPluginContainer*, const QString&)
[INFO] local client created in:  3 ms
[INFO] CSS loaded from:  ":/nomacs/stylesheet.css"
[INFO] LAN client created in:  0 ms
[INFO] Initialization takes:  51 ms
[INFO] "/home/lcl/qa/libraw/KODAK C603 C643 Format 420 CCDI0001.RAW.pgm" loaded in 19 ms

A greyscale image is displayed in the last case.

$ mem_image RAW_OLYMPUS_C8080.ORF
Processing RAW_OLYMPUS_C8080.ORF
$ ll *C8080*
-rw-r--r-- 1 lcl lcl 12091780 Sep 29  2017 RAW_OLYMPUS_C8080.ORF
-rw-r--r-- 1 lcl lcl 24147377 May 15 16:30 RAW_OLYMPUS_C8080.ORF.ppm
The PPM file displays as an enlarged version of the original in nomacs.
Generate a thumbnail of the original image.
$ mem_image -e RAW_OLYMPUS_C8080.ORF
Processing RAW_OLYMPUS_C8080.ORF
$ display RAW_OLYMPUS_C8080.ORF.thumb.jpg

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

Comment 15 Lewis Smith 2018-05-15 19:49:12 CEST
Thanks yet again Len.
Advisory from comment 12.

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

Comment 16 Mageia Robot 2018-05-16 10:26:29 CEST
An update for this issue has been pushed to the Mageia Updates repository.

https://advisories.mageia.org/MGASA-2018-0242.html

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

Comment 18 David Walser 2022-02-22 18:46:18 CET
0.18.9 also fixed CVE-2018-5808:
https://www.debian.org/lts/security/2022/dla-2903

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