
Apple ImageIO WebP पार्सिंग में पूर्णांक अतिप्रवाह (macOS/iOS)
Apple के ImageIO फ्रेमवर्क में WebP इमेज को पार्स करते समय एक पूर्णांक अतिप्रवाह भेद्यता, जो सीमा से बाहर मेमोरी एक्सेस की ओर ले जाती है।
पूर्ण राइटअप - डिसअसेंबली वॉकथ्रू के साथ विस्तृत रूट कॉज़ विश्लेषण।
दूषित WebP इमेज को प्रोसेस करते समय पंक्ति बाइट्स की गणना के दौरान एक पूर्णांक अतिप्रवाह होता है। इस अतिप्रवाह के परिणामस्वरूप आवश्यकता से छोटे आकार का बफर आवंटित होता है, जिसे बाद में इमेज डिकोडिंग के दौरान अधिलेखित कर दिया जाता है।
दुर्भावनापूर्ण रूप से तैयार की गई WebP इमेज को प्रोसेस करने से ImageIO का उपयोग करने वाले किसी भी एप्लिकेशन (Safari, Preview, Mail, Messages, Quick Look आदि) के संदर्भ में मनमाना कोड निष्पादन हो सकता है।
| प्रभावित | सुधारित | |
|---|---|---|
| macOS | Monterey < 12.4 | 12.4 (मई 2022) |
| iOS / iPadOS | < 15.5 | 15.5 |
| tvOS | < 15.5 | 15.5 |
| watchOS | < 8.6 | 8.6 |
macOS Monterey 12.0.1 और iOS 15.1 पर परीक्षण किया गया
हार्नेस बनाएँ और चलाएँ:
./build_harness_standalone.sh
./harness_standalone intoverflow.webp
या ब्राउज़र के माध्यम से trigger.html को सर्व करके ट्रिगर करें, या फ़ाइल को सीधे खोलें:
open intoverflow.webp
Process: harness_standalone [12345]
Exception Type: EXC_BAD_ACCESS (SIGSEGV)
Exception Codes: KERN_INVALID_ADDRESS at 0x...
Thread 0 Crashed:
0 libsystem_platform.dylib _platform_memset_pattern16 + ...
1 CoreGraphics CGSColorDataMakeCompositor + ...
2 CoreGraphics ripc_RenderImage + ...
3 CoreGraphics ripc_DrawImage + ...
4 ImageIO ...