← Advisories

Apple iTunes 10.6.1.7 M3U Playlist File Walking Heap Buffer Overflow

High
Advisory ID
ZSL-2012-5093
Release Date
12 June 2012
Vendor
Affected Version
10.6.1.7 and 10.6.0.40
Tested On
Microsoft Windows XP Professional SP3 EN (32bit), Microsoft Windows 7 Ultimate SP1 EN (64bit)
Summary

iTunes is a free application for your Mac or PC. It lets you organize and play digital music and video on your computer. It can automatically download new music, app, and book purchases across all your devices and computers. And it’s a store that has everything you need to be entertained. Anywhere. Anytime.

Description

The vulnerability is caused due to a boundary error in the processing of a playlist file, which can be exploited to cause a heap based buffer overflow when a user opens e.g. a specially crafted .M3U file. Successful exploitation could allow execution of arbitrary code on the affected node.

(940.fc0): Access violation - code c0000005 (!!! second chance !!!) eax=41414141 ebx=08508cd8 ecx=41414141 edx=052a6528 esi=052a64b0 edi=0559ef20 eip=41414141 esp=0012d8e8 ebp=7c90ff2d iopl=0 nv up ei pl nz na pe nc cs=001b ss=0023 ds=0023 es=0023 fs=003b gs=0000 efl=00000206 +0x41414130: 41414141 ?? ??? ~~~ (6b0.a04): Access violation - code c0000005 (!!! second chance !!!) eax=41414141 ebx=00000000 ecx=00000014 edx=41414141 esi=41414141 edi=0187e10d eip=0187deec esp=0b0cfcd0 ebp=0b0cfcf0 iopl=0 nv up ei pl nz na pe nc cs=001b ss=0023 ds=0023 es=0023 fs=003b gs=0000 efl=00000206 Defaulted to export symbols for C:\Program Files\Common Files\Apple\Apple Application Support\CoreFoundation.dll - CoreFoundation!CFWriteStreamCreateWithAllocatedBuffers+0x40: 0187deec 8b00 mov eax,dword ptr [eax] ds:0023:41414141=????????
Proof of Concept
Disclosure Timeline
13.03.2012Vulnerability discovered in version 10.6.0.40.
29.03.2012Vulnerability present in version 10.6.1.7.
11.05.2012Vendor contacted.
11.05.2012Vendor responds asking more details.
11.05.2012Sent detailed information and PoC code to the vendor.
12.05.2012Vendor begins investigation.
14.05.2012Asked vendor for confirmation.
17.05.2012Vendor confirms the vulnerability, developing patch.
17.05.2012Requested a scheduled patch release date from vendor.
18.05.2012Vendor replies.
06.06.2012Asked vendor for status update.
08.06.2012Vendor shares information about security update.
11.06.2012Vendor releases version 10.6.3 to address this issue.
12.06.2012Coordinated public security advisory released.
Credits
Vulnerability discovered by Gjoko Krstic
References
Changelog
12.06.2012Initial release
13.06.2012Added reference [7], [8], [9], [10], [11], [12] and [13]
17.06.2012Added reference [14], [15], [16], [17], [18], [19], [20], [21], [22], [23], [24], [25], [26] and [27]
20.06.2012Added reference [28], [29], [30] and [31]
21.06.2012Added reference [32]
24.06.2012Added reference [33] and [34]
01.06.2015Added reference [35]