Bug 978812 (CVE-2016-2226) - VUL-1: CVE-2016-2226: gcc: Exploitable buffer overflow
Summary: VUL-1: CVE-2016-2226: gcc: Exploitable buffer overflow
Status: RESOLVED FIXED
Alias: CVE-2016-2226
Product: SUSE Security Incidents
Classification: Novell Products
Component: Incidents (show other bugs)
Version: unspecified
Hardware: Other Other
: P3 - Medium : Normal
Target Milestone: ---
Assignee: Michael Matz
QA Contact: Security Team bot
URL: https://smash.suse.de/issue/168627/
Whiteboard: CVSSv2:SUSE:CVE-2016-2226:6.8:(AV:N/...
Keywords:
Depends on:
Blocks:
 
Reported: 2016-05-06 10:14 UTC by Alexander Bergmann
Modified: 2023-02-08 16:51 UTC (History)
3 users (show)

See Also:
Found By: Security Response Team
Services Priority:
Business Priority:
Blocker: ---
Marketing QA Status: ---
IT Deployment: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Alexander Bergmann 2016-05-06 10:14:26 UTC
rh#1333322 / CVE-2016-2226

A vulnerability was found in gcc. Specifically, it revolves around demangling while analysing the untrusted binaries. A particularly malicious attacker could craft an executable that executes when *analysed* by objdump, nm or gdb, or any other libbfd / libiberty - based forensics tool (if the demangling option is switched on).

External references:

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69687

References:

http://seclists.org/oss-sec/2016/q2/238

Upstream fix:

https://gcc.gnu.org/viewcvs/gcc?view=revision&revision=234829

References:
https://bugzilla.redhat.com/show_bug.cgi?id=1333322
http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2016-2226
http://seclists.org/oss-sec/2016/q2/240
Comment 1 Alexander Bergmann 2016-05-06 13:17:48 UTC
POC for PR69687
========================

** GDB and BINUTILS
$ cat comileme.c
#include <stdio.h>
const char *__020A___________________X00020A___R0020A__U000R03000N99999999_020A__K000="Hello World";
int main() {
  printf("%s\n",__020A___________________X00020A___R0020A__U000R03000N99999999_020A__K000);
}
$ g++ compileme.c -o compileme
$ ./compileme
Hello World!
$ gdb ./compileme
..
$ objdump -x -C ./compileme
..
$ nm -C ./compileme
..
Comment 2 Swamp Workflow Management 2016-05-06 22:00:18 UTC
bugbot adjusting priority
Comment 3 Sebastian Krahmer 2016-05-09 12:17:30 UTC
Bug in name demangling -> VUL-1
Comment 4 Michael Matz 2023-02-08 16:51:19 UTC
Fixed since a long time.  (when libiberty, and hence binutils was affected: by version updates to binutils for sle-12 and sle-15 and sle-11 wontfix)