Fix fscanf format string security bug in layout.c
authorhailfinger <hailfinger@2b7e53f0-3cfb-0310-b3e9-8179ed1497e1>
Sun, 13 Mar 2016 17:36:49 +0000 (17:36 +0000)
committerhailfinger <hailfinger@2b7e53f0-3cfb-0310-b3e9-8179ed1497e1>
Sun, 13 Mar 2016 17:36:49 +0000 (17:36 +0000)
commit93676979fdc5ee27541ec21b971b5c7d8b7c2af6
tree256397cb2fdd75f385eae063502253f1985956ae
parent3ae1bcbf3d1bdd78043cac5bc24f41b0b5bed086
Fix fscanf format string security bug in layout.c

An internal security audit of the flashrom project by
Carl-Daniel Hailfinger found a buffer overflow bug present in all
flashrom versions since the year 2005.
This bug was independently found and reported to flashrom.org by
Cosmin Gorgovan a few days ago.

A buffer on the stack and a buffer on the heap are affected by the
overflow caused by an incorrect fscanf format string.
The buffer overflow can only be triggered if the optional layout feature
is used and if the user manually specifies a specially crafted layout
file on the command line. Command line parsing and flash image handling
do not trigger the buggy code path.
Most usage of flashrom does not involve layout files.

The fix in this commit (changed fscanf format string) can be applied to
layout.c of all past flashrom versions.

Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Acked-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
git-svn-id: svn://flashrom.org/flashrom/trunk@1953 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
layout.c