Package: gifsicle
Version: 1.90-1
Severity: normal

Dear Maintainer,

Running 'gifdiff' with the attached file raises a NULL pointer
dereference, which may allow a denial-of-service attack of a malicious
attacker.

I expected the program to terminate without segfault, but the program
crashes as follow.

----------------------------
(gdb) r poc poc
Starting program: /usr/bin/gifdiff poc poc
[Thread debugging using libthread_db enabled]
Using host libthread_db library
"/lib/x86_64-linux-gnu/libthread_db.so.1".
gifdiff: While reading ‘poc’ frame #0:
gifdiff:   error: unknown block type 0 at file offset 13
gifdiff: While reading ‘poc’ frame #0:
gifdiff:   error: unknown block type 0 at file offset 13

Program received signal SIGSEGV, Segmentation fault.
0x000055555555ce38 in ?? ()
(gdb) x/i $rip
=> 0x55555555ce38:  mov    (%rdx,%rax,8),%rbx
(gdb) i r rdx
rdx            0x0  0
(gdb) i r rax
rax            0x0  0
-----------------------------

The bug was found with a fuzzer developed by 'SoftSec' group at KAIST.

-- System Information:
Debian Release: 9.2
  APT prefers stable-updates
  APT policy: (500, 'stable-updates'), (500, 'testing'), (500, 'stable')
Architecture: amd64 (x86_64)

Kernel: Linux 4.9.0-3-amd64 (SMP w/1 CPU core)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), 
LANGUAGE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)

Versions of packages gifsicle depends on:
ii  libc6     2.24-11+deb9u1
ii  libx11-6  2:1.6.4-3

gifsicle recommends no packages.

gifsicle suggests no packages.

-- no debconf information
GIF

Reply via email to