DescriptionThe BEGIN regular expression in the awk script detector in magic/Magdir/commands in file before 5.15 uses multiple wildcards with unlimited repetitions, which allows context-dependent attackers to cause a denial of service (CPU consumption) via a crafted ASCII file that triggers a large amount of backtracking, as demonstrated via a file with many newline characters.
SourceCVE (at NVD; CERT, LWN, oss-sec, fulldisc, bugtraq, EDB, Metasploit, Red Hat, Ubuntu, Gentoo, SuSE, Mageia, GitHub code/issues, web search, more)
ReferencesDSA-2873-1, DSA-3064-1
NVD severitymedium (attack range: remote)
Debian Bugs703993

Vulnerable and fixed packages

The table below lists information on source packages.

Source PackageReleaseVersionStatus
file (PTS)wheezy5.11-2+deb7u8fixed
wheezy (security)5.11-2+deb7u9fixed
buster, sid, stretch1:5.30-1fixed
php5 (PTS)wheezy5.4.45-0+deb7u2fixed
wheezy (security)5.4.45-0+deb7u8fixed
jessie (security), jessie5.6.30+dfsg-0+deb8u1fixed

The information below is based on the following data on fixed versions.

PackageTypeReleaseFixed VersionUrgencyOriginDebian Bugs
php5sourcesqueeze(not affected)

fixed in commit ef2329cf71acb59204dd981e2c6cce6c81fe467c
[squeeze] - php5 <not-affected> (Vulnerable code not present)
Wheezy's php5 is vulnerable in 5.4.4-14+deb7u14. Verified by rebuilding
magic.mgc out of ext/fileinfo/data_info.c and "strings magic.mgc |grep BEGIN"
returns "^\s*BEGIN\s*[{]". Same test in squeeze does not
report the problematic string.
Good fix is to regenerate the file with "php5
create_data_file.php /usr/share/file/magic.mgc > data_info.c" once
you have a fixed libmagic1 installed.
fixed by php5 5.4.27 so DSA 3064-1 also fixed it in Wheezy

Search for package or bug name: Reporting problems