
CVE-2025-54957 के लिए प्रूफ-ऑफ-कॉन्सेप्ट एक्सप्लॉइट, जो Dolby के DDPlus यूनिफाइड डिकोडर में आउट-ऑफ-बाउंड राइट है, जो RCS ऑडियो संदेशों के माध्यम से Android पर 0-क्लिक क्रैश प्रदर्शित करता है।
जब किसी फ़ाइल को Dolby के DDPlus Unified Decoder द्वारा प्रोसेस किया जाता है, तो evolution डेटा प्रोसेस होने पर out of bounds write संभव होता है। डिकोडर evolution जानकारी को एक बड़े, heap-जैसे सन्निहित बफ़र में लिखता है जो एक बड़े struct में समाहित होता है, और एक write के लिए लंबाई की गणना integer wrap के कारण overflow हो सकती है। इससे 'allocated' बफ़र बहुत छोटा हो जाता है, और बाद के write का out-of-bounds चेक अप्रभावी हो जाता है। यह struct के बाद के सदस्यों को overwrite करने की अनुमति दे सकता है, जिसमें एक पॉइंटर भी शामिल है जो अगले syncframe के प्रोसेस होने पर लिखा जाता है।
Android पर, यह एक 0-click भेद्यता है, क्योंकि Android स्थानीय रूप से सभी आने वाले ऑडियो संदेशों और ऑडियो अटैचमेंट्स को ट्रांसक्रिप्शन के लिए डिकोड करता है, इस डिकोडर का उपयोग करके, बिना उपयोगकर्ता के डिवाइस के साथ इंटरैक्ट किए।
यह कोड MacOS पर मौजूद है, लेकिन यह स्पष्ट नहीं है कि pre-processing जांचों के कारण यह बग पहुंच योग्य है या नहीं।
हम इस बग को अपडेट करेंगे जैसे ही हम इस भेद्यता से प्रभावित डिवाइसों की आगे जांच करेंगे।
dolby_android_crash.mp4 -- एक containerized फ़ाइल जो सीधे Android में क्रैश का कारण बनती है dolby_android_crash.ec3 -- वह bitstream जो Android क्रैश का कारण बनता है dolby_evo_crash32.ec3 -- एक bitstream जो 32-bit लक्ष्यों पर क्रैश का कारण बनता है (उपरोक्त bitstream केवल 64-bit लक्ष्यों को क्रैश करता है)
इस समस्या को पुन: उत्पन्न करने का सबसे आसान तरीका है कि Android डिवाइस पर dolby_android_crash.mp4 चलाएं।
समस्या को 0-click के रूप में पुन: उत्पन्न करने के लिए:
एक परीक्षण Android डिवाइस सेट करें ताकि लक्ष्य Android डिवाइस को RCS संदेश भेज सके
परीक्षण डिवाइस पर RCS खोलें और वॉइस मैसेज आइकन को दबाकर रखकर एक वॉइस संदेश बनाएं, लेकिन भेजें नहीं
चलाएं:
adb -s TEST_DEVICE shell ls -l /data/user/0/com.google.android.apps.messaging/cache/mediascratchspace/
और सबसे हाल ही में लिखी गई फ़ाइल का नाम नोट करें (कुछ फ़ाइलों में *.m4a एक्सटेंशन होगा, यह फ़ाइल वह है जिसमें एक्सटेंशन नहीं है)
adb -s TEST_DEVICE push dolby_android_crash.mp4 /data/user/0/com.google.android.apps.messaging/cache/mediascratchspace/FILENAME
ऑडियो संदेश भेजें
लक्ष्य डिवाइस की C2 प्रक्रिया क्रैश हो जानी चाहिए।
इस बग को दर्ज करने के बाद से, हमने जांच की है कि कौन से डिवाइस Dolby Unified Decoder को एकीकृत करते हैं। हमने निम्नलिखित डिवाइसों पर उपरोक्त फ़ाइलों का उपयोग करके एक क्रैश पुन: उत्पन्न किया:
Microsoft ने इस मुद्दे पर एक सलाह प्रकाशित की है: https://msrc.microsoft.com/update-guide/vulnerability/CVE-2025-54957 ChromeOS ने भी निम्नलिखित रिलीज़ के लिए बाइनरीज़ में इस समस्या को ठीक किया है, हालांकि बग का उल्लेख सलाह में नहीं किया गया है: https://chromereleases.googleblog.com/2025/09/stable-channel-update-for-chromeos_18.html