The move_uploaded_file implementation in ext/standard/basic_functions.c in PHP before 5.4.39, 5.5.x before 5.5.23, and 5.6.x before 5.6.7 truncates a pathname upon encountering a \x00 character, which allows remote attackers to bypass intended extension restrictions and create files with unexpected names via a crafted second argument. NOTE: this vulnerability exists because of an incomplete fix for CVE-2006-7243.
https://support.apple.com/HT205267
https://security.gentoo.org/glsa/201606-10
http://www.ubuntu.com/usn/USN-2572-1
http://www.securitytracker.com/id/1032484
http://www.securityfocus.com/bid/73434
http://www.oracle.com/technetwork/topics/security/linuxbulletinjan2016-2867209.html
http://www.oracle.com/technetwork/topics/security/bulletinjul2015-2511963.html
http://rhn.redhat.com/errata/RHSA-2015-1135.html
http://rhn.redhat.com/errata/RHSA-2015-1066.html
http://rhn.redhat.com/errata/RHSA-2015-1053.html
http://php.net/ChangeLog-5.php
http://marc.info/?l=bugtraq&m=144050155601375&w=2
http://marc.info/?l=bugtraq&m=143748090628601&w=2
http://lists.opensuse.org/opensuse-updates/2015-04/msg00015.html
http://lists.opensuse.org/opensuse-security-announce/2015-05/msg00005.html
http://lists.apple.com/archives/security-announce/2015/Sep/msg00008.html
http://git.php.net/?p=php-src.git%3Ba=commit%3Bh=1291d6bbee93b6109eb07e8f7916ff1b7fcc13e1