Skip to content
KitploitKITPLOIT
أدواتالمدونة
إرسال
أدواتالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

··الخلاصات·اتصال·الخصوصية·© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2026-4692-trust-me-im-in-rdm — إثبات مفهوم لاستغلال تجاوز تفويض BrowsingContext في فايرفوكس (CVE-2026-4692)، يوضح رسائل IPC مزورة لتعيين InRDMPane وتمكين حقن أحداث اللمس في واجهة المستخدم المميزة. | Kitploit
أدوات/GitHubGitHub/sneakynachos/cve-2026-4692-trust-me-im-in-rdm
تصعيد الامتيازاتأطر الاستغلالتحليل الثغرات الأمنيةالاستغلالاستغلال تطبيقات الويبالفريق الأحمرتطوير الحمولات
GitHubsneakynachos/cve-2026-4692-trust-me-im-in-rdm

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة

CVE-2026-4692-trust-me-im-in-rdm

إثبات مفهوم لاستغلال تجاوز تفويض BrowsingContext في فايرفوكس (CVE-2026-4692)، يوضح رسائل IPC مزورة لتعيين InRDMPane وتمكين حقن أحداث اللمس في واجهة المستخدم المميزة.

عرض المستودع
1منذ يوم واحدلم تتم المراجعة بعد

CVE-2026-4692 — يمكن لعمليات المحتوى أن تعلن نفسها في RDM

إثبات مفهوم لغياب فحص التفويض على مزامنة حقول BrowsingContext: عملية محتوى مخترقة تزوّر رسالة PContent::CommitBrowsingContextTransaction وتضبط InRDMPane = true على BrowsingContext الخاص بها على المستوى الأعلى، والعملية الأم تطبّقها.

الهدف: Firefox 149.0a1 nightly @ 2fbc0748c4 (قابل للاستغلال، قبل الإصلاح)، macOS arm64. تم الإصلاح في Firefox 149 — الخطأ 2017643، الالتزام a9279ce332ed ("منع تبديل علامة RDM BrowsingContext من عمليات المحتوى")، والذي يضيف:

root@kitploit:~
bool BrowsingContext::CanSet(FieldIndex<IDX_InRDMPane>, const bool&,
                             ContentParent* aSource) {
  return XRE_IsParentProcess() && IsTop() && !aSource;   // رفض إذا كان من المحتوى
}

لماذا يهم هذا الأمر

InRDMPane يخبر العملية الأم بأن التبويب هو لوحة Responsive Design Mode. تثق العملية الأم بهذا عند اختبار الاصطدام لأحداث اللمس المُصنّعة (BrowserParent::RecvDispatchTouchEvent): الأحداث التي تستهدف اسميًا لوحة RDM يُسمح لها بالوصول إلى واجهة المستخدم المميزة (chrome UI). يمكن لعملية محتوى مخترقة تضبط العلامة أن ترسل أحداث لمس بإحداثيات سالبة/خارج المحتوى وتنقر على واجهة المستخدم المميزة دون تفاعل المستخدم (انظر repro.patch الخاص بالمُبلّغ على الخطأ 2017643، والذي يوضح ذلك تمامًا مع بناء مُرقّع). يوضح هذا المستودع انتهاك الحدود التمكيني نفسه، مع تزوير رسالة حقيقي — دون أي تصحيحات لمصدر المتصفح.

الرسالة (تنسيق الأسلاك، مستخرج من كود IPC المُولّد للبناء)

PContent::CommitBrowsingContextTransaction — نوع الرسالة 0x3a0137 (PContentMsgStart=58 << 16 | ordinal 311)، التوجيه MSG_ROUTING_CONTROL (INT64_MAX)، العلامات NOT_NESTED (0x001):

root@kitploit:~
u64  bcid                sentinel 235406151 ('aContext')
u64  0x0000000000800000  modified bitset word0 (bit 23 = InRDMPane)
u64  0                   bitset word1   (BitSet<84> words are size_t = u64!)
u32  1                   WriteBool(true)
u32  523371752           sentinel 'aTransaction'
u64  epoch               (epoch check is MOZ_ASSERT-only; compiled out here)
u32  132121169           sentinel 'aEpoch'

يعيد التسليم استخدام مسار الإرسال CVE-2026-74939: operator new → IPC::Message::Message(routing, type, capacity, flags) → Pickle::WriteBytes → MessageChannel::Send على قناة PContent، مدفوعًا من JS عبر بدائية استدعاء wasm funcref (wasm-bytes.js، المرحلة 1 = CVE-2026-2796).

الأدلة

سجل جانب العملية الأم (MOZ_LOG=BrowsingContextSync:5) بعد ./irun:

root@kitploit:~
D/BrowsingContextSync Transaction::Apply(#380000001, ipc): InRDMPane(false->true)

#380000001 هو BrowsingContext على المستوى الأعلى للنافذة المنبثقة (معرّف مخصص للطفل، مُنشأ from IPC)، وipc يحدد المعاملة على أنها من أصل محتوى. على بناء مُصلَح تفشل نفس الرسالة في التحقق من CanSet ويتم رفضها.

الملفات

التشغيل

المتطلبات الأساسية: بناء Nightly قابل للاستغلال في /Users/sid/gecko-2766/obj-browser، .venv مع psutil، وخادم التسجيل المرفق قيد التشغيل:

root@kitploit:~
python3 srv.py > /tmp/srv4692.log 2>&1 &   # يخدم هذا الدليل على :8781
python3 forge_bctx.py                      # بناء bctx.bin/bctx.json
./irun                                     # تشغيل + حقن + جمع الأدلة

المراجع

  • خطأ Mozilla 2017643 — التزام الإصلاح a9279ce332ed (MFSA 2026-20، Firefox 149)
  • CVE-2026-74939 — آلية مسار الإرسال التي يعيد استخدامها (../poc-cve-2026-74939)
  • CVE-2026-12295 — تزوير حالة التحميل الشقيق (../poc-cve-2026-12295)
تنزيل الأداة
الملفالغرض
bctx.htmlصفحة PoC: تحسب معرف BC للنافذة المنبثقة في وقت التشغيل، وتُدخله في الرسالة المزوّرة، وترسله
forge_bctx.pyيبني bctx.bin/bctx.json (ذاتي التحقق)، ثابت تمامًا باستثناء معرف BC
wasm-bytes.jsبدائيات المرحلة 1: قراءة/كتابة عشوائية، استدعاءات funcref
mdrive2.pyأداة marionette
irunتشغيل مُجهّز: lldb attach + أدلة BrowsingContextSync
srv.pyخادم ويب لتسجيل صفحات PoC (:8781)
profile.user.jsتفضيلات ملف تعريف Firefox (fission مفعّل، التفريغ ممكّن)