Bug 1373107 - segfault in headerSigVerify()
Summary: segfault in headerSigVerify()
Alias: None
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: rpm
Version: 7.4
Hardware: Unspecified
OS: Unspecified
Target Milestone: rc
: ---
Assignee: Florian Festi
QA Contact: Jan Blazek
Depends On:
Blocks: 1380360 1371487
TreeView+ depends on / blocked
Reported: 2016-09-05 08:41 UTC by Cedric Buissart 🐶
Modified: 2017-08-01 19:33 UTC (History)
0 users

Fixed In Version: rpm-4.11.3-22.el7
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
: 1437532 (view as bug list)
Last Closed: 2017-08-01 19:33:33 UTC
Target Upstream Version:

Attachments (Terms of Use)

System ID Priority Status Summary Last Updated
Red Hat Product Errata RHBA-2017:2160 normal SHIPPED_LIVE rpm bug fix and enhancement update 2017-08-01 18:17:27 UTC

Description Cedric Buissart 🐶 2016-09-05 08:41:50 UTC
Description of problem:

Corrupted RPM files may crash rpm in headerSigVerify()

Version-Release number of selected component (if applicable): all, including upstream

How reproducible: 100%

Steps to Reproduce:
1. corrupt an RPM file to add a DSA, RSA or SHA1 header flag that contains data outside of allocated memory (offset + length goes beyond data length)
2. rpm -qp <RPM>

Actual results:
Crash and/or valgrind warning, with the following trace :

==11445== Invalid read of size 8   
==11445==    at 0x4C2E25E: memcpy@@GLIBC_2.14 (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==11445==    by 0x4E62530: UnknownInlinedFun (string3.h:51)
==11445==    by 0x4E62530: headerSigVerify (package.c:240)
==11445==    by 0x4E62530: headerVerify (package.c:363)
==11445==    by 0x4E62915: rpmpkgReadHeader (package.c:457)
==11445==    by 0x4E62BEA: rpmpkgRead (package.c:578)
==11445==    by 0x4E6352D: rpmReadPackageFile (package.c:717)
==11445==    by 0x4E6EB81: rpmgiReadHeader (rpmgi.c:90)
==11445==    by 0x4E6EB81: rpmgiLoadReadHeader (rpmgi.c:126)
==11445==    by 0x4E6EB81: rpmgiNext (rpmgi.c:216)
==11445==    by 0x4E671D8: rpmgiShowMatches (query.c:274)
==11445==    by 0x4E671D8: rpmcliArgIter (query.c:518)
==11445==    by 0x4E672A6: rpmcliQuery (query.c:568)
==11445==    by 0x401918: main (rpmqv.c:304)

Expected results:
An error message about invalid header followed by graceful exit.

Additional info:
See https://bugzilla.redhat.com/show_bug.cgi?id=1371487

Comment 5 errata-xmlrpc 2017-08-01 19:33:33 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.


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