
بحث أمني حول استغلال CVE-2026-43499 على Amazon Fire TV Stick 3rd Gen (sheldonp)، من الصلاحيات الجذرية المؤقتة إلى فتح الـ bootloader.
sheldonp)تسلسل تصعيد صلاحيات في نواة Linux إلى تخفيض إصدار الـ preloader وفتح الـ bootloader.
يوثّق هذا المستودع إعادة إنتاجي المصرّح بها لسلسلة استغلال CVE-2026-43499 على Amazon Fire TV Stick الجيل الثالث (sheldonp). استخدمت السلسلة صلاحيات جذر مؤقتة في النواة لتشغيل تخفيض إصدار الـ preloader بشكل مضبوط، ثم استخدمت سير عمل Kamakiri BootROM الموجود للوصول إلى fastboot مفتوح وإكمال فتح الـ bootloader.
هذا إعادة إنتاج ودراسة حالة خاصة بالجهاز. لم أكتشف CVE-2026-43499، ولم أنشئ استغلال IonStack/GhostLock الأصلي، ولم أطوّر Kamakiri. الباحثون والمطوّرون الأصليون مذكورون أدناه.
[!IMPORTANT] هذا التقرير سجل تقني، وليس دليلاً شاملاً لعمل root. توافق الإصدار مهم، والجذر المؤقت ليس جذراً دائماً، والأخطاء المتعلقة بـ Preloader أو LK أو TEE أو الأقسام المحمية بـ dm-verity قد تؤدي إلى تعطيل الجهاز بشكل دائم.
اكتملت السلسلة من البداية إلى النهاية في 12 سبتمبر 2026. يسجّل هذا المستودع الجهاز وإصدارات البرمجيات المُختبرة، والأرشيفات المستخدمة بالضبط، وقيم SHA-256 الخاصة بها، والأدلة الأصلية التي جُمعت أثناء العملية.
خارج النطاق: اكتشاف الثغرات، تطبيق استغلال جديد، الاستغلال عن بُعد، الجذر الدائم، أو دعم أجهزة غير وحدة sheldonp المُختبرة. لم يُثبَّت أي ROM مخصص أثناء إعادة الإنتاج هذه.
فيما يلي أرشيفات ZIP المستخدمة بالضبط أثناء إعادة الإنتاج هذه. لا يُعاد توزيع الأرشيفات في هذا المستودع؛ تُسجَّل قيم SHA-256 الخاصة بها حتى يمكن مقارنة النسخ التي تُحصل عليها بشكل مستقل بالملفات المستخدمة في دراسة الحالة هذه.
تحدّد هذه القيم النسخ المستخدمة في دراسة الحالة هذه؛ ومع ذلك، يجب على القرّاء مقارنة تنزيلاتهم بالمصادر الأصلية ومراجعة التراخيص الخارجية المعمول بها.
CVE-2026-43499، المعروفة أيضاً باسم GhostLock، هي ثغرة use-after-free في مسار futex/rtmutex الخاص بوراثة الأولوية في نواة Linux. أثناء التراجع عن proxy-lock، عملت remove_waiter() على current بدلاً من المهمة المخزّنة في waiter->task. ونتيجة لذلك، قد يعود المنتظر الفعلي إلى مساحة المستخدم بينما لا يزال pi_blocked_on يشير إلى rt_mutex_waiter في إطار مكدّس نواة محرَّر.
يحوّل بحث IonStack الأصلي هذا المرجع المكدّسي المعلّق إلى بدائية تصعيد صلاحيات محلية. كيّف R0rt1z2 هذه التقنية مع Fire TV Stick الجيل الثالث وFire TV Stick Lite (sheldonp/sheldon) التي تعمل بـ Fire OS 7 على نواة 4.4.
الفرق الجوهري في دراسة الحالة هذه هو أن CVE-2026-43499 لا تفتح الـ bootloader مباشرة. إنها توفّر وصولاً مؤقتاً على مستوى النواة. هذا الوصول قصير الأمد يجعل من الممكن تنفيذ تخفيض إصدار الـ preloader المضبوط المطلوب قبل أن تعمل سلسلة Kamakiri BootROM الأقدم.
flowchart LR
A[Fire OS 7 on sheldonp] --> B[CVE-2026-43499 / GhostLock]
B --> C[Temporary root shell]
C --> D[Controlled preloader downgrade]
D --> E[Expected non-booting transition state]
E --> F[Kamakiri BootROM stage]
F --> G[Unlocked fastboot]
G --> H[Bootloader unlocked]تعبر السلسلة حدودين أمنيين منفصلين:
قبل تغيير الجهاز، حدّدت الاسم الرمزي للعتاد وسجّلت إصدارات Fire OS والـ build والـ bootloader والنواة عبر ADB.
adb devices -l
adb shell getprop ro.product.device
adb shell getprop ro.product.model
adb shell getprop ro.build.version.release
adb shell getprop ro.build.version.incremental
adb shell getprop ro.build.fingerprint
adb shell getprop ro.bootloader
adb shell uname -a
adb shell id
كان خط الأساس الناتج sheldonp / AFTSSS، وFire OS PS7716.5666N، والإصدار التراكمي 0036005356164، وAndroid 9، والنواة 4.4.162+. الرقم التسلسلي محذوف عمداً.

وصلت Fire TV عبر USB مع تمكين تصحيح ADB واستخدمت GhostLock 1.1.0، حزمة sheldon/sheldonp المنشورة مع دليل R0rt1z2 على XDA. يقوم المشغّل الخاص بالجهاز بإعادة تشغيل Fire TV للبدء من حالة نظيفة، ونشر الاستغلال، وإعادة المحاولة عند الحاجة.
يُنشئ الاستغلال الناجح بيئة جذر مؤقتة. تحققت من سياق الأمان من ADB shell بدلاً من اعتبار اكتمال السكربت وحده دليلاً:
adb shell
su
id
سياق الجذر عابر ويُفقد عند إعادة التشغيل. هذا السلوك مهم: هذه المرحلة بدائية تمكينية لتخفيض الإصدار، وليست آلية الاستمرارية النهائية ولا فتح الـ bootloader نفسه.
أظهر التشغيل الناجح uid=0، وغيّر SELinux إلى permissive للبيئة المؤقتة، وثبّت su المؤقت، وعطّل حزم OTA الخاصة بـ Fire OS التي تتعامل معها الأداة.

يُحتفظ بـ تتبّع استغلال GhostLock الكامل كدليل داعم.
مع توفّر الجذر المؤقت، استخدمت سير عمل تخفيض الإصدار المخصص للحزمة بدلاً من كتابة أقسام البرنامج الثابت يدوياً. استعاد هذا preloader متوافقاً مع مسار Kamakiri الموجود.
بعد تخفيض الإصدار، توقف Fire TV عمداً عن الإقلاع إلى Fire OS. في سير العمل المحدد هذا، تُعدّ حالة عدم الإقلاع هذه التسليم المتوقع بين مرحلة النواة الحية ومرحلة USB BootROM. ويجب عدم الخلط بينها وبين دليل على أن أي عملية فلاش فاشلة عشوائية قابلة للاسترداد.
[!CAUTION] لا تمحُ Preloader أبداً. لا ترتجل عمليات كتابة إلى LK أو TEE أو Preloader أو boot أو recovery أو system أو vendor أو الأقسام المحمية الأخرى. تحذّر الأدلة الأصلية من أن تلف البرنامج الثابت الحرج قد يسبب تعطيلاً دائماً لأنه قد لا يبقى مسار استرداد فعّال متاح.

كان سير عمل Kamakiri المستخدم لهذا الجهاز مدعوماً وموثّقاً لـ Linux. لذلك أقلعت جلسة Ubuntu Live ونفّذت سير عمل الفتح الكامل هناك، بما في ذلك مرحلة USB BootROM منخفضة المستوى، دون تثبيت Ubuntu على المضيف. لم أختبر هذه المرحلة على Windows أو macOS.
باستخدام حزمة Kamakiri الخاصة بـ sheldon/sheldonp المشار إليها في دليل الفتح، كانت العملية:
bootrom-step.sh وتوصيل Fire TV المُطفأ عبر USB.fastboot-step.sh لإكمال سير عمل الفتح.اكتشف Kamakiri الوحدة كـ sheldonp، وأكمل تخفيض إصدار RPMB، وفلش مكوّنات TZ/LK المطلوبة للسلسلة، وحقن microloader، وأجبر الجهاز على الدخول إلى وضع fastboot المخترق.

قيم تجزئة الأرشيف وإصدار Ubuntu مسجّلة أعلاه. يجب على القرّاء استخدام الأدلة الأصلية المرتبطة للحصول على تعليمات خاصة بالإصدار بدلاً من افتراض أن هذه الخطوات عالية المستوى تنطبق على build آخر.
تعاملت مع ما يلي كمعالم منفصلة والتقطت دليلاً لكل منها:


كان هدفي الاحتفاظ بـ Fire OS الأصلي بدلاً من تثبيت ROM مخصص فوراً. في TWRP تجنّبت محو البيانات أو استبدال نظام التشغيل، ثم أعدت التشغيل إلى تثبيت Fire OS الموجود. بقي TWRP ومسار الإقلاع المفتوح متاحين بينما حُفظت بيئة المستخدم الأصلية.
بعد العودة إلى Fire OS، أبقيت تحديثات OTA معطّلة حتى لا تتمكن Amazon من نقل الجهاز بصمت إلى build يغيّر الاستغلال أو يعدّل سلسلة الإقلاع المستعادة. كما عطّلت مكوّن حماية تطبيقات نظام Amazon الذي يُشار إليه عادةً في أدوات مجتمع Fire TV باسم ARCUS. يغيّر هذا سلوك حجب التطبيقات على مستوى نظام Amazon؛ ولا يتجاوز Widevine أو فحوصات الاشتراك أو فرض الترخيص المطبّق داخل التطبيقات الفردية.

كما أن bootloader مفتوح وTWRP يجعلان من الممكن تثبيت برمجيات مخصصة متوافقة. أحد خيارات المجتمع لعائلة الأجهزة هذه هو LineageOS 20 المبني على Android 13. قد تكون ROMs متوافقة أخرى أو سير عمل استرداد أو إعدادات جذر دائم ممكنة أيضاً.
لم تكن هذه البدائل جزءاً من إعادة الإنتاج هذه. يجب التعامل معها كإجراءات منفصلة لها اعتباراتها الخاصة بالبرنامج الثابت وTZ ومحو البيانات وDRM والذاكرة والاسترداد.
على build من Fire OS قابل للاستغلال ومدعوم، يمكن للكود الذي يعمل محلياً على الجهاز بالفعل استغلال خلل النواة للحصول على سياق جذر مؤقت. في هذا المختبر، وسّع هذا الوصول سطح الهجوم إلى ما هو أبعد من نظام التشغيل قيد التشغيل: فقد مكّن من تخفيض إصدار البرنامج الثابت الذي أعاد إدخال حالة سلسلة إقلاع قابلة للاستخدام من قبل استغلال BootROM أقدم.
توضّح هذه السلسلة لماذا يعتمد أمن الجهاز على أكثر من ترقيع طبقة واحدة. يمكن أن يصبح تصعيد صلاحيات النواة جسراً إلى استمرارية منخفضة المستوى أو اختراق سلسلة الإقلاع عندما تستطيع البرمجيات المميّزة تعديل حالة البرنامج الثابت الحساسة أمنياً.
.
├── README.md # Case study and methodology
├── LICENSE # CC BY 4.0 for original documentation and media
├── images/
│ ├── README.md # Evidence index and redaction guidance
│ └── evidence/ # Sanitized screenshots and photographs
└── references/
└── README.md # Source ledger and artifact guidance
لا يعيد هذا المستودع توزيع أرشيفات ZIP الخارجية. احصل عليها من أدلة XDA الأصلية، وراجع شروطها المعمول بها، وقارن قيم تجزئتها بالقيم المسجّلة أعلاه.
CVE-2026-43499.4.4، ودليل الجذر المؤقت وتخفيض الإصدار لـ sheldon/sheldonp.مساهمتي هي إعادة الإنتاج المستقلة، وسجل التنفيذ الخاص بالجهاز، وتحليل كيفية ترابط المراحل، والأدلة الأصلية المنشورة في هذا المستودع.
سجل المصادر المُحدَّث موجود في references/README.md. تشمل المصادر الأساسية:
4.4sheldon/sheldonpsheldon/sheldonpremove_waiter()تُقدَّم هذه المواد للاستخدام التعليمي والبحث الأمني المصرّح به على أجهزة تملكها أو يُسمح لك صراحةً باختبارها. تأتي دون أي ضمان. أنت مسؤول عن الامتثال القانوني وفقدان البيانات وتعطيل الخدمة وتلف العتاد الناتج عن أفعالك.
النص والصور الأصلية المؤلفة لهذا المستودع مرخّصة بموجب رخصة Creative Commons Attribution 4.0 International.
تظل الأدوات الخارجية وكود الاستغلال والبرنامج الثابت والاقتباسات ولقطات الشاشة والعلامات التجارية والمواد المشار إليها خاضعة لمؤلفيها وتراخيصها الخاصة. لا يُعيد تضمين رابط أو إشارة ترخيص تلك المواد بموجب CC BY 4.0.
| الحقل | هدف إعادة الإنتاج |
|---|
| الجهاز | Amazon Fire TV Stick الجيل الثالث |
| الطراز | AFTSSS |
| الاسم الرمزي | sheldonp |
| نظام التشغيل | Fire OS 7.7.1.6 / build PS7716.5666N |
| الإصدار التراكمي | 0036005356164 |
| أساس Android | Android 9 |
| النواة | 4.4.162+ |
| المضيف المستخدم لمرحلة BootROM | Ubuntu 26.04.1 LTS، تم الإقلاع منه كجلسة USB حية |
| أدوات منصة Android | 37.0.1 |
| تطبيق الجذر المؤقت | R0rt1z2/GhostLock 1.1.0، فرع 4.4 |
| تطبيق BootROM | kamakiri-sheldon-1.0 |
| النتيجة | جذر مؤقت، تخفيض إصدار الـ preloader، bootloader مفتوح، TWRP، وFire OS محفوظ |
| الأرشيف | المصدر | الإصدار | SHA-256 |
|---|
ghostlock-sheldon-v1.1.0.zip | دليل الجذر المؤقت وتخفيض الإصدار على XDA | GhostLock 1.1.0 | 8D541F7DF58487AF6D6D45D778482D3455A71F62E32651751CFE0B2DDFC6554F |
kamakiri-sheldon-1.0.zip | دليل فتح الـ bootloader على XDA | Kamakiri Sheldon 1.0 | 1B07161D9F894935E5918A9B8F9A230F67B9487E9863C242E758338E8C6C5784 |
| المعلم | إشارة التحقق | الدليل |
|---|
| خط الأساس | ADB shell قبل الاستغلال | 01-adb-shell-baseline.png |
| استغلال النواة | Root shell وuid=0 | 02-ghostlock-root-and-ota.png |
| تتبّع الاستغلال | بدائية GhostLock وسجل ترقيع بيانات الاعتماد | 03-ghostlock-exploit-trace.png |
| تخفيض الإصدار | كتابة preloader القابل للاستغلال بنجاح | 04-preloader-downgrade.png |
| BootROM | أكمل Kamakiri مرحلته الأولى | 05-kamakiri-bootrom.png |
| الفتح | عرض fastboot المخترق على الشاشة المتصلة | 06-hacked-fastboot.png |
| الاسترداد | إقلاع TWRP بنجاح | 07-twrp-first-boot.jpg |
| الاحتفاظ بنظام التشغيل الأصلي | إقلاع Fire OS مع توفّر خيارات المطوّر | 08-fireos-developer-options.jpg |