Skip to content
KitploitKITPLOIT
أدواتعمليات الاستغلالالمدونة
Log in
إرسال
أدواتعمليات الاستغلالالمدونة
إرسال

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
litebox-snp-novalidation-userptr — بدائية كتابة محلية عالية: LiteBox v0.1.0 SNP UserPtr هو NoValidation لذا يمكن أن يكون buf استدعاء النظام للضيف عنوانًا افتراضيًا للنواة | Kitploit
أدوات/GitHubGitHub/abraxas/litebox-snp-novalidation-userptr
تصعيد الامتيازاتتحليل الذاكرة الجنائيتحليل الثغرات الأمنيةالاستغلالالمحاكاة الافتراضية للأمانأمن السحابةأمن الأجهزةالأوراق والأبحاثاستغلال الملفات الثنائية

الأكثر شعبية

عرض الكل →

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

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

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

عرض جميع الأدوات →
مشاركة
GitHubabraxas/litebox-snp-novalidation-userptr

litebox-snp-novalidation-userptr

بدائية كتابة محلية عالية: LiteBox v0.1.0 SNP UserPtr هو NoValidation لذا يمكن أن يكون buf استدعاء النظام للضيف عنوانًا افتراضيًا للنواة

عرض المستودع
7منذ 4 أياملم تتم المراجعة بعد

Abraxas Labs - litebox-snp-novalidation-userptr

abraxaslabs.tech  ·  github.com/abraxas  ·  @abraxas_null  ·  [email protected]  ·  litebox-snp-novalidation-userptr

litebox-snp-novalidation-userptr

الفئة: بدائية كتابة (قراءة/كتابة من الضيف إلى نواة SNP) الوصول: محلي

LiteBox v0.1.0 (d8556e3) - Microsoft

SNP LinuxKernel يربط UserConstPtr / UserMutPtr بـ NoValidation، الذي يعيد المؤشر دون تغيير. التعليق هو TODO: implement pointer validation to ensure the pointers are in user space. يقوم LVBS بالفعل بفحص النطاق USER_ADDR_MIN..USER_ADDR_END (0x10000 .. 0x7ffffffff000 على x86_64) ويلف النسخ في STAC/CLAC. لا يفعل SNP ذلك. يتم رفض mmap من الضيف لعنوان افتراضي للنواة (TASK_ADDR_MAX)، لذا لا يمكن لمخازن CPL3 الوصول إلى كومة النواة. مسار استدعاء النظام يعمل في وضع النواة ويمكنه ذلك. memcpy_fallible هو rep movsb في وضع المشرف.

هذه بقية من الضيف إلى نواة SNP (VMPL2 LiteBox) للقراءة/الكتابة. ليست VMPL0 المضيف، وليست برنامجًا فائقًا، وليست برنامج SNP الثابت.

المعرّفلا يوجد CVE بعد
الفئةبدائية كتابة (قراءة/كتابة من الضيف إلى نواة SNP)
الوصولمحلي (مساحة مستخدم ضيف غير موثوقة داخل litebox_runner_snp)
CWECWE-823، CWE-119
CVSSمرتفع: 8.8 CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H
المنتجmicrosoft/litebox
المتأثرv0.1.0 (d8556e33676e47244bfefa139c1e9ff95bd67d53) منصة نواة SNP. لا يزال TODO على origin/main حتى 97001fd
المصادقةالضيف يعمل بالفعل داخل جهاز SNP الافتراضي
الترخيصGNU Affero GPL v3.0
المختبر127.0.0.1 فقط. لا يوجد عتاد SNP

ما يمكن للمهاجم فعله

من: مساحة مستخدم ضيف غير موثوقة داخل litebox_runner_snp. القضية #505 (RFC مفتوح) هي هذه الفئة. نفّذها LVBS. لم يفعل SNP ذلك.

السلامة (أداة مثبتة مختبريًا)

المختبر هو أداة copy_from_slice في وضع المشرف للمدققين بالإضافة إلى نسخة من ملف التثبيت litebox_platform_linux_kernel/src/lib.rs. ليس استدعاء نظام من الضيف على عتاد SNP.

المسارعنوان الوجهة الافتراضيالنتيجة
SNP NoValidation (مطابقة)0x1000 (أقل من USER_ADDR_MIN) و 0xffff800000000000 (GVA_OFFSET)قبول؛ يكتب memcpy LITEBOX-SNP-NOVALIDATION-USERPTR-WITNESS في الكائن المُعنون بالنواة
فحص نطاق LVBSنفس وجهات النواةرفض، errno=14 EFAULT، كائن النواة فارغ
كلاهماوجهة مستخدم قانونية 0x400000كلاهما ينسخ الشاهد إلى كائن المستخدم
ملف التثبيت في الصورةلا ينطبقتعليق TODO بالإضافة إلى UserConstPtr / UserMutPtr مرتبطين بـ NoValidation (LvbsValidateAccess غائب)

السلامة (مستنتجة من مسار استدعاء نظام التثبيت)

الطريقة + المصبالصلاحية
read / readv / pread / recv* / getcwd / uname / epoll_pwait مع buf = عنوان افتراضي للنواة -> UserMutPtr::copy_from_slice -> memcpy_fallible (rep movsb)كتابة حتى MAX_KERNEL_BUF_SIZE (512 كيلوبايت) لكل استدعاء نظام، أو أجزاء صفحة iovec، في أي عنوان افتراضي لنواة SNP مُعنون. الحمولة يختارها الضيف (أنبوب/ملف كتبه الضيف)

الاستطلاع (مستنتج)

الطريقة + المصبالصلاحية
write / writev / send* مع buf = عنوان افتراضي للنواة -> read_at_offsetقراءة ذاكرة نواة SNP المُعنونة إلى واصف ملف الضيف
عنوان افتراضي للنواة غير مُعنونEFAULT عبر جدول الاستثناءات (معيّن لصفحات النواة الموجودة)

التوافر (مستنتج)

الطريقة + المصبالصلاحية
إفساد كومة نواة SNP / جداول الصفحات / shim TLSتعطّل أو تحويل نواة ضيف SNP. لا أدّعي وجود أداة RIP موثوقة

ما لا يمنحه هذا الخلل المتبقي

  • VMPL0 المضيف، البرنامج الفائق، برنامج SNP الثابت
  • LVBS VTL1 (LvbsValidateAccess + STAC/CLAC)
  • sysretq إلى RIP النواة (sanitize_for_user_return يرفض RIP/RSP غير المستخدم)
  • mmap / mprotect من الضيف لعنوان افتراضي للنواة (TASK_ADDR_MAX)
  • NoValidation في مساحة مستخدم Linux/Windows (نفس العملية؛ الحدود المضيفة هناك هي seccomp، وهذا خلل متبقٍ شقيق)
  • ليس اختراقًا لسرية بت C لـ SEV-SNP بحد ذاته. إنه نسخ وكيل مرتبك داخل نواة LiteBox SNP

كيف وجدته

litebox_platform_linux_kernel/src/lib.rs الأسطر 59-67 على v0.1.0. لا يزال TODO على main. يمتلك LVBS بالفعل LvbsValidateAccess مع USER_ADDR_MIN = 0x10000 و USER_ADDR_MAX = 0x7ffffffff000. لم يكن لدي عتاد SNP. ينسخ المختبر ملف التثبيت، وينفذ المطابقة مقابل فحص النطاق، ويكتب الشاهد عبر NoValidation في عناوين الوجهة الافتراضية التي يرفضها فحص LVBS.

المختبر

cd lab
./run.sh

Loopback 127.0.0.1:19130. مشروع Compose litebox-snp-novalidation-userptr. الشاهد LITEBOX-SNP-NOVALIDATION-USERPTR-WITNESS. السطر الأخير:

SUCCESS litebox-snp-novalidation-userptr novalidation-kernel-write-ok lvbs-range-reject pin-TODO-present user-range-copy-ok LITEBOX-SNP-NOVALIDATION-USERPTR-WITNESS

الإصلاح

اربط SNP UserPtr بنفس فحص نطاق مساحة المستخدم الذي يمتلكه LVBS بالفعل (USER_ADDR_MIN..USER_ADDR_END)، وأبقِ النسخ خلف جدول الاستثناءات. لا تترك NoValidation على منصة نواة.

استقبال المورّد هو MSRC (https://msrc.microsoft.com/create-report). لا تفتح قضية GitHub عامة على microsoft/litebox.

التواصل

Abraxas Labs - abraxaslabs.tech - github.com/abraxas - @abraxas_null - [email protected]

تنزيل الأداة