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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
XboxSeries — بحث شخصي في بنية Xbox Series | Kitploit
أدوات/GitHubGitHub/daniellmcguire/xboxseries
أمان الأنظمة المدمجةالتحليل الثابتالتحليل الديناميكي (عزل)الهندسة العكسيةمصممي الأخطاءأمن الأجهزةتحليل الملفات الثنائيةالتعلم والتعليمتحليل البرامج الثابتة
GitHubdaniellmcguire/xboxseries

XboxSeries

بحث شخصي في بنية Xbox Series

574منذ شهر واحدتمت المراجعة من قبل Kitploit

الأكثر شعبية

عرض الكل →

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

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

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

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

Xbox Series: بحث في البنية الداخلية

الحقلالقيمة
التاريخ9-12 مارس 2026 + 7-? يوليو 2026
العتادXbox Series S (الاسم الرمزي: Lockhart)
إصدار نظام التشغيل26100.7010.amd64fre.xb_flt_2602ge.260212-1010 + 26100.8561.amd64fre.xb_flt_2606ge.260609-2200
طريقة الوصولوضع المطور + SSH + REST API + وصلة مشاركة ملفات NTFS

ملخص

هذا التقرير هو تحليل ثابت وديناميكي للبنية الداخلية لـ Xbox Series S، أُجري بالكامل عبر البنية التحتية الرسمية لوضع المطور من Microsoft. لم تُستخدم أي ثغرات أو مخالفات للسياسات؛ كانت جميع وسائل الوصول ضمن حدود برنامج المطور الفردي.

يحتوي هذا على تفاصيل تبدأ من المكوّنات عالية المستوى المستخدمة في اللعب، وصولاً إلى أدنى مكوّنات برامج تشغيل النظام على مستوى النظام. من المتوقع أن تكون معظم هذه التفاصيل مماثلة أيضاً بالنسبة لـ Xbox One.


توضيحات

تم استخدام الذكاء الاصطناعي لتنسيق البحث الأولي الكبير (أكثر من 200 مخرجات تحليل وأكثر من 50 ملاحظة عشوائية) بسرعة كبيرة في هذا المستند. جميع التعديلات المستقبلية تُجرى يدوياً.

إذا رأيت أن أي نقطة في هذا غير واضحة، أو غير موثقة جيداً، أو خاطئة، فلا تتردد في مراسلتي، أو إذا كان لديك أي إجابات على أسئلتي (في القسم 12) فسيكون ذلك رائعاً أيضاً. يتم حذف GUIDs والأنماط الشائعة الأخرى في خطاف pre-commit تحسباً لترك أي شيء يحدد هوية حسابي.

الكثير مما أعمل عليه عبارة عن افتراضات، لذا قد يكون غير دقيق، وسيتغير مع حصولي على مزيد من المعلومات وفحص المزيد من الملفات الثنائية.

لأسباب قد تخمّنها، لن أشارك بأي حال من الأحوال الملفات الثنائية المباشرة، أو مخرجات التفكيك، أو أي شيء يُعتبر ملكية فكرية لـ Microsoft أو شركاتها التابعة.

root@kitploit:~
ERA = GameOS Partition
SRA = SystemOS Partition
HT = Kinect (possibly "Human Tracking"?)
Arden = Xbox Series X/S GPU Stack
NewBe = Arden shader compiler

النتائج الرئيسية

توجد إدارة لنظام التشغيل المضيف (Host OS) لبرامج التشغيل خارج نموذج SRA/ERA المعروف، انظر نموذج الثقة (الأقسام 4.2، 17.5). يتم تحميل XVIO.SYS وXSraFlt.sys مباشرة بواسطة الهايبرفايزر (عبر HostOS) قبل تهيئة Windows، وهما غائبان عن جميع وحدات التخزين المتاحة. لا يمكن العبث بهما حتى مع الوصول الكامل إلى النواة، وهو الحد الأمني الأساسي.

تم تعطيل HVCI عمداً (القسم 18). يؤكد IsSecureKernelRunning = 0x0 أن النواة الآمنة (VTL1) غير قيد التشغيل. سلامة الكود تكون عند التحميل فقط، مما يترك نافذة TOCTOU بمجرد تعيين الملفات الثنائية. هذه مقايضة أداء متعمدة؛ الحد الأمني هو قسم الهايبرفايزر، وليس حماية الذاكرة داخل القسم.

تعرض وصلة NTFS نظام ملفات SystemOS الكامل عبر الشبكة (القسم 1.2). أمر واحد mklink /J من قشرة SSH يعيّن C:\ أو أي شيء آخر في مشاركة ملفات Device Portal، مما يجعل كل ملف ثنائي للنظام قابلاً للقراءة عن بُعد دون مصادقة إضافية تتجاوز رمز PIN الخاص بوضع المطور.

البنية عبر الأقسام شبه موثقة بالكامل (الأقسام 4، 14، 26-28). يتواصل قسم ألعاب ERA مع SystemOS حصرياً عبر قنوات بوساطة الهايبرفايزر: مخازن حلقية XVIO للإدخال/الإخراج، وترجمة GPA للذاكرة المشتركة، وHvSocket للاتصال بين العمليات، وأقسام منفذ ALPC لتسليم framebuffer بدون نسخ (zero-copy) بموجب "Host OS" الوالد.

وصلة Deploy:\ تتجاوز قيود الوصول المحلي (القسم 25). يكون حجم Windows Update متاحاً فقط عبر مشاركة الشبكة (S:\Deployment\SoftwareDistribution\) بسبب بعض التناقض في مكان ما (ربما xrfssvc.exe؟).

معظم الملفات الثنائية تحتوي فقط على سلاسل وصفية، لم أكن أعلم ذلك حتى اليوم لأنني لم أكن أستخدم Windows لأي شيء سوى الاتصال الفعلي بالكونسول. غالباً ما تكون مملة (مثل XVUH، XVMCTRL) لكن في أحيان أخرى تكون وصفية جداً (مثل Durango Virtual XVNC Bus Driver، Xbox Remote File System Service).

النطاق والقيود

أُجريت جميع الاختبارات على جهاز Xbox Series S تجزئة واحد في وضع المطور. تعكس النتائج العديد من الإصدارات، لكنني سأقوم في النهاية بمقارنة الإصدارات وتوثيق ذلك. قد تختلف النتائج عبر مراجعات العتاد (Series X، Xbox One) وإصدارات البرامج الثابتة. لم تكن عدة أسطح على مستوى النواة قابلة للوصول: يتم حظر تفريغات النواة الحية بواسطة قيد NoKernelDumps، ولم يتم تعداد سطح IOCTL الخاص بـ xvmctrl.sys بالكامل. تُتتبع الأسئلة المفتوحة في القسم 12.


المنهجية

الأدوات المستخدمة

النهج

تم إنشاء الوصول عبر واجهة SSH الخاصة بوضع المطور غير الموثقة رسمياً (ولكن توجد وثائق مجتمعية). وسّعت تقنية وصلة NTFS (القسم 1.2) وصول القراءة من مساحة D:\DevelopmentFiles المؤقتة إلى كامل وحدة تخزين النظام C:\ وجميع وحدات التخزين ذات الأحرف الإضافية. كانت جميع التحليلات للقراءة فقط؛ لم يتم تعديل أي إعدادات للنظام (لم يتم استخدام WdConfig.exe set). يمكن لـ Xbox تشغيل ملفات Windows console الثنائية القياسية x86_64 (مترجمة مع /MT) مباشرة عبر قشرة SSH، والتي استُخدمت لتشغيل أدوات التحليل محلياً.

لم تكن تفريغات النواة متاحة: قيد NoKernelDumps في Device Portal يمنعها على وضع المطور في الأجهزة الاستهلاكية. كانت تفريغات العمليات الحية في وضع المستخدم متاحة واستُخدمت عند الاقتضاء.


1. الوصول عن بُعد

1.1 الوصول إلى القشرة

يدعم وضع مطور Xbox Visual Studio، ويستخدم هذا SSH:

  • اسم المستخدم: DevToolsUser
  • كلمة المرور: رمز PIN الخاص بـ Visual Studio المعروض في Dev Home

1.2 الوصول إلى نظام الملفات

تعرض بوابة Device Portal على https://XBOX:11443 مشاركة ملفات NTFS مخفية إلى D:\DevelopmentFiles. من قشرة SSH:```batch mklink /J D:\DevelopmentFiles\C C:\

root@kitploit:~
يؤدي هذا إلى إنشاء نقطة junction من مساحة عمل المطور المؤقتة إلى جذر محرك الأقراص C:، مما يعرض نظام ملفات SystemOS بالكامل كمشاركة شبكة قابلة للقراءة على:

    \\XBOX\DevelopmentFiles\C

يتيح ذلك تشغيل أدوات مثل `dumpbin` من جهاز كمبيوتر مباشرةً مقابل ملفات Xbox الثنائية عبر الشبكة.

---

## 2. هوية نظام التشغيل

| الحقل              | القيمة           |
|--------------------|-------------------|
| Product Name       | Xbox Series S     |
| OS Edition         | SystemOS          |
| Windows NT Version | 10.0              |
| Build Number       | 26100             |
| Build String       | `26100.8561.amd64fre.xb_flt_2606ge.260609-2200` |
| LCUVer             | `10.0.26100.8536` |
| Branch             | `xb_flt_2602ge`   |
| Build Date         | June 09, 2026     |
| Architecture       | x64               |
| UEFI Secure Boot   | `NotCapable`      |
| Console Codename   | Lockhart          |
| Console Mode       | Default           |
| Sandbox ID         | `XDKS.1`          |

يُعرّف نظام التشغيل نفسه باسم **SystemOS**، وليس Windows. يبدو أن فرع البناء `xb_flt_2602ge` هو "fork" متميّز من قاعدة أكواد Windows خاص بـ Xbox، لا يزال مشابهًا جدًا لنظام Windows 11. بعض ثنائيات نظام Windows مطابقة تمامًا لنظيراتها المكتبية، ومبنية باستخدام نفس سلسلة أدوات MSVC، ويُرجَّح أنها مصدرها حزم UUP نفسها. وهذا منفصل عن "Host OS" غير الواضح.

### 2.1 هوية التسجيل

تم تجميد عدة حقول `CurrentVersion` عمدًا، على غرار إصدار Windows المكتبي (لأغراض التوافق مع ألعاب Xbox One في هذه الحالة):

| المفتاح | القيمة | ملاحظات |
|-----|-------|-------|
| `CurrentVersion` | `6.3` | يُبلِّغ داخليًا على أنه Windows 8.1، للتوافق |
| `BuildGUID` | | تم تصفيره/مسحه |
| `InstallDate` | `0` | لا يوجد طابع زمني للتثبيت |
| `EditionID` | `SystemOS` | لا يتم تحديثه أبدًا |
| `ReleaseId` | `2009` | مجمّد عند حقبة Windows 10 20H2؛ لا يزداد أبدًا |

---

## 3. تخطيط وحدات التخزين

يكشف الجهاز عن 13 حرف محرك أقراص، يُفترض أن معظمها [مثل Xbox One، افتراضية بالكامل](https://xboxoneresearch.github.io/wiki/operating-system/xbox-operating-system/)

| محرك الأقراص | التسمية | المحتويات | ملاحظات |
|-------|-------|----------|-------|
| `C:` | System Boot | ملفات نظام تشغيل Windows | قسم SystemOS قياسي |
| `D:` | *(none)* | `DevelopmentFiles\` | مساحة عمل مؤقتة لوضع المطور |
| `G:` | *(none)* | `GameDVR_VideoBuffer` (272MB), `GameDVR_AudioBuffer` (16MB), `GameDVR_AudioBuffer_SysLoopback` (3MB) | مخازن التقاط دائرية خام، ذاكرة مشتركة بين ERA وSystemOS |
| `J:` | Sys Tools | سلسلة أدوات XTF وبرامج التشغيل وQuickActions | انظر القسم 5 |
| `M:` | Misc | يحتوي على طبقات NTFS الخاصة بالجهاز للمكتبات وبرامج التشغيل | قسم SystemOS؟ |
| `N:` | *(none)* | `BlackBox\`, `EtwPlus\`, `CMS\`, `errorstrings\`, `usersettings\` | وحدة تخزين التشخيص والقياس عن بُعد، انظر القسم 3.2 |
| `Q:` | *(none)* | `Users\DevToolsUser\` | الدليل الرئيسي للمستخدم |
| `S:` | *(none)* | `apps\`, `Clip\`, `Deployment\`, `Prefetch\`, `Microsoft\`, `ProgramData\` | يُرجَّح أنها وحدة تخزين Host OS (تحتوي أيضًا على التطبيقات الافتراضية والموارد الأخرى) |
| `T:` | *(none)* | `GameDVR\`, `Update\`, junctions إلى Harddisk16 | بيانات وصفية لـ GameDVR + خط أنابيب التحديث |
| `U:` | *(none)* | `ShellState\`, `BackCompatLicenses\`, `UserDataCache\` | حالة Shell والمستخدم |
| `V:` | *(none)* | *(empty)* | غرض غير معروف |
| `X:` | SystemAux | `Apps\`, `Catalog000.bin` (2.3MB) | ثنائيات تطبيقات النظام: 63 تطبيقًا بما في ذلك `AdsLauncher`, `Xbox.DiscordComponent`, `Xbox.SingleUserProxy`, `Xbox.NTSCaptivePortal`, `Xbox.Xmap`, `Xbox.XboxIDP`، انظر القسم 3.3 |
| `Y:` | SystemAuxF | `Apps\`, `Catalog000.bin` (6.5MB) | ثنائيات تطبيقات النظام الثانوية |

بالإضافة إلى ذلك، يوجد `\\.\HarddiskVolume10` بدون تعيين حرف محرك أقراص. توجد وحدة تخزين WER (Windows Error Reporting) مخفية تحتوي على `CrashDumps\` و`ReportArchive\` و`ReportQueue\` و`Temp\`. يوجد على الأقل **18 كائن جهاز قرص فعلي** (`PhysicalDrive0` حتى `PhysicalDrive17`)، وكلها حاضرة ككائنات kernel لكن يتعذر الوصول إليها على المستوى الخام من مساحة المستخدم. يوجد `HarddiskVolume16` و`HarddiskVolume18` كوحدات تخزين حقيقية قابلة للوصول لكنها محجوبة عن `DevToolsUser`.

### 3.1 مسارات أجهزة Kernel المخفية

توجد المسارات التالية ككائنات أجهزة kernel لكن يتعذر الوصول إليها من مساحة المستخدم (عادةً):

- `\??\Deploy:\` وحدة تخزين خط أنابيب التحديث/النشر لنظام Xbox (يمكن الوصول إليها عبر junction على مشاركة الشبكة عند `S:\Deployment\`)

### 3.2 وحدة تخزين التشخيص N:\

يتم إخفاء عدة أدلة على `N:\` بنشاط بواسطة برنامج تشغيل مرشح نظام الملفات على مستوى kernel، إذ تظهر فارغة لجميع أدوات مساحة المستخدم لكن تم التأكيد على أنه يُكتب إليها أثناء التشغيل:

| المسار | الحالة | ملاحظات |
|------|--------|-------|
| `N:\EtwPlus\` | **مخفي بواسطة kernel** | المحتويات مخفية بواسطة برنامج تشغيل مرشح نظام الملفات |
| `N:\BlackBox\` | قابل للوصول | يحتوي على بيانات تتبع أخطاء ETL الخاصة بـ Xbox |
| `N:\errorstrings\en-US.json` | قابل للوصول | قاعدة بيانات أخطاء Xbox الكاملة تحتوي على 797 إدخالًا، انظر القسم 3.4 |
| `N:\usersettings\18\public\` | قابل للوصول | صورة اللاعب كاملة الجودة مخزنة كملفات PNG بدون امتداد (1080×1080 RGBA، تنسيق PNG قياسي) |

يخزّن `N:\usersettings\18\public\` كلاً من `AppDisplayPic` و`GameDisplayPic` كملفات بدون امتداد. يؤكد تجزئة SHA256 أنهما متطابقان بايتًا ببايت، فصورة عرض التطبيق وصورة اللاعب هما نفس الملف المكتوب في مسارين.

### 3.3 X:\ SystemAux

يحتوي `X:\ht\versions\` على حزمة رؤية Kinect نشطة مع **ثلاثة إصدارات متزامنة** مثبتة جنبًا إلى جنب (1.0.0 و1.0.1 و1.0.2)، بإجمالي 119MB. وهي تقابل إصدارات `vvtechs.dll` بأحجام 1.67MB->1.70MB->1.85MB على التوالي.

**نماذج التعلم الآلي لتتبع الجسم** (لكل دليل إصدار):

| الملف | الحجم | الغرض |
|------|------|---------|
| `exemplardb.xmplr` | 36.7MB | قاعدة بيانات أمثلة لوضعية الجسم الكاملة |
| `FernsModel.bin` | 932KB | كاشف النقاط الرئيسية للعمق (مصنف غابات عشوائية) |
| `HeadPosition.mshdf` | 262–393KB | مقدّر مفصل الرأس (يختلف حسب الإصدار) |
| `LSVMGripReleaseRight.gbd` | 7.5KB | مصنف SVM كامن للإمساك/الإفلات، اليد اليمنى |

**نماذج التعلم الآلي لتتبع الوجه** (على مستوى النظام، `C:\Windows\System32\ht\`):

| الملف | الحجم | الغرض |
|------|------|---------|
| `FaceDetector.bin` | 3.0MB | تحديد مواضع الوجوه في الإطار |
| `FaceRecognition.bin` | 3.4MB | التعرف على الهوية عبر العمق/الأشعة تحت الحمراء |
| `FaceRecognition_Color.bin` | 5.9MB | التعرف على الهوية عبر قناة الألوان |
| `ExpressionRandomForest.model` | 150KB | مصنف المشاعر |
| `EyeLeftRandomForest.model` | 55KB | حالة العين اليسرى |
| `EyeRightRandomForest.model` | 65KB | حالة العين اليمنى |
| `LookingAwayRandomForest.model` | 42KB | كشف النظر/الانتباه |
| `MouthOpenRandomForest.model` | 58KB | حالة فتح الفم |
| `MouthMovedRandomForest.model` | 35KB | حركة الشفاه |
| `FacialHairIRRandomForest.model` | 126KB | شعر الوجه (مستشعر الأشعة تحت الحمراء فقط) |
| `GlassesIRRandomForest.model` | 206KB | كشف النظارات (مستشعر الأشعة تحت الحمراء فقط) |

جميع مصنفات سمات الوجه هي نماذج **Random Forest**. يشمل الإخراج الهوية والمشاعر والنظرة وحالة الشفاه وسمات المظهر.

يصدّر `vvtechs.dll` في الحزمة دالة واحدة: `NuiVisionCreateFactory`. يستورد `EtwPlus.dll` و`D3D11`، مما يؤكد أن خط أنابيب رؤية Kinect يعمل على GPU ويستخدم مسار القياس عن بُعد الخاص بـ Xbox. وهذا نشط على أجهزة لا يوجد بها Kinect فعلي متصل (انظر أيضًا `KinectSensorEnabled=true` في القسم 6، وخط أنابيب `nuiservice.exe` الكامل في القسم 33).

### 3.4 قاعدة بيانات أكواد الأخطاء N:\errorstrings\en-US.json

797 إدخالًا لسلسلة أخطاء Xbox. أكواد بارزة ذات صلة أمنية أو معمارية:

| رمز الخطأ | السلسلة | ملاحظات |
|------------|-----------------|-------|
| `0x887E0002` | عدم تطابق D3D12.X بين وقت التشغيل وبرنامج التشغيل | يؤكد أن D3D12.X هو متغير D3D12 خاص بـ Xbox، وليس D3D12 عامًا |
| `0x80A40406` | القياس عن بُعد المحسّن من Microsoft مفعّل في وضع المطور | وضع المطور يختار الجهاز صراحةً لجمع قياس عن بُعد مرتفع المستوى |

---

## 4. بنية Hypervisor

يستخدم Xbox برنامج hypervisor مخصصًا قائمًا على Hyper-V يشغّل قسمين:

- **SystemOS** قسم SRA
- **قسم ERA** بيئة تشغيل GameOS / نظام تشغيل الألعاب (Title OS)

### 4.1 مكدس برامج التشغيل

    User space:     xpal.dll
                        ↓
    Kernel:         xpalk.dll 
                        ↓
                    xvmctrl.sys (364KB)
                        ↓
    Hypervisor:     XVIO.SYS 

### 4.2 برامج تشغيل Hypervisor الرئيسية

| برنامج التشغيل | الحجم | الغرض |
|-------------------|---------|----------------------------------------------------------------------|
| `xvmctrl.sys` | 364KB | التحكم في VM، الواجهة الرئيسية للـ hypervisor، سطح IOCTL |
| `XVIO.SYS` | غير معروف | Xbox Virtual I/O، ABI مباشر للـ hypervisor (غير موجود على نظام ملفات SystemOS) |
| `xvioc.sys` | غير معروف | عميل XVIO، واجهة جانب SystemOS إلى XVIO |
| `xvbus.sys` | 73KB | جذر الحافلة الافتراضية + مزود HvSocket XVIO |
| `hvsocket.sys` | 185KB | تنفيذ مقبس Hyper-V |
| `VMNP.SYS` | 106KB | يُسمى "برنامج تشغيل NPFS"، ويتعامل أيضًا مع الانتحال. |
| `Xrfs.sys` | 135KB | برنامج تشغيل نظام ملفات Xbox |
| `XRmnt.sys` | 49KB | برنامج تشغيل تحميل Xbox |
| `XRo.sys` | 95KB | مرشح Xbox للقراءة فقط |
| `VerifierExt.sys` | 274KB | امتداد مدقق برامج التشغيل |

**نتيجة حرجة:** لا يملك `XVIO.SYS` و`xpalk.dll` **أي إدخالات خدمة في السجل** و**غائبان عن نظام ملفات SystemOS**. يُرجَّح أنه يتم تحميلهما بواسطة Host OS قبل بدء SystemOS، خارج نموذج برامج التشغيل المحلي تمامًا. هذه هي آلية الأمان الفعلية؛ حتى مع وصول كامل إلى kernel نظام SystemOS، لا يمكن العبث بهذين المكوّنين.

### 4.3 سطح واجهة برمجة تطبيقات XVIO (أُعيد بناؤه من الواردات)

يمكن العثور على معلومات حول XVIO [هنا](https://xboxoneresearch.github.io/wiki/development/xvio/xvio-overview/)، ومع ذلك لا يمكنني تأكيد أن الأمور لم تتغير منذ Xbox One.

من واردات `xvmctrl.sys` و`xviomonc.sys` و`srakmd_arden.sys` الموجهة إلى `XVIO.SYS`:

    XvioInitialize / XvioCleanup
    XvioCreateEvent
    XvioPostMessage
    XvioGetCurrentPartitionId                           (identifies active partition, from xviomonc)
    XvioGetReservedMemory                               (hypervisor carve-out RAM access, from srakmd_arden)
    XvioRegisterGpaMdl / XvioUnregisterGpa              (Guest Physical Address mapping)
    XvioSfrMapPages / XvioSfrUnmapPages                 (Shared Frame Region, cross-partition GPU memory)
    XvioSfrCounterGet / XvioSfrPerfCounterSet
    XvioSfrReadEvent
    XvioSetFocus                                        (switches input focus between partitions)
    XvioSetSystemTime
    XvioSaveProvidersState / XvioRestoreProvidersState
    XvioPerfMonitoringEnabled
    XvioCreateRingBuffer / XvioDestroyRingBuffer
    XvioGetRingBufferContext
    XvioReadRingBuffer / XvioReadRingBufferEx / XvioWriteRingBuffer
    XvioAcquireRingBufferRundown / XvioReleaseRingBufferRundown

`XvioRegisterGpaMdl` ودوال SFR هي آلية مشاركة ذاكرة الـ hypervisor، حيث يتم تعيين صفحات RAM الخام وإطار عرض GPU عبر حدود القسم.

### 4.4 خدمات HvSocket عبر الأقسام

يعرض `hvsocket.sys` خدمات للاتصال عبر المقابس بين الأقسام:

- `HvSocketGetPartitionConnections` / `HvSocketGetPartitionListeners` تعدّد القنوات النشطة
- `HvSocketGetVmIdFromVmbusHandle` تحليل مقبض VMBus
- `HvSocketUpdateServiceTable` سجل بجميع الخدمات عبر الأقسام

ملف DLL مُسمّى بمعرّف GUID `[REDACTED]_hvsocket.dll` يسجّل مزود خدمة HvSocket. تم حجب GUID تحسبًا لإمكانية التعرف عليه.

تم حل معرّفات GUID الأربعة لنقاط نهاية HvSocket البدل عبر حساب SID الخاص بالخدمة SHA1، انظر القسم 20 للتفاصيل الكاملة بما في ذلك قنوات DiagTrack وRpcSs وEventLog عبر الأقسام.

---

## 5. وحدة تخزين J:\ "Sys Tools" XTF / المطور

> **الأثر:** وحدة التخزين `J:\` موجودة على كل جهاز Xbox تجاري. في وضع المطور، تكون سلسلة أدوات XTF الكاملة متاحة دون مصادقة إضافية تتجاوز رمز PIN الخاص بوضع المطور. يتضمن ذلك تصحيح الأخطاء عن بُعد، وبث الشاشة، وتوصيف GPU عبر PIX، وواجهات برمجة تطبيقات التحكم في الجهاز غير المخصصة لوصول المستخدم النهائي.

أهم نتيجة في هذا البحث. تحتوي وحدة التخزين `J:\` (المُسمّاة "Sys Tools") على **Xbox Tools Framework (XTF)**، سلسلة أدوات حزمة تطوير Microsoft الداخلية، وهي موجودة على كل جهاز Xbox تجاري على ما يبدو. تعداد كامل: **132 ملفًا، 52MB** عبر الوحدة.

### 5.1 سجل إضافات XTF (`J:\tools\xtfextensions.txt`)

جميع إضافات XTF العشرون مسجلة بمعرّفات CLSID الخاصة بـ COM:

| DLL                        | CLSID            | 
|----------------------------|------------------|
| `XtfApplicationServer.dll` | `{10B16182-...}` |
| `XtfConsoleControl.dll` | `{5B45D0E0-...}` |
| `XtfConnectedStorage.dll` | `{9D610BBD-...}` |
| `XtfDebugMonitor.dll` | `{9141933C-...}` |
| `XtfDebugCaptureServer.dll` | `{F306F5C7-...}` |
| `XtfFileIO.dll` | `{8A8B4D4C-...}` |
| `XtfInput.dll` | `{7CC4D09B-...}` |
| `XtfPix.dll` | `{9BD151A3-...}` |
| `XtfGameStreaming.dll` | `{AA627F22-...}` |
| `XtfDiagInfo.dll` | `{FD21AC23-...}` |
| `XtfStressServer.dll` | `{6B5B0C75-...}` |
| `XtfSymbolProxyServer.dll` | `{69ABF3A1-...}`  |
| `XtfPerf.dll` | `{F82AF734-...}` |
| `XtfRemoteRun.dll` | `{D77FE8B8-...}` |
| `XtfUser.dll` | `{2E302BAA-...}` |
| `XtfAuditioning.dll` | `{B91F5206-...}` |
| `XtfCleanup.dll` | `{9CF818E5-...}` |
| `XtfCredentialsServer.dll` | `{8582A384-...}` |
| `XtfEventServer.dll` | `{749FDEFA-...}` |
| `XtfUpdateT_s.dll` | `{DCDD4E77-...}` |

### 5.2 مصحح الأخطاء عن بُعد Visual Studio (`J:\tools\debugmon\`)

    msvsmon.exe              
    vsdebugeng.dll (1.5MB)
    vsdebugeng.impl.dll (1.6MB)
    msdia120.dll             
    diagnosticsscripthost.dll
    vsdebuglaunchnotify.exe

حمولات تصحيح مصنفة حسب الإصدار من VS 2015 إلى VS 2022 (`debugmondev14payload` حتى `debugmondev16payload`). **ثلاثة أجيال متزامنة من مصحح أخطاء Visual Studio عن بُعد حاضرة ومسجلة: VS2015 وVS2017 وVS2019** تتعايش جميعها على نفس نظام ملفات الجهاز التجاري.

### 5.3 أدوات بارزة أخرى

| الملف الثنائي | الغرض |
|---|---|
| `agent-xbox.exe` (1.5MB) | وكيل XTF الرئيسي |
| `xtfrtservice.exe` (1.3MB) | مضيف خدمة وقت تشغيل XTF |
| `xstudioserviceexe.exe` | خدمة Xbox Studio |
| `xperf.exe` | مُوصِّف أداء Xbox، حاضر ويعمل، لكن **تتبع kernel الخاص بـ ETW محجوب تمامًا بغض النظر عن الأداة** (انظر القسم 5.5) |
| `videoserver.exe` (RTSP) | خادم بث شاشة RTSP مستقل |
| `wdapp.exe`, `wdconfig.exe` | أدوات Wave Debugger / الإعدادات |
| `wdcapture.exe` | التقاط لقطات الشاشة/الفيديو |
| `wdgamestream.exe` | التحكم في بث الألعاب |
| `xboxnetapidiagsystem.exe` | تشخيصات شبكة Xbox Live |
| `xbtp.dll` (503KB) | بروتوكول النقل عريض النطاق Xbox Broadband Transfer Protocol |
| `xraytool.exe` | أداة أداء جهاز Xbox (تكشف حقيقة وجود Host OS) |
| `xstudioclient.dll` | مكتبة عميل Xbox Studio |
| `unattendedsetuphelper.exe` | مجموعة أدوات إدارة كاملة للجهاز، انظر القسم 5.6 |

### 5.4 تنسيق QuickActions `.xboxunattend`

يحتوي `J:\QuickActions\` على نصوص برمجية للأتمتة بتنسيق `.xboxunattend`. وهي نصوص أوامر Windows عادية يتم تشغيلها عبر Device Portal. الإجراءات المتاحة:

- `Capture_Screenshot.xboxunattend` يستدعي `wdcapture.exe screenshot`
- `Capture_Video.xboxunattend`
- `Toggle_ConsoleMode.xboxunattend` يبدّل أوضاع محاكاة الأجهزة عبر `WdConfig.exe`
- `Toggle_HDR.xboxunattend`
- `Toggle_Resolution.xboxunattend`
- `Launch_DevHome.xboxunattend` / `Launch_RetailHome.xboxunattend`
- `Suspend_Title.xboxunattend`

يكشف `Toggle_ConsoleMode.xboxunattend` القائمة الكاملة لمعرّفات أوضاع التوصيف التي تُمرَّر إلى `WdConfig.exe`: `AnacondaProfiling` و`LockhartProfiling` و**`Scarlett 40 GB`**.

### 5.5 xperf / WPR

إن `xperf.exe` وWPR حاضرون ويعملون بالكامل بما في ذلك ملف تعريف WPR `NeuralProcessing`. ومع ذلك، فإن جميع تتبعات ETW على مستوى kernel محجوبة برمزي خطأ مميزين:

| رمز الخطأ | المعنى |
|------------|---------|
| `0x80070005` | `Access denied`, رفض ACL قياسي في Windows |
| `0xc5585011` | `Xbox policy block`, **لا توجد سلسلة خطأ موجهة للمستخدم لهذا الرمز** (غير موجودة في `N:\errorstrings\en-US.json`) |

يُظهر تعداد مزودي ETW **صفرًا من المزودين الخاصين بـ Xbox** في مساحة أسماء ETW القياسية. تمر جميع بيانات القياس عن بُعد الخاصة بـ Xbox عبر `EtwPlus.dll` باستخدام دوال تبدأ بادئتها `Etx`، وهي خط أنابيب منفصل تمامًا عن ETW القياسي في Windows (انظر القسم 19.3).

### 5.6 أداة إدارة الجهاز unattendedsetuphelper.exe

`unattendedsetuphelper.exe` هو ملف تنفيذي لإدارة الجهاز يغطي:

- إعادة ضبط المصنع
- تحديث البرنامج الثابت عبر الشبكة
- حقن الإشعارات/التوستات
- إدارة Device Portal

وهو أيضًا بمثابة محرك وقت التشغيل للبرمجة النصية `.xboxunattend` (تنسيق QuickActions الموثق في القسم 5.4).

---

## 6. سطح إعدادات WdConfig

يعرض `J:\tools\WdConfig.exe` (البناء `10.0.26100.7010`) واجهة برمجة تطبيقات الإعدادات الكاملة للجهاز. إعدادات بارزة:

### فئة التصحيح

| الإعداد | القيمة | ملاحظات |
|---|---|---|
| `ConsoleType` | `Lockhart` | معرّف الأجهزة |
| `ConsoleMode` | `Default` | `AnacondaProfiling`, `LockhartProfiling`, `Scarlett 40GB` |
| `EraGraphicsDriverMode` | `Title Configured` | الخيارات: `Retail`, `Instrumented`, `Validated`. المكافئ في SRA هو `SraGraphicsDriverMode = Retail`، ويستخدم ERA وSRA إعدادات منفصلة لوضع برنامج التشغيل |
| `EnableKernelDebugging` | `false` | يمنع تفكيك تعطل ERA لتمكين إرفاق مصحح أخطاء kernel |
| `EnablePixMemory` | `false` | يحجز 6048MB إضافية لـ PIX في وضع Lockhart Profiling |
| `CrashDumpType` | `None` | الخيارات: `Triage`, `Mini`, `Heap` |
| `TitlePerformanceOverlay` | `false` | تراكب GPU/CPU في الوقت الفعلي على الألعاب قيد التشغيل |
| `ExtraTitleMemory` | `0` | الحد الأقصى 6048MB في وضع Lockhart Profiling |
| `LastShutdownReason` | `Console crash` | محفوظ عبر عمليات إعادة التشغيل، لقد تعطل جهازي عند آخر إيقاف تشغيل |
| `KinectSensorEnabled` | `true` | **معيّن إلى true على أجهزة لا يوجد بها Kinect متصل**، الحزمة مهيأة بغض النظر عن وجود الأجهزة |

### فئة الشبكة

| الإعداد | القيمة | ملاحظات |
|---|---|---|
| `UseDebugNicForAllTraffic` | `false` | توجد بطاقة شبكة تصحيح منفصلة، مختلفة عن بطاقة الشبكة الرئيسية. |

### فئة التخزين

| الإعداد | القيمة | ملاحظات |
|---|---|---|
| `DevkitUseRetailConnectedStorage` | `false` | إذا تم التمكين، سيستخدم وضع المطور قسم التخزين المتصل بالتجزئة. لم يُختبر. |
| `RunFromPcDataCacheSizeInGB` | `100` | **100GB محجوزة افتراضيًا لذاكرة تخزين ألعاب Run-From-PC؛ مقفلة ولا يمكن للمستخدم تغييرها** |

### فئة عدم المراقبة

| الإعداد | القيمة | ملاحظات |
|---|---|---|
| `AllowUsbUnattendScript` | `true` | نصوص `.xboxunattend` على USB تعمل تلقائيًا |
| `RunUnattendScriptImmediately` | `false` | إذا كان true، تعمل نصوص USB عند التشغيل دون مطالبة بالإلغاء |

### ملاحظات أمنية

**بريد حساب Microsoft مخزّن كنص صريح.** يخزّن مخزن WdConfig الخاص بوضع المطور عنوان البريد الإلكتروني لحساب Microsoft المرتبط كنص صريح. من المحتمل أن يكون قابلاً للقراءة من قبل أي عملية لديها وصول SRA.

---

## 7. XCRDAPI.dll واجهة برمجة تطبيقات توصيل المحتوى في Xbox

`XCRDAPI.dll` هو نواة إدارة المحتوى لمنصة Xbox. يتعامل مع DirectStorage والتثبيت التدريجي وإدارة الحقوق الرقمية DRM وxCloud وتخزين blob في مكتبة واحدة.

### 7.1 DirectStorage

    DStorageGetFactory
    DStorageGetMappedControlPage

تنفيذ DirectStorage الخاص بـ Xbox مضمّن في XCRDAPI، وليس SDK منفصلاً.

### 7.2 دورة حياة XVDXCrdOpenAdapter / XCrdCloseAdapter
    XCrdMount / XCrdMountContentType / XCrdUnmount / XCrdUnmountEx
    XCrdCreateXVD / XCrdDeleteXVD / XCrdResizeXVD / XCrdGrowDynamicXvd
    XCrdSetEraLaunchMapping              يربط XVD بقسم ERA قبل الإقلاع
    XCrdUpdateXvc / XCrdUpdateXvcEx
    XCrdDefragXvc / XCrdTrimXvc / XCrdTrimXvd
    XCrdRepairXvc


### 7.3 Progressive Streaming Install

    XCrdStreamingStart / XCrdStreamingStop
    XCrdStreamingQueryActiveInstanceId
    XCrdStreamingQueryInformation / InformationByPath / InformationEx
    XCrdStreamingQueryRegionInformation / ByPath
    XCrdStreamingQueryRegionSpecifiers / ByPath
    XCrdStreamingQueueInsertRegion
    XCrdStreamingQueueQueryRegionList / ByPath
    XCrdStreamingAdjustStreamingFlags
    XCrdStreamingQueryRegionIdByOffset

خط أنابيب تثبيت تدريجي كامل بقوائم أولوية. المناطق (Regions) هي أجزاء قابلة للعنونة من محتوى اللعبة.

### 7.4 XCloud Integration

    XCloudQueryFeatureBits
    XCloudSetFeatureBits

يتم التحكم بأعلام ميزات بث xCloud عبر نفس واجهة البرمجة المستخدمة للمحتوى المحلي.

### 7.5 DRM / Attestation

    XCrdQueryAttestationBlob
    XCrdQueryEncryptedInfo / XCrdQueryUnlockInfo
    XCrdIsSideloadedKeyPresent
    XCrdEnableSharedPls / XCrdSetExternalPlsMapping

### 7.6 Storage Blob System

    XCrdStorageCreateBlob / DeleteBlob / MoveBlob / CopyBlob
    XCrdStorageReadBlob / ReadBlobEx / WriteBlob / WriteBlobEx
    XCrdStorageQueryBlobAttributes
    XCrdXBlobCreate / Delete / Copy
    XCrdFindFirstBlob / FindNextBlob / FindCloseBlob

### 7.7 XVD Transfer Pipeline

    XCrdXvdXferInitialize / Uninitialize
    XCrdXvdXferStart / Stop
    XCrdXvdXferRead
    XCrdXvdXferGetResult

### 7.8 Path Systems

    XCrdXasBuildPath / XasBuildPathEx / XasKeyQueryValue   (مسارات متجر XAS App Store)
    XCrdXdsGetVolumeMapping / XdsSetVolumeMapping           (وحدات تخزين خدمة توصيل XDS)
    XCrdBuildPath / XCrdParsePath / XCrdUpdatePath
    XCrdQueryDevicePath / QueryDevicePathByPath
    XCrdSetFlatContentPath

---

## 8. xpal.dll طبقة تجريد منصة Xbox (50 تصديرًا)

واجهة برمجة غير موثقة سابقًا لهوية الأجهزة والإمكانيات وإدارة الطاقة.

### هوية الأجهزة

    XpalGetConsoleCertificate     شهادة الأجهزة
    XpalGetConsoleIdCch           معرّف جهاز الكونسول
    XpalGetConsoleSerialNumberCch الرقم التسلسلي
    XpalGetSmcFirmwareId          إصدار البرنامج الثابت لـ SMC
    XpalGetSouthBridgeType        نوع شريحة الجسر الجنوبي

### كشف الجيل / SKU

    XpalIsGen8                    Xbox One
    XpalIsGen9                    Series X/S
    XpalGetGenerationType
    XpalIsHyperV                  الهايبرفايزر نشط
    XpalIsExternalDevkit / XpalIsInternalDevkit
    XpalGetVmType
    XpalGetSystemType / XpalGetServerType / XpalGetConsoleMode


### أعلام الإمكانيات

    XpalIsCapabilityEnabled
    XpalIsCapabilityEnabledByVm
    XpalIsFactorySettingEnabled
    XpalGetFactorySettings
    XpalGetCapabilities
    XpalIsFeatureEnabled


### إدارة الطاقة

    XpalInitiateDump              تشغيل تفريغ انهيار (crash dump) عند الطلب
    XpalInitiatePowerStateToggle
    XpalInitiateSystemShutdown
    XpalSetWakeupTimer
    XpalQueryPowerToggleSource
    XpalIsInForcedCs / XpalIsTransitioningToConnectedStandby
    XpalIsSilentBootMode
    XpalNotifyForcedCsHeartbeat
    XpalIsRebootRequested
    XpalRefreshPowerChimeMode


### الإعدادات

    XpalGetXConfig / XpalSetXConfig    مخزن إعدادات Xbox (المكافئ الحديث لـ EEPROM)
    XpalSetSystemTime
    XpalSetInformation
    XpalReportUem                      تشغيل UEM (Universal Error Message)


### ERA / Title VM

    XpalQueryTitleVmInfo
    XpalWaitForTitleVmTermination
    XpalBackgroundActivityRequest

---

## 9. eracontrol.exe مدير دورة حياة قسم ERA

`C:\Windows\System32\eracontrol.exe` يعمل بحساب LocalSystem (بدء يدوي) ويدير دورة حياة قسم ألعاب ERA بالكامل. التحليل الكامل للواردات موجود في القسم 28. ملخص الواردات الرئيسية:

- `NtOpenPartition` يفتح مقبض قسم Hyper-V ERA مباشرة
- `RtlSetProcessIsCritical` يعلّم نفسه كعملية حرجة (يسبب شاشة زرقاء BSOD للنظام إذا تعطل)
- `XCRDAPI.dll` يقوم بتركيب/فك تركيب أقراص XVD الخاصة بالألعاب عبر `XCrdSetEraLaunchMapping`
- `RIMAddInputObserver` / `RIMRemoveInputObserver` يعترض مدخلات وحدة التحكم الخام لتوجيهها إلى ERA
- `XblaInitialize` يهيّئ سياق مصادقة Xbox Live للكونسول
- `LogonUserExExW` ينشئ رموز تسجيل دخول المستخدم لجلسة ERA
- `UMgrOpenProcessHandleForAccess` الوصول إلى مقبض عملية مدير المستخدم
- `PsmQueryBackgroundActivationType` حالة التنشيط في الخلفية

كما تم العثور في نفس الدليل على: `eraproxyapp.exe` (339KB)، وهو المُركِّب (compositor) في جانب SystemOS وجسر IPC بين ERA وواجهة الصدفة. التحليل الكامل للواردات في القسم 29.

---

## 10. تتبعات BlackBox ETL (N:\BlackBox\)

الدليل `N:\BlackBox\` يحتوي على تتبعات مسجّل الطيران ETW المباشر. من تحليل تتبّع مُلتقَط:

**ملاحظة:** صيغة ETL الخاصة بـ Xbox لن تُحل إلا باستخدام 'tracerp'

### مسارات شجرة المصدر الداخلية (مضمّنة في أدوات التنقيح)

    onecoreuap\xbox\xblauth\lib\authmanagerimpl.cpp
    onecoreuap\xbox\xblauth\lib\authmanagertokens.cpp
    onecoreuap\xbox\xblauth\lib\xstsauthorizer.cpp
    onecoreuap\xbox\xblauth\util\httprequest.cpp

### أطراف الاعتماد (Relying Parties) لمصادقة Xbox Live

    http://xdes.xboxlive.com/          خدمات هندسة/تطوير Xbox
    http://xboxlive.com                XBL القياسي
    http://mp.microsoft.com/           Microsoft Passport (MSA)
    http://instance.mgt.xboxlive.com   إدارة الجلسات/المثيلات

### الأعطال الملتقطة

1. **`XboxUI.exe` BEX64** واجهة لوحة المعلومات اصطدمت بتجاوز سعة مخزن مؤقت (STATUS_STACK_BUFFER_OVERRUN، `0xc0000409`) في `XboxUI.Data.dll` عند الإزاحة `0x13eb0`
2. **`MoAppHang`** تعليق تطبيق UWP للحزمة `REDACTED_GUID`

---

## 11. نتائج إضافية بارزة

### وجود WSL على Xbox

خدمتا `LxssManager` و `lxcore` موجودتان مع `LaunchProtected: 0x2` (عملية محمية) و `SeTcbPrivilege`. يعمل WSL على Xbox بثقة على مستوى نظام التشغيل، واستنادًا إلى الاستخدام فهو شبه مؤكد أنه يشغّل شيئًا ما أو على الأقل مرتبط بطريقة بسيطة بـ `Xbox.ConsoleXCloudPlayer` (عميل بث ألعاب xCloud).

wsl.exe موجود لكنه **غير قابل للقراءة**.

### ثنائيات System32 حصرية لـ Xbox

ملفات DLL بارزة غير موجودة في Windows القياسي:

- `XCRDAPI.dll` توصيل المحتوى (موثق في القسم 7)
- `XBBlackbox.dll` مسجّل الطيران (موثق في القسم 30)
- `XBCastRecv.dll` مستقبل Xbox Cast / Miracast (موثق في القسم 30)
- `XVMAudioServer.dll` خادم صوت VM عبر الأقسام
- `Xbox.Shell.Api.dll` / `Xbox.Shell.OneStoreServices.dll` واجهة برمجة الصدفة (موثقة في القسم 30)
- `XboxCommandService.dll` الأوامر/الأتمتة
- `XboxUserSim.dll` أتمتة اختبار واجهة المستخدم
- `xboxgipsynthetic.dll` / `xboxsynthetickm.dll` حقن وحدة تحكم GIP اصطناعية (موثقة في القسم 30)
- `AppXDeploymentExtensions.xbox.dll` نشر AppX خاص بـ Xbox
- `xvnapi.dll` واجهة شبكة Xbox الافتراضية
- `xbsc_xs.dll` مترجم شادر Xbox Series (موثق في القسم 16.2)

### خدمات موجودة لكن غير موثقة

- `EraControlService` دورة حياة قسم ERA
- `XvdStreamSvc` (`xnetsharedservice.exe`) بث XVD / التثبيت التدريجي
- `XUpdMgr` مدير تحديث Xbox (منفصل عن Windows Update بطريقة ما؟)
- `XSraFlt` برنامج تشغيل فلتر SRA الخاص بـ Xbox
- `Manufacturing Broker` خدمة توفير المصنع
- `TestSirepSvc` بروتوكول اختبار SIREP الداخلي
- `GameCoreController` خدمة التحكم بنواة ألعاب GDK
- `ConnectedStorage` خدمة حفظ السحابة لـ Xbox
- `VideoManagerService` إدارة مخرجات الفيديو
- `XBBlackbox` خدمة مسجّل الطيران
- `xbdiagservice` خدمة تشخيص Xbox
- `XtfRtService` خدمة وقت تشغيل XTF

برامج تشغيل إضافية قديمة/منخفضة المستوى مؤكد وجودها في سجل الخدمات (انظر القسم 11.2):

- `Zurich` برنامج تشغيل افتراضي DVB

### `xvnc` / `xvncbus` بطاقة شبكة Xbox الافتراضية

`xvnc.sys` و `xvncbus.sys` عبارة عن **حزمة NIC افتراضية**، تعداد خدمة `xvnc` يكشف:

    ROOT\xvnc\0000             NIC افتراضية جذر/حلقةloopback
    {e720983a-...}\wifi\01
    {e720983a-...}\wfd\01      Wi-Fi Direct
    {e720983a-...}\wfd_role0\01

`xvncbus` هو برنامج تشغيل ناقل WDF 1.15 يقوم بتعداد بطاقات NIC افتراضية فوق المحول اللاسلكي الفعلي. قسم ERA لا يصل إلى حزمة الشبكة مباشرة، بل يتواصل عبر `NetXVmService`، الذي يملك طبقة NIC الافتراضية `xvnc`. المعرف `{e720983a-...}` يحدد أجهزة محول Xbox اللاسلكي.

### `xviomonc.sys` عميل مراقب XVIO

برنامج تشغيل يعمل عند الإقلاع (`Start: 0x1`) يدير تركيز قسم العرض. تحليل الواردات:

    XVIO.SYS:   XvioInitialize, XvioCleanup, XvioPostMessage,
                XvioSetFocus, XvioGetCurrentPartitionId  - تصدير XVIO جديد
    VMNP.SYS:   NpSetupVmImpersonation
    xpalk.dll:  XpalIsCapabilityEnabled

`xviomonc` **لا** يتعامل مع بيانات الإطار (framebuffer)، فهو برنامج تشغيل للإشارات وإدارة التركيز فقط. `XvioSetFocus` يبدّل القسم الذي يملك تركيز العرض/الإدخال؛ `XvioGetCurrentPartitionId` يحدد القسم النشط. التقاط الإطار الفعلي يتم بواسطة `srakmd_arden.sys`.

`NpSetupVmImpersonation` من `VMNP.SYS` يسمح لبرنامج تشغيل المراقب بانتحال الهية الأمنية لقسم ERA عند الوصول إلى موارد عرض ERA عبر حدود الأقسام.

### مخازن G:\ GameDVR
ثلاثة ملفات على G:\ هي مخازن دائرية خام معينة بالذاكرة (memory-mapped) مشتركة بين ERA و SystemOS:

- `GameDVR_VideoBuffer` التقاط فيديو متداول 272MB
- `GameDVR_AudioBuffer` صوت اللعبة 16MB
- `GameDVR_AudioBuffer_SysLoopback` صوت النظام/واجهة المستخدم 3MB (تدفق منفصل)

---

## 11.1 نتائج السجل

### مرجع محرك K:\ خاص بالـ Devkit

`HKLM\SOFTWARE\Microsoft\Durango\XTF` يحتوي على مسار ثابت:

    K:\TDK\Tools\XtfJuno.dll

### `HKLM\SYSTEM\ResourcePolicyStore`

| Tier | ميزانية الذاكرة |
|------|--------------|
| `BackgroundSmall` | 40MB |
| `Background` | (خلفية قياسية) |
| `Balloon` | 5120MB |

طبقات سياسة وحدة المعالجة المركزية:

| Policy | تخصيص CPU |
|--------|---------------|
| `Paused` | 1% |
| `SoftCapLow` | 10% |
| `SoftCapFull` | 100% |
| `HardCap0` | 0% - مجمد تمامًا |

**سياسة BeanHog** (ربما ميزانية عملية اللعبة في المقدمة؟):

- الذاكرة: طبقة المقدمة
- CPU: 100%
- `DoNotKill`: true
- الأولوية: أعلى أهمية

---

## 11.2 آثار Xbox One القديمة

ثلاثة برامج تشغيل من عصر Xbox One ما تزال موجودة في سجل الخدمات في Series S. اثنان معطلان؛ واحد يعمل بنشاط.

### `Zurich` حزمة فك ترميز موالف التلفاز

`zurichs.sys` هو برنامج تشغيل Xbox One الافتراضي DVB. الحالة: **معطل**، لكن لا يزال مسجلًا.

النتيجة الرئيسية: `zurichs.sys` يستورد مخازن حلقية `XVIO.SYS`. كان موالف التلفاز مصممًا معماريًا لتسليم تدفق الفيديو المرمّز عبر مخازن حلقة الهايبرفايزر XVIO. كما استخدم الموالف `ZwUpdateWnfStateData` لنشر حالة الموالف عبر Windows Notification Facility (WNF).

### `PetraXC` جهاز التحكم بمستشعر Kinect

برنامج تشغيل أجهزة افتراضية WDF تم تحديده الآن كجهاز **KinectSensorControl**، وهو تجريد الأجهزة على مستوى النواة لمستشعر كاميرا Kinect. الحالة: **معطل حتى وصول الجهاز** (نموذج WDF للطلب عند الحضور).

خصائص بارزة:

- مبني ضد **WDF 1.11**، والذي يقابل Windows 8، مما يضع أصله في قاعدة نواة Xbox One الأصلية
- يستورد `XVIO.SYS`، مما يعني أنه يتواصل عبر ناقل مخازن حلقة الهايبرفايزر
- يعرض `\\.\KinectSensorControl` كواجهة جهاز له، ويُستهلك بواسطة `KinectMediaSource.dll` في خط أنابيب nuiservice عبر `DeviceIoControl` (انظر القسم 33)

### `pspsra.sys` جسر AMD PSP إلى SRA

الحالة: **يعمل بنشاط** (`Start: 0x0`، بدء الإقلاع). الوصول مرفوض على مستوى النواة، البرنامج مقفل ولا يمكن فحصه أكثر.

`pspsra.sys` يقع مباشرة أسفل قسم SRA في سلسلة الإقلاع كـ**جسر بين معالج أمان المنصة AMD (PSP) وطبقة SRA**. يتولى AMD PSP مصادقة fTPM وشهادة الكونسول على مستوى المعدن العاري، و`pspsra.sys` هو الجسر الذي يظهر سلسلة الثقة تلك داخل SRA. وهذا يضعه في نفس طبقة الثقة مثل `XVIO.SYS` و `XSraFlt.sys`، حيث تتم تهيئته قبل SystemOS، ويبقى معتمًا عليه، ولا يمكن الوصول إليه حتى بصلاحيات نواة كاملة.

---

## 12. أسئلة غير محلولة + برامج تشغيل

الأسئلة:

1. **موقع XVIO.SYS** غير موجود في أي نظام ملفات يمكن الوصول إليه؛ يُحمَّل بواسطة الهايبرفايزر عند الإقلاع
2. **استخدام WSL** مؤكد وجوده واستخدامه لكن دوره المحدد في نظام Xbox غير مرسوم بالكامل
3. **`XCrdXpfOp`** دالة XCRDAPI غير محددة (XPF = ؟)
4. **موقع `XSraFlt.sys` + `XRmnt.sys`** مؤكد غيابهما من جميع أنظمة الملفات القابلة للوصول؛ يُحمَّلان بواسطة نظام التشغيل المضيف بجانب XVIO.SYS
5. **`xvnc` GUID `{REDACTED_GUID}`** معرّف المحول اللاسلكي، سلسلة برامج التشغيل الكاملة غير مرسومة
6. **هدف إعادة التوجيه `S:\Shares\TitleScratch`** يتم حجبه بنشاط بواسطة نظام التشغيل في قوائم الدليل؛ يتطلب `FSCTL_GET_REPARSE_POINT` تحت طبقة cmd.exe. شبه مؤكد أنه `\Device\Xrfs\<partition-guid>` (انظر القسم 26)
7. **سطح IOCTL لـ `xvmctrl.sys`** تفريغ النواة المباشر محجوب (قيد `NoKernelDumps` في وضع التطوير بالتجزئة)؛ جدول توزيع IOCTL لم يُعدَّ بعد
8. **GUID قسم ERA** غير مكشوف عبر أي مسار سجل يمكن الوصول إليه؛ سيكون مرئيًا في تفريغ النواة (محجوب، نبحث في تجاوزات)
9. **محتويات `N:\EtwPlus\`** مخفية بنشاط بواسطة برنامج تشغيل فلتر نظام ملفات على مستوى النواة؛ قوائم الدليل ترجع فارغة رغم تأكيد نشاط الكتابة. هوية برنامج تشغيل الفلتر لم تُحدد (انظر القسم 3.2)
10. نظام التشغيل المضيف ككل، ليس من المؤكد تمامًا حتى ماذا يفعل.

برامج التشغيل:

1. **`xtcc.sys`**، على الأرجح مسؤول عن شيء متعلق بالأمان نظرًا للكم الهائل من واردات `ntoskrnl.exe` و `XVIO.sys`
2. **`FLTMGR.SYS`** مستورد بواسطة `XRmnt.sys`، `XRo.sys`

---

## 13. الإدخال/الإخراج الافتراضي والوصول عن بُعد (XVIO/SRA)

تحليل تصديرات `xboxcloudstreaming.dll` وإدخالات `CurrentControlSet\Services` في السجل يظهر تكاملًا عميقًا على مستوى النواة للاتصالات عن بُعد، باستخدام نموذج أجهزة "اصطناعية" بدلاً من محاكاة البرامج القياسية. يرى VM الخاص بـ ERA نفس الأجهزة الاصطناعية أينما جاء الإدخال (عن بُعد، USB، لاسلكي، إلخ).

### 13.1 حزمة XVIO (Virtual I/O)

يبدو أن إطار عمل XVIO هو الطريقة الأساسية لحقن أحداث على مستوى الأجهزة في SystemOS من مصادر خارجية أو عبر الأقسام.

| الخدمة | الفئة | الوظيفة |
| --- | --- | --- |
| `hvsocketxvio` | النقل | خدمة جسر تربط مقابس Hyper-V ببروتوكول XVIO. |
| `InputXVIOClient` | المنسق | يدير تعيين حزم الإدخال عن بُعد إلى عقد الأجهزة الافتراضية. |
| `xviokbdbus` / `xviomoubus` | برنامج تشغيل الناقل | يعدّد أجهزة HID افتراضية على ناقل داخلي اصطناعي. |
| `xviokbd` / `xviomou` | برنامج تشغيل الجهاز | برامج تشغيل وظيفية محددة للوحات المفاتيح والفئران الافتراضية. |

### 13.2 خط أنابيب وحدة التحكم الاصطناعية

يستغل ملف `xboxcloudstreaming.dll` الثنائي `XboxgipSynthetic.dll` لإنشاء ما تراه نظام التشغيل كأجهزة طرفية محلية متصلة فيزيائيًا.

- **محاكاة الصوت:** عبر `SyntheticController_AddAudioHeadset`، يمكن للنظام ضخ صوت شبكة عن بُعد إلى حزمة الصوت المحلية للكونسول كجهاز مرتبط بالعتاد.
- **حقن الإدخال (RIM):** استخدام Remote Input Manager (`ext-ms-win-ntuser-rim-l1-1-0.dll`) يؤكد أن جلسات xCloud واللعب عن بُعد تستخدم نفس طرق الحقن عالية الصلاحية المستخدمة في Windows Remote Desktop، وتحديدًا `InjectKeyboardInput` و `InjectPointerInput`.

### 13.3 SRA وبرامج تشغيل "Arden"

> **ملاحظة:** برنامج تشغيل `SraKmdArden` خاص بعتاد Series X/S (Arden). من المرجح أن هذا البرنامج يسمح للنظام باعتراض مخزن العرض على مستوى النواة، مما يقلل من زمن الوصول المرتبط عادة بالرسم عبر الأجهزة الافتراضية.

### 13.4 جسر HvSocket (GUID `4545ffe2-...`)

تمت مطابقة GUID الخاص بـ HvSocket غير المحدد سابقًا مع خدمة `hvsocketxvio`. هذا يؤكد أن XVIO ليس بروتوكولًا مستقلًا بل طبقة تعمل فوق ناقل المقابس الداخلي لـ Hyper-V.

هذا يشير إلى أن **قسم ERA (الألعاب)** لا يتحدث إلى الشبكة مباشرة للإدخال؛ بدلاً من ذلك:

1. يستقبل **SystemOS** حزم الشبكة عبر `XboxNetApiSvc`.
2. يعالج **`xboxcloudstreaming.dll`** التدفق.
3. يمرر **`hvsocketxvio`** بيانات الإدخال الخام عبر حد القسم عبر **HvSocket**.
4. تحقن طبقة الهايبرفايزر/المضيف ذلك في القسم الهدف كحدث عتاد.

---

## 14. وحدة التخزين M:\ | بنية الطبقات العلوية (Overlay)

M:\ (المسماة "System OS Misc") تعمل كـ**وحدة تخزين طبقات علوية**، وهي شجرة تحتوي مكونات تُركَّب فوق صورة C:\ الأساسية. هذه البنية تسمح لـ Microsoft بشحن صورة نظام تشغيل واحدة وتطبيق مجموعات ميزات محددة عبر طبقات علوية عند وقت التركيب.

### 14.1 بنية وحدة التخزين

    M:\
    ├── Catalog000-003.bin     كتالوجات تكامل كود خاصة بوحدة التخزين
    └── windows\
        ├── system32\
        │   ├── drivers\       برامج تشغيل النواة
        │   ├── ht\            دعم Kinect (انظر القسم 33)
        │   └── [~120 DLLs]    مكونات مساحة المستخدم
        ├── SystemApps\        تطبيقات النظام
        ├── DefaultApp\
        ├── Fonts\
        ├── Speech_OneCore\
        ├── textinput\
        └── WebManagement\

### 14.2 روابط نظام الملفات الرمزية

يشير C:\ إلى مكونات M:\ عبر روابط NTFS الرمزية. توجد الروابط على مستويين:

**مستوى برامج تشغيل System32:**

    C:\Windows\System32\drivers\srakmd_arden.sys -> M:\windows\system32\drivers\srakmd_arden.sys

**مستوى دليل Windows**

    C:\Windows\DefaultApp    -> M:\Windows\DefaultApp
    C:\Windows\Fonts         -> M:\Windows\Fonts
    C:\Windows\SystemApps    -> M:\Windows\SystemApps
    C:\Windows\WebManagement -> M:\Windows\WebManagement

طبقة M:\ العلوية أكثر انتشارًا من مجرد استبدال برنامج تشغيل/مكتبة DLL، إذ أن أدلة فرعية أساسية لنظام Windows بما في ذلك مخزن الخطوط وتطبيقات النظام وواجهة إدارة الويب بأكملها مقيمة على M:\ بالكامل. ربما يعني هذا أن طبقة علوية محددة تتحكم ليس فقط في برامج تشغيل GPU والالتقاط، بل في طبقة تطبيقات النظام وواجهة الصدفة بالكامل إلى حد ما.

لم يكتمل تعداد تكراري كامل لروابط C:\ الرمزية التي تشير إلى M:\.

### 14.3 برامج تشغيل خاصة بالعتاد (M:\windows\system32\drivers\)

| برنامج التشغيل | الحجم | الغرض |
|---|---|---|
| `srakmd_arden.sys` | 274KB | التقاط KMD الخاص بـ SRA -> أداة التقاط إطارات خاصة بعتاد Arden |
| `acpi.sys` | 873KB | ACPI -> بناء خاص بالعتاد (أكبر من العام) |
| `spaceport.sys` | 1MB | منفذ التخزين -> تشفير XVD + فحص الترخيص |
| `spacedump.sys` | 304KB | برنامج تشغيل تفريغ التخزين |
| `buttonconverter.sys` | 90KB | تحويل HID للطاقة/الإخراج -> أحداث الكونسول |
| `qwavedrv.sys` | 90KB | جودة الخدمة/برنامج تشغيل جودة الشبكة |
| `acpiex.sys` | 181KB | امتدادات ACPI |
| `AcpiDev.sys` | 61KB | امتدادات أجهزة ACPI |
| `acpitime.sys` | 57KB | مؤقت ACPI |

**النتيجة:** `XSraFlt.sys` غائب عن برامج تشغيل M:\ وكذلك C:\. وهو غير مخزن على أي وحدة تخزين بنظام ملفات يمكن الوصول إليه، مما يشير إلى أنه يُحمَّل بواسطة نظام التشغيل المضيف عند الإقلاع بجانب `XVIO.SYS` و `FLTMGR.sys`.

### 14.4 مكونات مساحة مستخدم خاصة بالعتاد (M:\windows\system32\)

ملفات DLL/EXE بارزة فريدة في M:\:

**حزمة GPU / Shader:**

- `umd12ddi_arden.dll` (1.56MB)  برنامج تشغيل D3D12 لوضع المستخدم DDI، عتاد Arden
- `umd12ddi_d.dll` (1.5MB)  D3D12 UMD، بناء مُجهز للتنقيح/مُخترق بـ PIX
- `umd12ddi_i.dll` (1.14MB)  D3D12 UMD، بناء علبة/احتياطي
- `newbe_xs.dll` (26MB)  الواجهة الخلفية لمترجم شادر GPU "NewBe" Arden
- `xbsc_xs.dll` (3.9MB)  الواجهة الأمامية لمترجم شادر Xbox Series
- `dxcompiler_xs.dll` (17.8MB)  مترجم HLSL لـ Xbox Series
- `dxbc2dxil_xs.dll` (2.9MB)  محول DXBC إلى DXIL بايت كود
- `pixrtddi.dll` (679KB)  PIX render/debug DDI

**سلسلة أدوات المطور / PIX:**- `VsGraphicsRemoteEngine.exe` (4.75MB) محرك بعيد لتنميط GPU من PIX
- `VsGraphicsCapture.dll` (225KB) التقاط إطارات PIX
- `VsGraphicsExperiment.dll` (327KB) إطار تجارب PIX
- `DXCaptureReplay.dll` (18MB) محرك إعادة تشغيل التقاط GPU
- `DXCap.exe` (1.19MB) أداة التقاط GPU
- `DXToolsMonitor.dll` / `DXToolsOfflineAnalysis.dll` / `DXToolsReporting.dll` حزمة تحليل PIX
- `DXGIDebug.dll` (151KB) طبقة تصحيح أخطاء DXGI
- `d3d12SDKLayers.dll` (4.8MB) طبقات التحقق/تصحيح الأخطاء D3D12
- `d3d11_3SDKLayers.dll` (1.19MB) طبقات تصحيح أخطاء D3D11
- `d2d1debug3.dll` (618KB) طبقة تصحيح أخطاء D2D
- `VSD3DWARPDebug.dll` (155KB) إصدار تصحيح أخطاء التنقيط البرمجي WARP
- `plmdebug.exe` (204KB) مصحح أخطاء PLM (دورة حياة العملية)

**البث / الوصول عن بُعد:**

- `rdpbase.dll` (1.8MB) مكتبة RDP الأساسية
- `rdpserverbase.dll` (2.3MB) قاعدة خادم RDP
- `XboxDevService.exe` (3.7MB) مضيف خدمة تطوير Xbox
- `XboxDevService.ProxyStub.dll`

**حزمة التواصل / الإضافات:**

- `DiscordPlugin.dll` (139KB) تكامل Discord
- `TwitchPlugin.dll` (639KB) تكامل بث Twitch

**أخرى بارزة:**

- `XboxSyntheticKM.dll` (36KB)
- `xrmntcl.exe` (90KB) عميل تحميل وقت تشغيل Xbox
- `xtfupdateT_s_i.dll` (98KB) ؟
- `xtcapi.dll` (57KB) واجهة برمجة XTC (اتصالات عناوين Xbox؟)
- `wusys.dll` (308KB) تكامل نظام Windows Update

---

## 15. حزمة GPU | خط أنابيب تجميع التظليل

خط أنابيب تجميع التظليل الكامل لجهاز Xbox Series S/X موجود على M:\ وغائب عن C:\. لا يمكن تجميع أي تظليل بدون تركيب التراكب الخاص بالعتاد.

### 15.1 `newbe_xs.dll`

ملف DLL بحجم 26 ميجابايت. الواجهة الخلفية لمترجم تظليل Arden GPU. يحتوي على 6 تصديرات فقط:

    NB_CompileShader          compile individual shader stage
    NB_CompilePipeline        compile full pipeline state object
    NB_CreateOptimizer        create register allocator / instruction scheduler
    NB_GetRegPressure         register pressure analysis (PIX-facing)
    NB_GetShaderStats         hardware shader statistics
    NB_CreatePixDwarfApi      generate DWARF debug info for GPU shaders

قد يشير قسم `.pass` إلى خط أنابيب تمريرات بأسلوب LLVM. يولد `NB_CreatePixDwarfApi` معلومات تصحيح أخطاء التظليل على مستوى المصدر لـ PIX.

### 15.2 `xbsc_xs.dll`

41 تصديرًا تغطي واجهة برمجة الترجمة الكاملة:

    XBSC_PipelineCompile / XBSC_GetPipelineCompileOutput
    XBSC_CompileRootSignature / XBSC_GetCompiledRootSignature
    XBSC_AssembleShader / XBSC_GetAssembledShader
    XBSC_DisassembleHwPipeline / XBSC_DisassembleHwPipelineWithCallback
    XBSC_DisassembleRawShader / XBSC_GetDisassembly
    XBSC_GetRegPressure / XBSC_GetShaderStats / XBSC_DumpShaderStats
    XBSC_CompressBuffer / XBSC_DecompressBuffer          (shader cache compression)
    XBSC_Serialize* / XBSC_Deserialize*                  (pipeline state serialization)
    SCCompileMultiShadersXbox / SCDumpHwShader*           (batch compilation)
    SC_ConvertRootSignatureToSCInputs

تحتوي قسما PE باسم `_mmddu` و `_MMDDT0` على **بيانات برنامج التشغيل المعتمدة على الجهاز من Microsoft**، وهي جداول بنية دقيقة للعتاد مدمجة في المترجم (زمن انتظار التعليمات، طوبولوجيا ملف السجلات، أعداد وحدات التنفيذ الخاصة بـ Arden).

### 15.3 `dxcompiler_xs.dll`

حجمه 17.8 ميجابايت. نسخة Xbox Series من مترجم DXC HLSL. يحتوي على 4 تصديرات:

    DxcCreateInstance / DxcCreateInstance2   standard DXC factory (compatible with public API)
    CreateXdxrCompiler / CreateXdxrCompiler2 Xbox DXIR compiler (Xbox-specific IR format)

### 15.4 `dxbc2dxil_xs.dll` محول Bytecode

الحجم 2.9 ميجابايت. تصدير واحد:

    SCDxil_ConvertDxbcToDxil   convert DX11 DXBC bytecode to DXIL for DX12 pipeline

يتيح تشغيل تظليلات DX11 المتوافقة مع الإصدارات السابقة على خط أنابيب Arden الخاص بـ DX12 فقط.

### 15.5 سلسلة تجميع التظليل الكاملة

    Game/App submits HLSL or legacy DXBC shader
                ↓
        [HLSL path]                    [DXBC legacy path]
    dxcompiler_xs.dll                dxbc2dxil_xs.dll
    (DxcCreateInstance -> DXIL)       (SCDxil_ConvertDxbcToDxil -> DXIL)
                ↓                             ↓
                └──────────┬──────────────────┘
                            ↓
                xbsc_xs.dll (XBSC_PipelineCompile)
                calls newbe_xs.dll NB_ backend
                uses _MMDDT0 Arden microarch tables
                            ↓
                umd12ddi_arden.dll
                (submits compiled ISA via D3D12 DDI)
                uses xg_xs.dll for texture layout
                            ↓
                srakmd_arden.sys (kernel)
                XvioGetReservedMemory -> hypervisor carve-out RAM
                zero-copy framebuffer -> ERA partition

---

## 16. `xg_xs.dll` مكتبة تخطيط نسيج الرسومات Xbox

موجود على **C:\** (وليس M:\). يحتوي على 27 تصديرًا تغطي تبليط النسيج، وتخطيط BVH لتتبع الأشعة، وضغط DCC.

### 16.1 سطح التصدير

    XGComputeBufferLayout
    XGComputeTexture1DLayout / 2DLayout / 3DLayout
    XGComputeOptimalSwizzleMode / OptimalDepthStencilSwizzleMode
    XGComputeTileShape
    XGSuggestSwizzleMode
    XGValidateDepthStencilSwizzleMode / XGValidateDescriptor
    XGCreateTexture1DComputer / 2DComputer / 3DComputer
    XGCreateTextureComputer / XGCreateTextureComputerFromDescriptor
    XGCreateBVHComputer / XGCreateBVHComputer2       ray tracing BVH layout
    XGEncodeDCC / XGDecodeDCC / XGDecodeDCCSurface   AMD Delta Color Compression
    XGShuffleTextureBufferForDirectStorage           GPU-side texture tiling for DirectStorage
    XGSetHardwareVersion                             configure for Series S vs Series X memory layout
    XGInitializeLibrary / XGTerminateLibrary
    XGEnableExclusiveLocking / XGEnterExclusiveLock / XGLeaveExclusiveLock

### 16.2 النتائج الرئيسية

**تخطيط BVH لتتبع الأشعة خاص بالعتاد.** يكشف `XGCreateBVHComputer2` عن واجهة برمجة تخطيط BVH من الجيل الثاني، مما يشير إلى أن بنية Arden لها تنسيق عقد BVH مميز يختلف عن DXR العام.

**ضغط AMD DCC مكشوف.** يطبق `XGEncodeDCC` / `XGDecodeDCC` ضغط ألوان دلتا من AMD، وهو ضغط المخزن الإطاري غير المفقود المستخدم في وحدات معالجة الرسومات RDNA. `XGDecodeDCCSurface` هو واجهة البرمجة التي يستخدمها PIX عند قراءة المخازن الإطارية الملتقطة والمضغوطة بتقنية DCC.

**تبليط DirectStorage.** ينفذ `XGShuffleTextureBufferForDirectStorage` عملية إعادة الترتيب من جانب GPU التي تحول تخطيط النسيج على القرص إلى تنسيق تبليط عتاد Arden أثناء فك ضغط GPU، مما يتيح التحميل المباشر إلى VRAM بدون نسخ.

**`XGSetHardwareVersion` يتحكم في جميع خوارزميات التخطيط.** تحتوي المكتبة على تطبيقات تخطيط لعدة مراجعات عتاد. استدعاء `XGSetHardwareVersion` باستخدام معرّف Series S مقابل Series X ينتج نتائج تبليط مختلفة تعكس اختلاف عرض ناقل الذاكرة وهندسات الذاكرة المؤقتة.

### 16.3 قسم بيانات البناء `.xbld`

يحتوي `xg_xs.dll` على قسم PE باسم `.xbld` غائب عن جميع ملفات Xbox الأخرى، مما يشير إلى أنه نشأ من خط أنابيب بناء CI منفصل خاص بـ GDK وليس من نظام بناء Xbox OS. نظام بناء نظام التشغيل يصفر الطوابع الزمنية ويزيل أقسام البيانات الوصفية؛ بينما لا يفعل ذلك GDK CI.

    _xbld_edition_build         = GXDK, 0x65F41B62
    _xbld_edition_full_productbuild = GXDK, 10.0.26100.7010
    _xbld_edition_sdktype       = GXDK, 260400
    _xbld_edition_name          = GXDK, April 2026 GXDK
    _xbld_edition_mscver        = GXDK, 193833145.100

قيمة `edition_name` **"April 2026 GXDK"** تسبق الإصدار العام لإصدار SDK هذا (وقت كتابة هذا النص هو 9 مارس 2026)، مما يؤكد أن نظام التشغيل التجاري يُشحن بمكونات GDK مبنية على دورة SDK التالية غير المعلنة. يتبع إصدار `sdktype=260400` النمط `YYMMRR` (السنة/الشهر/المراجعة).

الطابع الزمني `edition_build` ذو القيمة `0x65F41B62` يُفك إلى **13 مارس 2024**، أي قبل أكثر من عام من تاريخ بناء نظام التشغيل (12 فبراير 2026)، مما يشير إلى أن خوارزميات تخطيط النسيج ظلت مستقرة وغير معدلة عبر 5 دورات إصدار على الأقل من GDK.

يعرّف `mscver=193833145.100` المترجم بأنه **MSVC 19.38** (Visual Studio 2022 17.8.x).

### 16.4 استنتاج خط أنابيب البناء (UUP؟)

    GDK CI pipeline builds xg_xs.dll (with .xbld metadata intact)
                ↓
        ┌─────────────────────────┐
        ↓                         ↓
    Xbox OS image ingests       April 2026 GDK SDK package
    artifact directly           ships same binary to developers
        ↓
    Ships on every retail console

هذا يعني أن `xg_xs.dll` على وحدات التحكم التجارية مطابق بايتًا ببايت لما يتسلمه المطورون في GDK. التحقق من التجزئة مقابل إصدار GDK العام لشهر أبريل 2026 (عند توفره) سيؤكد ذلك.

---

## 17. نموذج نزاهة الكود القائم على الفهرس (Trust-by-Catalog)

### 17.1 تنسيق حاوية PE

ملفات `Catalog*.bin` على كل وحدة تخزين هي **ملفات PE32+ قابلة للتنفيذ بنظام فرعي `0x11`** ("فهرس كود Xbox")، وهو نظام فرعي غير موثق وغير موجود في أي وثائق عامة. الخصائص الرئيسية لترويسة PE:

    Magic:          PE32+ (64-bit)
    Subsystem:      0x11  ("Xbox Code Catalog", obtained from strings inside MSVC link.exe)
    Entry point:    0 (never executed)
    Code size:      0 (no executable code)
    DLL Chars:      IMAGE_DLLCHARACTERISTICS_DYNAMIC_BASE
                    IMAGE_DLLCHARACTERISTICS_FORCE_INTEGRITY  <- critical
                    IMAGE_DLLCHARACTERISTICS_NX_COMPAT
    Sections:       1 unnamed read-only section (raw payload)

أما بخصوص كيفية عمل هذه الأشياء فلست متأكدًا، فجهاز Xbox One

### 17.2 سلسلة الثقة

    Hypervisor/Host OS validates Catalog*.bin PE Authenticode signature at boot (FORCE_INTEGRITY)
                ↓
    Catalog payload contains hashes of protected binaries on that volume
                ↓
    Code Integrity checks each binary's hash against catalog at load time
                ↓
    Individual binaries carry no Authenticode signatures of their own

هذا نموذج **الثقة عبر الفهرس**. توقيع Microsoft واحد يغطي أعدادًا ضخمة من الملفات لكل وحدة تخزين. الملفات الثنائية الفردية وعلى الأرجح أنواع ملفات أخرى غير موقعة؛ وسلامتها مضمونة من خلال عضويتها في الفهرس.

**عدد الإدخالات والأحجام:**

| وحدة التخزين | الفهرس | حجم الحمولة | الإدخالات (÷32) |
|---|---|---|---|
| C:\ | Catalog000.bin | 5,533,696 bytes | 172,928 |
| C:\ | Catalog001.bin | 253,952 bytes | 7,936 |
| C:\ | Catalog002.bin | 57,344 bytes | 1,792 |
| C:\ | Catalog003.bin | 176,128 bytes | 5,504 |
| M:\ | Catalog000.bin | 5,537,792 bytes | 173,056 |
| M:\ | Catalog001.bin | 258,048 bytes | 8,064 |
| M:\ | Catalog002.bin | 61,440 bytes | 1,920 |
| M:\ | Catalog003.bin | 180,224 bytes | 5,632 |

طول حمولة كل فهرس (داخل قسم PE) يقبل القسمة بالضبط على 32 دون باقٍ، ولا يقبل القسمة باستمرار على 36 أو 40 أو أحجام سجلات شائعة أخرى. هذا يشير بقوة إلى أن الحمولة عبارة عن مصفوفة مسطحة من **سجلات بحجم 32 بايتًا**.

**خوارزمية التجزئة:** لم يتم العثور على تجزئات SHA-256 و SHA-1 للملف الكامل للملفات الثنائية المعروفة في الفهارس، مما يستبعد التجزئة البسيطة للملف الكامل. التنسيق الأكثر ترجيحًا هو **تجزئات صفحات Authenticode**، وهي معيار Windows CI حيث يتم تجزئة كل صفحة بحجم 4KB محاذاة من الأقسام المعيّنة للملف PE بشكل فردي. هذا سينتج إدخالًا واحدًا بحجم 32 بايتًا (SHA-256) لكل صفحة لكل ملف، مما يفسر أعداد الإدخالات الكبيرة (172,928 إدخالًا لـ C:\ وحدها).

**الترتيب:** الحمولة غير مرتبة حسب قيمة التجزئة. لم يتم تحديد مخطط الترتيب، والاحتمالات تشمل الترتيب حسب تجزئة مسار الملف، أو حسب حزمة التثبيت، أو حسب إزاحة الصفحة داخل مجموعة ملفات وحدة التخزين، أو حتى حسب بعض خصائص NTFS.

**بدون ترويسة:** أول 128 بايتًا من الحمولة لا تحتوي على أي توقيع ASCII معروف، ولا حقول أعداد صغيرة قد تشير إلى عدد أو إصدار، ولا بنية متسقة مع ترويسة قياسية. تبدأ مصفوفة التجزئة عند البايت 0 من الحمولة دون أي تمهيد.

### 17.3 الإنفاذ عند وقت التحميل فقط

الإنفاذ في نماذج نزاهة الكود هو **وقت التحميل فقط**. بمجرد اجتياز ملف ثنائي للتحقق من تجزئة الفهرس وتعيين الصفحات في الذاكرة، لا يكون لـ CI أي دور آخر. إن كان HVCI (نزاهة الكود المحمية بالهايبرفايزر) مفعلًا على SystemOS، فسيغلق نافذة TOCTOU (وقت الفحص إلى وقت الاستخدام) الناتجة من خلال جعل صفحات الكود المحمّلة للقراءة فقط على مستوى جدول صفحات الهايبرفايزر. **تم تأكيد إيقاف HVCI على SystemOS**، `IsSecureKernelRunning = 0x0` (انظر القسم 18). لذلك نافذة TOCTOU موجودة.

### 17.5 مكونات نظام التشغيل المضيف

تم تأكيد غياب برنامجي تشغيل من جميع وحدات التخزين القابلة للوصول ويتم تحميلهما مباشرة بواسطة نظام التشغيل المضيف قبل تهيئة SRA:

- `XVIO.SYS` نواة الإدخال/الإخراج الافتراضية Xbox (لا يوجد إدخال خدمة في السجل، وغير موجود على أي وحدة تخزين)
- `FLTMGR.sys` مدير عوامل التصفية
- `XSraFlt.sys` مرشح SRA (يوجد إدخال خدمة، ولا يوجد ملف مقابل على أي وحدة تخزين)

توجد هذه المكونات بالكامل خارج نموذج الثقة الخاص بالفهرس. لا يمكن التلاعب بها حتى مع وصول كامل إلى نواة SystemOS، لأنها تُعيّن بواسطة محمل الإقلاع قبل أن يبدأ HostOS (الأصل لنظام SystemOS) في التحميل.

المعلومات حول مكونات Xbox One [يمكن العثور عليها هنا](https://xboxoneresearch.github.io/wiki/boot/vbi/)، ومع ذلك لا يمكنني الجزم تمامًا بأن HostOS لم يتغير حتى الآن.

---

## 18. حالة HVCI

> **الأثر:** مع إيقاف HVCI، تكون نزاهة الكود وقت التحميل فقط. بمجرد تعيين ملف ثنائي في الذاكرة، لا يوجد إنفاذ على مستوى العتاد يمنع التعديل في الذاكرة. بالتالي، نافذة TOCTOU الموصوفة في القسم 17.3 مفتوحة. الحدود الأمنية المقصودة تظل معتمدة كليًا على عدم تواصل SystemOS مع ERA (GameOS).

`HKLM\SYSTEM\CurrentControlSet\Control\DeviceGuard\Scenarios\KeyGuard\Status`

    IsSecureKernelRunning = 0x0

النواة الآمنة (VTL1) غير قيد التشغيل على SystemOS، مما يؤكد أن HVCI لا يمكن أن تكون مفعلة. هذه مقايضة أداء مقصودة، لا ضريبة VTL1 على نشاط النواة في حلقة اللعبة. الحدود الأمنية هي قسم الهايبرفايزر نفسه، وليست حماية الذاكرة داخل القسم. لذلك نموذج نزاهة الكود (القسم 17) هو وقت التحميل فقط دون حماية TOCTOU.

---

## 19. مساحة أسماء `sevpipe` للـ Hypervisor IPC

مساحة أسماء أجهزة أنابيب Windows المسمّاة مخصصة (`\\.\sevpipe\`) تعمل كالعمود الفقري الأساسي للاتصال بين العمليات وعبر الأقسام الخاص بـ Xbox. ليست بنية هايبرفايزر على مستوى البروتوكول، بل دلالات أنابيب Windows المسمّاة القياسية في الأساس، مسجلة تحت مساحة أسماء أجهزة مخصصة لإخفائها عن أدوات تعداد الأنابيب العادية.

### 19.1 جرد الأنابيب الكامل

    EtxForwarder                  <- telemetry data
    EtxForwarderToUploaderControl <- telemetry control
    XrfsPipe                      <- cross-partition filesystem
    ERASwapChainPipe              <- ERA framebuffer (dynamic)
    ERAPresentPipe                <- ERA present signals (dynamic)
    XvioAudioPipe                 <- ERA audio (dynamic)
    XvioAudioEventPipe            <- ERA audio events (dynamic)
    XboxOneAudioStatePipe         <- system audio state
    XTF_SYSTEM_TO_TITLE           <- XTF command channel (dynamic)
    XTF_TITLE_TO_SYSTEM           <- XTF response channel (dynamic)
    CloudStreamingServer          <- xCloud (dynamic)
    \SEVPipe\epmapper             <- Xbox RPC endpoint mapper
    \SEVPipe\epmapperX            <- extended RPC endpoint mapper

الأنابيب الديناميكية موجودة فقط عندما يكون ERA نشطًا، أو جلسة XTF قيد التشغيل، أو بث xCloud نشطًا.

### 19.2 خريطة التحكم بالوصول

    EtxForwarder                  <- DevToolsUser WRITE 
    EtxForwarderToUploaderControl <- DevToolsUser WRITE 
    XrfsPipe                      <- SYSTEM only 
    ERASwapChainPipe              <- SYSTEM only 
    ERAPresentPipe                <- SYSTEM only 
    XvioAudioPipe                 <- SYSTEM only 
    XTF_SYSTEM_TO_TITLE           <- SYSTEM only 

### 19.3 خط أنابيب القياس عن بُعد

    Process calls EtxEventWrite()
        ↓
    EtwPlus.dll
        ↓ writes to
    \\.\pipe\EtxUploader
        ↓
    EtwUploader.exe (PID 1808, SYSTEM)
        ↓ forwards to
    \\.\sevpipe\EtxForwarder          <- data
    \\.\sevpipe\EtxForwarderToUploaderControl  <- control
        ↓
    NetworkTransferManagerService.exe (PID 2040, SYSTEM)
        ↓
    [unknown endpoint, dynamic library load]
        ↑
    DevToolsUser can inject at EtxForwarder and control pipe

`EtwPlus.dll` خاص بـ Xbox (`FileDescription: Xbox ETW Plus API`)، الإصدار `10.0.26100.7010`. من المحتمل أن تكون تصديرات الإيقاف/الاستئناف مجرد كعب على الإصدارات التجارية، حيث تشترك ثلاثة تصديرات في نفس RVA.

### 19.4 التقاط شاشة RTSP من videoserver.exe (على الأرجح بقايا من [Xbox Dev Mode Companion](https://apps.microsoft.com/detail/9nblggh519cp))

المنفذ: 11442 (مثبت في الملف الثنائي). التبعيات:

    Windows.Xbox.Graphics.Display.Internal.DisplayManager
    Windows.Xbox.System.Internal.GameStreaming.GameStreamingAgent
    Windows.Xbox.Media.Capture.ApplicationClipShell

**النتيجة الرئيسية:** لا يبدو أنه يعمل بشكل صحيح. لم يتم العثور على طريقة للوصول إلى دفق الفيديو من داخل وحدة التحكم أو خارجها.

مسارات/علامات مثبتة:

    DisableXboxDevToolsTelemetry     <- env var to suppress its telemetry
    VideoServerMaxPacketSize         <- configurable via env var
    EnableVideoServer                <- WdConfig flag confirmed here
    OSDATA\...\DevkitProperties      <- reads devkit properties at runtime

### 19.5 مخطط OneSettings / Windows Update

يحمل Xbox مخطط استهداف Windows Update الكامل بما في ذلك إدخالات استهداف `XBOXMOBILE` ومسارات خلية السجل `WCOS`، مما يؤكد أن Xbox Series S يعمل على أساس Windows Core OS (WCOS) المشترك مع HoloLens وSurface Hub. نظام التشغيل هو نسخة Windows 11 24H2 معدلة بشكل خفيف، وليس نظام تشغيل منصة مبنيًا لغرض محدد.

---

## 20. طوبولوجيا أقسام الهايبرفايزر

`HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Virtualization\HvSocket\Addresses`

    LocalAddress  = {REDACTED_GUID}  SystemOS partition GUID
    ParentAddress = {REDACTED_GUID}  null parent

يعتقد SystemOS أنه **القسم الجذر** (وهذا غير صحيح، Host OS هو الجذر). قسم لعبة ERA هو تابع لـ SystemOS. معرّف GUID لقسم ERA غير مكشوف لـ SystemOS عبر أي مسار سجل يمكن الوصول إليه، وقد يكون عشوائيًا.

### نقاط نهاية Wildcard عبر الأقسام في HvSocket

`HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Virtualization\HvSocket\WildcardDescriptors`

أربعة معرّفات GUID للخدمات تم حلها عبر حساب SID خدمة SHA1:

| GUID | الخدمة | الغرض |
|------|---------|---------|
| `REDACTED_GUID` | DiagTrack | أنبوب القياس عن بُعد 1 |
| `REDACTED_GUID` | DiagTrack | أنبوب القياس عن بُعد 2 |
| `REDACTED_GUID` | RpcSs | RPC بين الأقسام |
| `REDACTED_GUID` | EventLog | إعادة توجيه الأحداث عبر الأقسام |

DiagTrack و RpcSs و EventLog مواطنون من الدرجة الأولى عبر الأقسام. يتم نقل قياس أداء اللعبة واستدعاءات RPC والأحداث من ERA إلى SystemOS عبر قنوات مقبس هايبرفايزر مخصصة غير مرئية لأي شيء يعمل داخل ERA.

---

## 21. إعدادات الرسومات

`HKLM\SYSTEM\CurrentControlSet\Control\GraphicsDrivers`

    WddmVersion_Max = WddmVersion_Min = 0x9C4  (WDDM 2.5) pinned, not negotiated
    DisableCcdDatabase                = 1
    DisableHpdHandling                = 1
    DisableUsingMonitorPowerForSimulatedMonitor = 1
    DirectFlipMemoryRequirement       = 0x40  (64MB)
    PinnedMemoryLimit                 = 0x59  (89MB)
    AdapterMPO_3                      = 1    MPO tier 3 enabled

إصدار WDDM مثبت وليس تفاوضيًا، وخط أنابيب العرض مملوك للبرنامج الثابت والهايبرفايزر، ولا يشارك WDDM في معالجة الشاشات. طبقة MPO 3 (`AdapterMPO_3`) هي الطريقة التي يتم بها دمج إطار لعبة ERA وواجهة SystemOS دون نقل برمجي بين الأقسام: كل سطح يشغل طبقة تراكب أجهزة منفصلة.

---

## 22. WdApp.exe مدير الحزم وأداة دورة حياة التطبيقات

`J:\tools\WdApp.exe` هو مدير حزم كامل ومدير دورة حياة تطبيقات لمنصة تطبيقات Xbox. سطح الأوامر الكامل:| الأمر | الغرض |
|---------|---------|
| `install` | بث حزمة مبنية من خادم ويب أو مشاركة شبكة أو مسار محلي |
| `register` / `unregister` | تسجيل/إلغاء تسجيل حزم التطبيقات ذات الملفات المفككة |
| `registerdrive` | تسجيل جميع التطبيقات على محرك أقراص كامل دفعة واحدة |
| `registernetworkshare` | التثبيت من مشاركة شبكة UNC مع بيانات اعتماد اختيارية |
| `registerscratch` | التسجيل من محرك الأقراص المؤقت الخاص بالمطور |
| `registertitlescratch` | التسجيل من محرك الأقراص المؤقت لعناوين ERA |
| `launch` | الإطلاق عبر AUMID أو مسار ملف تنفيذي أو URI |
| `terminate` / `suspend` | إيقاف أو تعليق تطبيق قيد التشغيل |
| `uninstall` | إلغاء تثبيت تطبيق أو أجزاء منه |
| `list` | سرد جميع التطبيقات المسجلة |
| `listdlc` | سرد المحتوى القابل للتنزيل (DLC) المثبت |
| `move` / `copy` | نقل أو نسخ حزمة |
| `movedrive` / `copydrive` | نقل أو نسخ جميع الحزم على محرك أقراص |
| `applyconfig` | تشغيل نظام تشغيل ألعاب ERA بالإعدادات المحددة أو ملف `game.config`/`.xvd` |
| `queryconfig` | طباعة رقم الإصدار المكوّن من 4 أجزاء لنظام تشغيل الألعاب قيد التشغيل |
| `queryversioninfo` | الاستعلام عن إصدار نظام تشغيل الألعاب لحزمة معينة |
| `collectxip` | جمع تتبع XIP |
| `lastgamedetails` | استرجاع تفاصيل آخر لعبة تم تشغيلها |
| `installkey` | تثبيت مفتاح على وحدة التحكم |
| `installplan` | تثبيت خطة على وحدة التحكم |
| `overlayfolder` | إدارة مجلدات تراكب الحزم |

### نتائج ملحوظة

**`applyconfig [game.config | ERA.xvd]`** تحكم مباشر في إقلاع قسم ERA من سطر الأوامر. يقبل إما ملف صورة قرص XVD بامتداد `.xvd` أو ملف إعدادات `game.config`. عند تشغيله بدون وسائط، يقوم بتشغيل نظام تشغيل الألعاب المستخدم مؤخرًا. على نظام لا يحتوي على سياق لعبة سابق، يُرجع `0x87E50002` (منشأة ERA، لم يتم العثور على XVD).

**`/drive=Retail`** يقبل أمر `install` القيم `Retail` و`Development` و`Ext1-Ext7` كمحددات محرك أقراص هدف، مما يسمح بتثبيت الحزمة مباشرة إلى قسم التخزين بالتجزئة من غلاف المطور.

**`/WaitToExit`** عند استخدامه مع `launch` يجعل WdApp يمتلك العملية المُطلقة كأصل ويلتقط رموز الخروج. ترفض تطبيقات النظام ذلك مع `0x8D160121` (منشأة Xbox PLM، أصل دورة حياة خاطئ). الإطلاق بدون `/WaitToExit` ينجح حيث تحتفظ ShellCoreService بملكية دورة الحياة.

**ترميز AUMID في `launch`** تتطلب معرفات AUMID لتطبيقات النظام ترميز base64 مطابقًا للنمط المستخدم في نصوص QuickActions في `.xboxunattend`:```
WdApp.exe launch <base64(FamilyName!AppId)>

23. واجهة برمجة تطبيقات REST لبوابة الجهاز

يخدم خادم الويب لبوابة الجهاز (WebManagement.exe, PID 2344) واجهته الأمامية من M:\windows\WebManagement\www\default\. المخطط الكامل لواجهة برمجة تطبيقات REST موثق في js\RestDocumentation.json (40 كيلوبايت).

المصادقة: مصادقة HTTP الأساسية عبر منفذ HTTPS 11443. بيانات الاعتماد هي اسم مستخدم بوابة الجهاز ورقم PIN المحددان أثناء تفعيل وضع المطور.

مساحات أسماء واجهة برمجة التطبيقات

علامات التقييد

تحمل عدة نقاط نهاية علامات تقييد تُعطّلها على وحدات تحكم وضع المطور بالتجزئة:

تفريغ العمليات الحية في وضع المستخدم (/api/debug/dump/usermode/live?pid=<pid>) هو nonRestrictable وينجح في وضع المطور بالتجزئة.

شجرة مصادر بوابة الجهاز


24. قائمة العمليات الحية

يتم الحصول عليها عبر GET /api/resourcemanager/processes. عمليات مختارة بارزة:

ثلاث نسخ من xnetsharedservice.exe (PIDs 2032, 2764, 2844) تعمل في وقت واحد تحت SYSTEM، مما يشير إلى وجود نسخ منفصلة لجسر الشبكة لقنوات مختلفة بين الأقسام.

مجموعة عمل eracontrol.exe البالغة 991KB مع عدم تشغيل أي لعبة تؤكد أنه مدفوع بالأحداث بالكامل، ولا يحتفظ بأي حالة تقريبًا عند الخمول، ويستيقظ فقط على أحداث دورة حياة ERA.


25. خط أنابيب تحديث Windows (Deploy:)

التأثير: وحدة التخزين Deploy:\ مقيدة محليًا عن الوصول من مساحة المستخدم، ولكن يتم تجاوز هذا التقييد عبر مسار مشاركة الشبكة من خلال junction S:\Deployment\SoftwareDistribution\. تتبعات ETL للتحديث، ومسار قاعدة بيانات WU، وعنوان URL لنقطة نهاية SLS (بما في ذلك معرّف النظام الأساسي وحزم اللغة المثبتة) قابلة للقراءة بالكامل.

S:\Deployment\SoftwareDistribution\ هو junction إلى وحدة تخزين جهاز kernel المخفية Deploy:\.

تحليل تتبعات ETL

تم التقاط جلستي تحديث:

الجلسة 1 9 مارس 2026 18:25:23

  • بدأت خدمة WU من حالة باردة، ولم يكن DataStore.edb موجودًا (أُنشئ جديدًا في هذه الجلسة)
  • حالة الشبكة: غير متصلة عند بدء التشغيل
  • نقطة نهاية SLS المُجرَّبة: https://slscr.update.microsoft.com/SLS/{REDACTED_GUID}/x64/10.0.26100.7010/0
  • فشلت فورًا مع 0x8024402C (لا يوجد إنترنت). لم يكتمل أي فحص تحديث.

الجلسة 2 10 مارس 2026 03:59:18

  • بدأت خدمة WU وقامت بتحميل DataStore.edb الموجود
  • حالة الشبكة: غير متصلة عند بدء التشغيل
  • فشل نفس طلب SLS مع 0x8024402C
  • أصبحت الشبكة متصلة في 03:59:24، بعد 6 ثوانٍ من فشل الخدمة بالفعل وتخليها عن الجلسة
  • ظلت الخدمة خاملة لمدة 10 دقائق، ثم أُغلقت بشكل نظيف في 04:09:19 مع رمز خروج 0x240001
  • لم يكتمل أي فحص تحديث في أي من الجلستين

ملاحظة: في كلتا الجلستين كانت الشبكة غير متاحة عند تهيئة خدمة WU، مما تسبب في تخليها عن فحص التحديث. أصبحت الجلسة 2 متصلة بعد 6 ثوانٍ من خروج الخدمة بالفعل من مرحلة الاكتشاف، مما يشير إلى أن خط أنابيب التحديث لا يعيد المحاولة بعد فشل فحص الشبكة الأولي.

بنية عنوان URL لنقطة نهاية SLS

root@kitploit:~
https://slscr.update.microsoft.com/SLS/{SERVICE_GUID}/x64/{BUILD}/0
?CH=928          catalog hash / change counter (928 in session 1, 19 in session 2)
&L=en-US;...     31 installed language packs
&PT=0xc0         platform type: Xbox
&WUA=1451.2510.27012.0  Windows Update Agent version

PT=0xc0 هو معرّف منصة Xbox المضمن في كل فحص تحديث. انخفض CH من 928 إلى 19 بين الجلستين، بما يتوافق مع عدّاد حالة الكتالوج الذي يُعاد تعيينه عند إعادة إنشاء قاعدة البيانات.

معرّف GUID لإعداد الخدمة

[REDACTED] هو معرّف إعداد خدمة تحديث Windows الخاص بـ Xbox، الموجود في الدليل الفرعي SLS\ والمضمن في كل عنوان URL لطلب SLS.

شجرة مصادر عميل WU

مسارات بناء Azure DevOps الداخلية تسربت عبر أدوات التصحيح:

root@kitploit:~
C:\__w\1\s\src\Client\comapi\DiscoveryJob.cpp
C:\__w\1\s\src\Client\comapi\XxxJob.cpp
C:\__w\1\s\src\Client\lib\DownloadFile\DownloadSession.cpp
C:\__w\1\s\src\Client\Engine\handler\UHManager\uhmgr.cpp
C:\__w\1\s\src\Client\lib\util\fileutil.cpp
C:\__w\1\s\src\Client\lib\wusyshelper\wusyshelper.cpp

C:\__w\1\s\ هو مسار مساحة عمل الوكيل المستضاف ذاتيًا القياسي في Azure DevOps. يتشارك عميل تحديث Windows الخاص بـ Xbox المصدر مع تحديث Windows لسطح المكتب، فهو نفس قاعدة الشيفرة المُجمَّعة لهدف منصة Xbox.

المؤقت الدائم

تم تعيين GUID المؤقت REDACTED_GUID في الجلسة 1 وبقي بعد إعادة التشغيل إلى الجلسة 2. وهو مخزّن خارج DataStore.edb (ربما في السجل) ويُجدول فحص التحديث التالي بشكل مستقل عن دورة حياة قاعدة البيانات.


26. تحليل برامج تشغيل مكدس الإدخال/الإخراج بين الأقسام

xbtplinkc.sys عميل ارتباط نقل XVIO

يكشف تحليل الواردات عن سطح واجهة برمجة تطبيقات المخزن المؤقت الحلقي الكامل لـ XVIO وآلية ترجمة GPA:

root@kitploit:~
XvioAcquireRingBufferRundown / XvioReleaseRingBufferRundown
XvioSignalFlag
XvioWriteRingBuffer
XvioGetIncomingRingBufferAvailableBytes
XvioReadRingBufferEx
XvioInitialize
XvioGetRingBufferContext
XvioCreateRingBuffer
XvioGetReservedMemory           reserved hypervisor memory carve-out
XvioTranslateXrfsGuestGpa       translate ERA guest physical address for SystemOS access

XvioTranslateXrfsGuestGpa هي بدائية الذاكرة المشتركة بين الأقسام. يُسلّم ERA إلى SystemOS عنوانًا فعليًا ضيفًا (Guest Physical Address)؛ وتستدعي SystemOS هذه الدالة للحصول على تعيين قابل للاستخدام. هذه هي الآلية الكامنة خلف التقاط GameDVR، وتركيب إطار العرض (framebuffer compositing)، والصوت بين الأقسام.

يستورد xbtplinkc أيضًا XpalIsCapabilityEnabledByVm من xpalk.dll؛ اللاحقة ByVm تستعلم عن حالة الإمكانية على مستوى برنامج hypervisor، وليس على مستوى نظام التشغيل، مما يؤكد أنه يتحقق مما إذا كان برنامج hypervisor نفسه قد فعّل الإمكانية قبل المتابعة.

xrfs.sys نظام ملفات وقت تشغيل Xbox

برنامج تشغيل نظام ملفات NT كامل. يؤكد تحليل الواردات أنه يطبّق دلالات نظام ملفات حقيقية: مدير التخزين المؤقت (Cc*)، إدخال/إخراج MDL، أقفال الملفات (FsRtl*)، إنشاء واصفات الأمان، الجداول العامة لشجرة AVL لفهرسة الدلائل.

الواردات المميزة الرئيسية:

root@kitploit:~
FsRtlRegisterFileSystemFilterCallbacks
IoRegisterFileSystem
RtlCreateSecurityDescriptor / RtlCreateAcl / RtlAddAccessAllowedAce
XpalIsCapabilityEnabled
WppRecorder.sys in-memory ETW trace recorder

لا يستورد xrfs.sys XVIO مباشرة. بدلاً من ذلك، يستورد xbtplinkc.sys XvioTranslateXrfsGuestGpa؛ XRFS هي طبقة نظام الملفات، بينما توفر XVIO ترجمة GPA تحتها.

بنية نظام الملفات بين الأقسام

root@kitploit:~
ERA game process
    ↓
ERA kernel / XVIO guest side
    ↓  [hypervisor shared memory / GPA translation via XvioTranslateXrfsGuestGpa]
SystemOS: xbtplinkc.sys  (ring buffer transport)
    ↓
SystemOS: xrfs.sys       (NT filesystem semantics)
    ↓
S:\Shares\TitleScratch   (junction, target redacted by OS)
    ↓
SystemOS userspace / shell

27. برنامج eracontrol.exe

الواردات الرئيسية الخاصة بـ Xbox:

XCRDAPI.dll تحكم مباشر في تحميل XVD:

root@kitploit:~
XCrdSetEraLaunchMapping   associates XVD content with ERA partition pre-launch
XCrdMountContentType      mounts content categories into ERA
XCrdUnmount               tears down ERA content mounts
XCrdOpenAdapter / XCrdCloseAdapter
XCrdQueryDevicePath / XCrdBuildPath
XCrdDeleteXVD
XCrdSuspendResumeIoBalancer
XCrdIsCorruptionError
XCrdFreeDevicePathBuffer

ntdll.dll

root@kitploit:~
NtOpenPartition
RtlSetProcessIsCritical
RtlWaitForWnfMetaNotification / RtlPublishWnfStateData
NtQueryWnfStateData / NtDeleteWnfStateName

ext-ms-win-xblauth-console-l1-1-0.dll (تحميل مؤجل):

root@kitploit:~
XblaInitialize            bootstraps Xbox Live auth identity into ERA partition

ext-ms-win-ntuser-rim-l1-1-0.dll (تحميل مؤجل):

root@kitploit:~
RIMAddInputObserver / RIMRemoveInputObserver  intercepts raw controller input for ERA routing

SspiCli.dll:

root@kitploit:~
LogonUserExExW            creates user logon tokens for the ERA session

ext-ms-win-session-usermgr-l1-1-0.dll (تحميل مؤجل):

root@kitploit:~
UMgrOpenProcessHandleForAccess

RPCRT4.dll:

root@kitploit:~
RpcServerInqCallAttributesW / I_RpcBindingInqLocalClientPID  RPC caller identity verification

28. برنامج eraproxyapp.exe

eraproxyapp.exe هو المُركِّب (compositor) في جانب SystemOS وجسر IPC بين قسم ERA والصدفة. حجمه 339KB، وهو أكبر بكثير من eracontrol.exe (249KB).

تركيب إطار العرض:

root@kitploit:~
d3d11.dll:  D3D11CreateDevice
dcomp.dll:  DCompositionCreateDevice
AVRT.dll:   AvSetMmThreadCharacteristicsW / AvSetMmThreadPriority / AvRevertMmThreadCharacteristics

ينشئ eraproxyapp جهاز D3D11 وجهاز DirectComposition لتركيب إطار عرض ERA في صدفة SystemOS. تضمن أولوية مؤشر ترابط الوسائط المتعددة AVRT تسليم الإطارات بزمن وصول منخفض.

IPC بين الأقسام عبر ALPC:

root@kitploit:~
ntdll: NtAlpcConnectPort / NtAlpcAcceptConnectPort
    NtAlpcSendWaitReceivePort
    NtAlpcCreatePortSection / NtAlpcCreateSectionView
    NtAlpcDeletePortSection / NtAlpcDeleteSectionView
    NtAlpcDisconnectPort / NtAlpcCancelMessage

توفر أقسام منفذ ALPC ذاكرة مشتركة بدون نسخ (zero-copy). لا يتم نسخ إطار عرض لعبة ERA، بل تتم مشاركته عبر طرق عرض أقسام ALPC المعيّنة في نفس الوقت في كلا مساحتي العنوان.

مساحة اسم خاصة (قناة IPC آمنة):

root@kitploit:~
CreatePrivateNamespaceW / OpenPrivateNamespaceW
CreateBoundaryDescriptorW / AddSIDToBoundaryDescriptor / DeleteBoundaryDescriptor
ClosePrivateNamespace
bcrypt: BCryptGenRandom / BCryptHashData / BCryptCreateHash / BCryptFinishHash

ينشئ eraproxyapp مساحة اسم كائنات خاصة مع واصف حدود قائم على SID، وهي مساحة اسم كائنات مسماة مرئية فقط لـ ERA وSystemOS. توفر BCrypt مادة مفاتيح عشوائية للحدود.

هوية العنوان والصوت:

root@kitploit:~
XboxLiveTitleId.dll:  GetCurrentXboxLiveInfo identifies the running title
xamapi.dll:           XamApiDisableLayoutScaling
ConsoleGlobalization.dll: GetConsoleGlobalizationInfo
api-ms-win-audiocore-spatial-config-l1-1-0.dll: Create_SpatialAudioDevicePropertyReader

الأنابيب المسماة:

root@kitploit:~
CreateNamedPipeW / ConnectNamedPipe / DisconnectNamedPipe

29. تحليل إضافي لملفات DLL

XblAuthConsoleExt.dll هوية الأجهزة والمصادقة (46 تصديرًا)

هوية وحدة التحكم:

root@kitploit:~
XblaGetConsoleCert / XblaGetConsoleId / XblaGetConsoleSerialNumber
XblaGetDevkitType      retail vs devkit detection
XblaGetXblSandbox      Xbox Live environment (retail/preview/dev)

هوية العنوان:

root@kitploit:~
XblaGetXboxLiveTitleId
XblaGetTitleAttestation / XblaGetTitleConsoleGeneration

التشفير:

root@kitploit:~
XblaSignDigest         sign with console private key
XblaGetAttestation / XblaGetTpmPcrAttestation fTPM PCR boot chain measurements
XblaProcessChallenge / XblaProcessSpToken

يؤكد XblaGetTpmPcrAttestation أن وحدة التحكم تنفذ مصادقة كاملة لسلسلة الإقلاع. يمكن لمايكروسوفت التحقق تشفيريًا من الحالة الدقيقة لتسلسل الإقلاع عندما تصادق وحدة التحكم على Xbox Live.

xamapi.dll طبقة توافق مدير تطبيقات Xbox (24 تصديرًا)

يتجاوز واجهات برمجة تطبيقات Win32 القياسية لتطبيقات ERA التي تعمل في سياق SystemOS:

root@kitploit:~
ClipCursorOverride / GetClipCursorOverride
GetCursorPosOverride / SetCursorPosOverride
GetMonitorInfoWOverride / GetSystemMetricsOverride
XamApiDisableLayoutScaling / XamApiSetLayoutScaleOverride
AdjustDeviceIdMappingForKeyEventBefore / After
UserContextExtInitialize / SetToken / Cleanup

هكذا تقدم SystemOS بيئة Windows PC مقنعة للمكونات التي تتوقع واجهات برمجة تطبيقات Win32 القياسية للعرض والإدخال.

xboxsynthetickm.dll حقن الإدخال الاصطناعي (M:\، 12 تصديرًا)

موجود على وحدة تخزين الطبقة العلوية للأجهزة M:\ (تُعامَل كطبقة أجهزة، وليست طبقة تطبيقات):

root@kitploit:~
SyntheticInput_CreateKeyboard / CreateMouse / CreateMouseAbsolute
SyntheticInput_InjectKeyboardInput / InjectMouseInput
SyntheticInput_ReadKeyboardOutput

هكذا يحول xCloud حزم الشبكة إلى أحداث إدخال محلية. لا يمكن لوحدة التحكم التمييز بين الإدخال الاصطناعي والإدخال الفعلي على مستوى الأجهزة.

xboxcloudstreaming.dll محرك بث xCloud (تصديران)

root@kitploit:~
GetCloudStreamManager
ShutdownCloudStreamManager

XboxLiveTitleId.dll اكتشاف اللعبة في وقت التشغيل (12 تصديرًا)

root@kitploit:~
GetCurrentXboxLiveTitleId / GetCurrentXboxLiveInfo
GetProcessXboxLiveInfo / GetPackageXboxLiveInfo
AuthenticateSystemXboxLiveTitle

XBBlackbox.dll مسجل الرحلة

تصدير واحد: BlackboxServiceMain

XBCastRecv.dll مستلم Miracast (22 تصديرًا)

root@kitploit:~
GetWiFiDirectDeviceCategoryForCurrentPlatform
IsMiracastReceiverStartAllowedWithoutApp
GetEdidForCurrentDisplayDevice

Xbox.Shell.Api.dll تكامل الصدفة (44 تصديرًا)

root@kitploit:~
CheckGamingPrivilegeSilently / WithUI
ShowProfileCardUI / ShowGameInviteUI
PlaySystemSound
AreWebAppsEnabled

مكدس وحدة التحكم بالاسم الرمزي "Pendragon"

XAccessoriesGip.dll:

root@kitploit:~
PendragonGIP_SendGIPMessage
PendragonGIP_SetMessageCallback
PendragonGIP_Start / Stop

30. ملخص بنية النظام الكامل

البنية العامة

root@kitploit:~
Hypervisor (lowest layer, hardware virtualization)
    ↓
Host OS (Root Partition) hidden from SystemOS, management OS
├── 108MB fixed RAM carve-out
├── 5 core system processes
├── **XVIO.SYS**             Xbox Virtual I/O core (ring buffers, GPA translation)
├── **XSraFlt.sys**          GPU security filter (display capture interception)
├── **sevpipe driver**       secure IPC namespace root
├── **xvncbus.sys**          Durango Virtual XVNC Bus Driver
├── **xvnc.sys**             XVSC miniport
├── **xrfs.sys**             NTFS Filesystem driver
└── Hardware device ownership (GPU, network, storage)
    ↓ (creates child VMs with virtualized hardware)
SRA SystemOS Partition (Windows 11 24H2 / WCOS, child partition)
├── Total RAM: 6400MB (dynamically allocated)
├── 89-95 processes
├── sevpipe IPC backbone (client views)
├── ERA lifecycle management (eracontrol.exe)
├── Telemetry pipeline (EtwUploader->NetworkTransferManager)
├── XTF toolchain (J:\tools\, always present on retail)
├── Device Portal web server (:11443)
└── Virtualized hardware views (GPU, NIC, storage via Host OS)
    ↓ (manages as child)
ERA GameOS Partition
├── Game title process
├── XVIO client view
└── All hardware access proxied: ERA->SystemOS->Host OS

تهيئة برامج التشغيل (افتراضات بناءً على ما لدي حتى الآن)

root@kitploit:~
Host OS Boot (invisible to research, complete assumptions):
1. Host OS loads from its own protected storage partition
2. Normal Windows driver loading within Host OS:
    - XVIO.SYS (registers as \Device\Xvio)
    - XSraFlt.sys (filters GPU commands)
    - sevpipe driver (creates \\.\sevpipe namespace)
    - xvncbus.sys/xvnc.sys (virtual NIC root)
3. Host OS creates SystemOS VM with virtualized hardware, and symlinks images
4. SystemOS never sees Host OS drivers or filesystem

SystemOS View (what research can tell):
1. Sees virtualized devices provided by Host OS
2. XVIO appears as a service, not a driver (xvmctrl.sys interface)
3. sevpipe appears as a namespace but server runs in Host OS
4. Cannot enumerate or access Host OS drivers/files

تسلسل إطلاق ERA (افتراضات)

  1. eracontrol.exe: NtOpenPartition - open ERA hypervisor partition handle
  2. eracontrol.exe: XCRDAPI XCrdSetEraLaunchMapping - associate XVD with partition
  3. eracontrol.exe: XCRDAPI XCrdMountContentType - mount game content into ERA
  4. eracontrol.exe: XblaInitialize - provision Xbox Live identity into ERA
  5. eracontrol.exe: LogonUserExExW - create ERA session user token
  6. eracontrol.exe: RIMAddInputObserver - begin routing controller input to ERA
  7. eraproxyapp.exe: ALPC port sections - establish zero-copy framebuffer channel
  8. eraproxyapp.exe: CreatePrivateNamespaceW - establish secure IPC namespace
  9. eraproxyapp.exe: D3D11 + DComp - prepare framebuffer compositor
  10. ERA partition boots game

تدفق الاستدعاءات (افتراضات)ERA Game Process needs GPU memory:

root@kitploit:~
    ↓
ERA: XVIO guest call->SystemOS
    ↓
SystemOS: xvmctrl.sys->xvioc.sys->Host OS via hypercall
    ↓
Host OS: XVIO.SYS validates request
    ↓
Host OS: Programs actual GPU MMU
    ↓
Host OS: Returns GPA mapping token to SystemOS
    ↓
SystemOS: Forwards to ERA

خريطة المكدس الكامل


31. سجل عقود WinRT

يحتوي ملف HDRGameCalibration من نوع WinMD بشكل مفاجئ على ما يبدو أنه السجل الكامل لعقود WinRT على Xbox، بما يزيد عن 100 عقد يحدد كل سطح API من نوع WinRT من الطرف الأول المتاح على المنصة.

العقود البارزة

الآثار المترتبة

Kinect كعقد مدعوم. Windows.Kinect.KinectContract v1 حاضر كعقد من الدرجة الأولى غير مُهمَل، بما يتوافق مع المكدس النشط (C:\Windows\System32\ht) وقيمة KinectSensorEnabled=true في WdConfig. رؤية Kinect هي بنية تحتية تتم صيانتها بنشاط حتى على الأجهزة التي لا تحتوي على Kinect مادي. خط أنابيب التنسيق الكامل (nuiservice.exe, KinectMediaSource.dll, ثلاثة مسارات استدلال, توجيه المخرجات) موثق في القسم 33.

الإعلانات بنية تحتية داخلية. كون AdsContract عقدًا داخليًا وليس واجهة برمجة تطبيقات عامة في SDK، يعني أن توصيل الإعلانات مدمج في نظام التشغيل على المستوى نفسه الذي تعمل به المصادقة والتخزين، وليس تكاملًا عبر SDK من طرف ثالث.

أتمتة الاختبار على أجهزة التجزئة. يأتي Windows.Xbox.TestAutomationContract على وحدات التجزئة، بما يتوافق مع إمكانية وصول أدوات وضع المطوّر إلى Windows.Xbox.TestAutomationContract.


32. UserMgr2

UserMgr2 هو حساب المستخدم التفاعلي الذي يملك الجلسة النشطة المسجلة الدخول. NTUSER.DAT مقفل (UserMgr2 نشط). النتائج الرئيسية من الملف الشخصي:

هيكل الملف الشخصي

المسارالمحتويات
ntuser.ini3 أسطر جديدة
AccountPictures\UserImage.jpgصورة واحدة لحساب Microsoft بدقة 1080×1080، منفصلة عن نظام صور الألعاب (انظر القسم 3.2)

ملاحظة حول الصلاحيات

تُحل الروابط في Device Portal باستخدام صلاحيات UserMgr2 بدلاً من صلاحيات DevToolsUser (انظر القسم 1.2 والسؤال غير المحلول 12). يتمتع UserMgr2 بمستوى صلاحيات أعلى من DevToolsUser؛ إذ يملك UserMgr2 الجلسة التفاعلية بينما DevToolsUser حساب وصول مطوّر مقيد.


33. خط أنابيب رؤية Kinect في nuiservice.exe

nuiservice.exe (3.8MB، يعمل بصلاحيات SYSTEM، دائم التشغيل) هو عملية التنسيق لمكدس الإدراك الكامل Kinect/NUI. يستضيف ثلاثة مسارات استدلال متوازية: الجسم والوجه والصوت؛ يعمل كل منها كخط معالجة منفصل، مجدولًا بشكل تعاوني عبر مخطط ألياف (fiber graph) وتغذيه بالإطارات مضخة IOCP مدعومة بجهاز استدلال GPU عبر D3D11.

البنية

root@kitploit:~
nuiservice.exe
├── D3D11CreateDevice          <- GPU inference device
├── IOCP frame pump            <- async frame dispatch
└── Fiber graph                <- cooperative ML inference scheduling

الإدخال: KinectMediaSource.dll

يتم إدخال الإطارات بواسطة KinectMediaSource.dll:

root@kitploit:~
KinectMediaSource.dll
├── MFCreate2DMediaBuffer          <- allocates 2D image frames (Media Foundation)
├── alignment.bin     [10.7MB]     <- depth -> 3D coordinate transform LUT
├── alignment_color.bin  [5.7MB]  <- depth/color registration
├── DeviceIoControl->\\.\KinectSensorControl   <- talks to PetraXC.sys
└── CoCreateInstance {9178b0a6}    <- self-registration CLSID

alignment.bin (10.7MB) وalignment_color.bin (5.7MB) هما جدولا بحث محسوبان مسبقًا لتحويل بيانات مستشعر العمق الخام إلى إحداثيات ثلاثية الأبعاد في الفضاء العالمي ولتسجيل بكسلات العمق مع بكسلات اللون على التوالي.

تتبع الجسم

تُحمَّل النماذج من X:\ht\versions\{1.0.0|1.0.1|1.0.2}\ عبر vvtechs.dll (NuiVisionCreateFactory):

  • الإدخال: إطارات العمق من KinectMediaSource.dll
  • الإخراج: مفاصل الهيكل العظمي، موضع الرأس، حالة اليد (قبضة/إفلات)
  • توجد ثلاثة أدلة إصدارات في الوقت نفسه؛ يُختار الإصدار النشط أثناء التشغيل

الوجه

تُحمَّل النماذج من C:\Windows\System32\ht\ (انظر القسم 3.3 لقائمة النماذج الكاملة):

  • الإدخال: إطارات العمق والأشعة تحت الحمراء واللون
  • الإخراج: الهوية (من)، التعبير (العاطفة)، النظرة (اتجاه الانتباه)، حالة الشفاه (مفتوحة/متحركة)، سمات المظهر (نظارات، لحية)
  • تغذي مخرجات الهوية مباشرةً واجهة LogonUserExExW لتسجيل الدخول التلقائي المعتمد على الوجه (انظر توجيه المخرجات أدناه)

الصوت

يتم التعامل معها بواسطة speechwov.dll:

root@kitploit:~
speechwov.dll
├── SpeechWov_Create / UpdateAcousticModels
├── SpeechWov_ProcessRecognition
└── Output->wake word events, speech recognition events

speechwov.dll هو محرك لكلمات الاستيقاظ والتعرف على الكلام. يشير UpdateAcousticModels إلى إمكانية تحديث النموذج الصوتي أثناء التشغيل (تغيّرات حزمة اللغة أو معايرة الميكروفون). هذه هي البنية التحتية لأوامر "Hey Cortana" / الأوامر الصوتية على مستوى النظام.

توجيه المخرجات

يوزع nuiservice.exe نتائج الاستدلال عبر قنوات متعددة:

RtlCapabilityCheck هي آلية التحكم في الوصول: يجب أن تحمل العملية صلاحية NT المناسبة لتلقي أي بيانات NUI. يقيّد هذا وصول عناوين الألعاب ووصول الصدفة ووصول المطوّرين بشكل منفصل.

المستهلكون (عبر اشتراك WNF)

عقد WinRT Windows.Kinect.KinectContract v1 (انظر القسم 31) هو السطح المواجه للتجزئة لوصول عناوين الألعاب إلى هذا الخط.

root@kitploit:~
Camera Sensor Hardware
└── ciumd_wddm.dll  <- most likely WDDM user-mode camera driver
    └── PetraXC.sys (KinectSensorControl)  <- WDF 1.11, disabled until device arrives
        └── \\.\KinectSensorControl

nuiservice.exe  [always running, SYSTEM]
└── KinectMediaSource.dll->DeviceIoControl->\\.\KinectSensorControl
    ├── Track 1: vvtechs.dll  (body)
    ├── Track 2: FaceDetector/FaceRecognition + RF models  (face)
    └── Track 3: speechwov.dll  (audio)
        └──->WNF / LogonUserExExW / named pipe / RPC / State Repository

تم إجراء البحث على Xbox Series S من إصدار التجزئة في وضع المطوّر. كان كل الوصول عبر البنية التحتية لوضع المطوّر التي توفرها Microsoft.

تنزيل الأداة
الأداةالغرض
Windows Explorerمشاركة شبكة Xbox (التعليمات في https://XBOX:11443/#File%20explorer > تصفّح)
SSH (DevToolsUser + VS PIN)الوصول إلى قشرة SystemOS
mklink /Jإنشاء وصلة NTFS لـ كشف محركات الأقراص عبر مشاركة الشبكة
Device Portal (https://XBOX:11443)REST API، مستعرض ملفات، قائمة العمليات، تفريغات حية
dumpbin /IMPORTS, dumpbin /EXPORTSتحليل ثابت لملفات PE الثنائية عبر مشاركة الشبكة
Pythonنص برمجي لأتمتة REST API
Phasorبيئة تشغيل نصوص برمجية للاستخدام على الكونسول (نسخ عبر مشاركة الشبكة، تشغيل عبر SSH) نزّلها من هنا
reg queryتعداد السجل من قشرة SSH
WdApp.exeمدير الحزم والتحكم في دورة حياة ERA (تعداد سطح الأوامر)
WdConfig.exeتعداد API إعدادات الكونسول
تحليل تتبعات ETLخط أنابيب Windows Update عبر وصلة S:\Deployment\SoftwareDistribution\
تفريغات العمليات الحيةGET /api/debug/dump/usermode/live?pid=<pid>
Ghidraتحليل واجهات COM / برامج التشغيل
IDA Proمخططات استدعاء لملفات DLL وواجهات COM المعقدة
XboxToolsمجموعتي الخاصة من الأدوات المساعدة لأغراض متنوعة
NamespaceBase URIKey Endpoints
نشر التطبيق/api/appx/packagemanager/تثبيت، إلغاء تثبيت، سرد الحزم، مجموعات المحتوى
إدارة الأجهزة/api/devicemanager/شجرة أجهزة هرمية كاملة
جمع التفريغ/api/debug/dump/تفريغ العمليات الحية، تفريغ فحص الأخطاء، التحكم في الانهيار
ETW/api/etw/ETW في الوقت الفعلي عبر WebSocket، تعداد المزوّدين
مستكشف الملفات/api/filesystem/تصفح، رفع، تنزيل، حذف، إعادة تسمية
الشبكات/api/networking/ipconfig
معلومات نظام التشغيل/api/os/اسم الجهاز، معلومات نظام التشغيل
الأداء/api/resourcemanager/قائمة العمليات الحية مع CPU/الذاكرة، إحصائيات أداء النظام
الطاقة/api/power/البطارية، مخططات الطاقة، تقارير دراسة السكون
التحكم عن بُعد/api/control/إعادة تشغيل، إيقاف تشغيل
إدارة المهام/api/taskmanager/بدء/إيقاف التطبيقات، إنهاء العمليات
بلوتوث/api/bt/تعداد، إقران، توصيل أجهزة الصوت
واي فاي/api/wifi/تعداد الواجهات/الشبكات، اتصال، فصل
WER/api/wer/تعداد وتنزيل تقارير الإبلاغ عن أخطاء Windows
WPR/api/wpr/بدء/إيقاف/تنزيل تتبعات أداء WPR، ملفات تعريف مخصصة
FlagAffected Endpoints
NoKernelDumpsتفريغ النواة الحي، تنزيل تفريغ فحص الأخطاء
NoUserModeDumpsتفريغ العملية الحية (حسب PID)
NoBugcheckDumpsقائمة/تنزيل/تحكم تفريغ فحص الأخطاء
NoWPRBootTracingتتبع WPR عند الإقلاع
NoPowerSchemeAccessقراءة/كتابة مخطط الطاقة
FileSizePurpose
RestDocumentation.json40KBمخطط كامل لواجهة برمجة تطبيقات REST قابل للقراءة آليًا
workspace-definitions.js26KBتخطيط لوحة مساحة عمل البوابة (فهرس ثانوي لواجهة برمجة التطبيقات)
common-xbox.js21KBإضافات البوابة الخاصة بـ Xbox فوق بوابة الجهاز الأساسية
common.js56KBإطار عمل بوابة الجهاز الأساسي
toolhost.js7.8KBطبقة استضافة الأدوات
rest.js19KBمكتبة بناء استدعاءات REST
d3.js570KBتصور بيانات D3
konva.js676KBعرض Canvas
PIDImageUserNotes
156(مخفي)SYSTEMمجموعة عمل 66MB، لا يوجد اسم صورة ظاهر
1456xbdiagservice.exeSYSTEMخدمة تشخيص Xbox
1808EtwUploader.exeSYSTEMرافع بيانات تتبع ETW
1832StorageManagement.exeDefaultAccountتطبيق Xbox.StorageManagement UWP، IsRunning: false (معلّق)
1904ApplicationClipService.exeSYSTEMإدارة مقاطع GameDVR، مجموعة عمل 37MB
2032xnetsharedservice.exeSYSTEMجسر الشبكات بين الأقسام
2040NetworkTransferManagerService.exeSYSTEMمدير تنزيل محتوى Xbox
2344WebManagement.exeSYSTEMخادم ويب بوابة الجهاز
2416XUpdMgr.exeSYSTEMمدير تحديث Xbox
2436PRProvisioningService.exeNETWORK SERVICEخدمة توفير PlayReady
2460XNetConfig.exeSYSTEMإعداد الشبكة
2468toolsautoexec.exeSYSTEMمشغّل تلقائي لسكربت .xboxunattend
2572sihost.exeDefaultAccountمضيف البنية التحتية للصدفة، مجموعة عمل 60MB
2836XboxDevService.exeSYSTEMمضيف خدمة مطوري Xbox، 37MB
3160xrun.exeDefaultAccountمنسق إطلاق الألعاب في جانب الصدفة
3256MicrosoftXboxSecurityClip.exeSYSTEMمضيف التحقق من DRM في وقت التشغيل
3600XboxUI.exeDefaultAccountواجهة مستخدم صدفة لوحة المعلومات، مجموعة عمل 60MB
3844xrfssvc.exeSYSTEMخدمة نظام ملفات XRFS بين الأقسام، 352KB (خاملة)
3864xrmntcl.exeSYSTEMعميل تحميل وقت تشغيل Xbox
3888xtfrtservice.exeSYSTEMخدمة وقت تشغيل XTF
4320Guide.exeDefaultAccountدليل Xbox (Xbox.Guide_2602.0.2602.11003)، IsRunning: true
4548eracontrol.exeSYSTEMمدير دورة حياة قسم ERA، مجموعة عمل 991KB
4660WWAHost.exeDefaultAccountالصفحة الرئيسية للمطور (Microsoft.Xbox.DevHome_1.0.2601.4001)، IsRunning: true
6524CastSrv.exeDefaultAccountخدمة البث Miracast
الطبقةالمكونات
المحتوىXCRDAPI.dll (تركيب/إزالة تركيب/بث XVD)
الهويةXblAuthConsoleExt.dll, XboxLiveTitleId.dll, pspsra.sys
DRMMicrosoftXboxSecurityClip.exe, XCRDAPI.dll
التحكم في ERAeracontrol.exe (NtOpenPartition, XCRDAPI, XblaInitialize)
وكيل ERAeraproxyapp.exe (ALPC, D3D11, DComp, مساحة اسم خاصة)
الإدخال (محلي)xviokbd.sys, xviomou.sys, XAccessoriesGip.dll (Pendragon)
الإدخال (عن بُعد)xboxcloudstreaming.dll, xboxsynthetickm.dll
تركيز الإدخالxviomonc.sys (انتحال الهوية)
NPFS؟VMNP.SYS برنامج تشغيل NPFS (نظام ملفات الأنابيب المسماة؟ نظام تصفية؟) يُستخدم أيضًا لانتحال هوية ERA
نظام التشغيل المضيفxvmctrl.sys, XVIO.SYS, FLTMGR.sys (ليس على نظام الملفات)
نظام الملفات عبر الأقسامxrfs.sys, xbtplinkc.sys, xrmntcl.exe, xrfssvc.exe
العرضeraproxyapp.exe, xamapi.dll (تجاوزات Win32), MPO المستوى 3
GPUumd12ddi_arden.dll, newbe_xs.dll, xbsc_xs.dll, xg_xs.dll
الصوتXVMAudioServer.dll, XAudio2_8/9.dll, إعداد الصوت المكاني
الشبكاتxvnc.sys/xvncbus.sys (محول شبكة افتراضي), NetXVmService
التشخيصXBBlackbox.dll, xbdiagservice.exe, EtwUploader.exe, EtwPlus.dll (خط أنابيب Etx)
التحديثXUpdMgr.exe, عميل WU (wuauengcore.dll), وحدة تخزين Deploy:\
الصدفةXbox.Shell.Api.dll, XboxUI.exe, Guide.exe, sihost.exe
البثxboxcloudstreaming.dll, XBCastRecv.dll (Miracast)
أدوات المطوّرينWebManagement.exe (بوابة الجهاز), مكدس XTF (132 ملفًا), WdApp.exe, unattendedsetuphelper.exe
التوافقxamapi.dll (طبقة توافق Win32), dxbc2dxil_xs.dll (DX11->DX12)
الرؤية / Kinectnuiservice.exe (3.8MB, SYSTEM, مُنظّم دائم التشغيل), KinectMediaSource.dll (التقاط الإطارات, alignment.bin 10.7MB, alignment_color.bin 5.7MB), vvtechs.dll (NuiVisionCreateFactory, تتبع الجسم), speechwov.dll (مسار كلمة الاستيقاظ/الكلام), نماذج الغابة العشوائية للوجه (FaceDetector.bin, FaceRecognition.bin, ExpressionRandomForest.model, +8 أخرى), 3 إصدارات نشطة (X:\ht\versions\)
الإعلاناتAdsLauncher (تطبيق نظام), Windows.Xbox.System.Internal.AdsContract (عقد WinRT)
القديم (معطّل)Zurich (موالف تلفزيون، مرتبط بـ XVIO), PetraXC / KinectSensorControl (WDF 1.11, معطّل حتى وصول جهاز Kinect, يغذي KinectMediaSource.dll عبر \\.\KinectSensorControl)
العقدالإصدارملاحظات
Windows.Kinect.KinectContractv1من المرجح أن Kinect مدعوم للتوافق العكسي مع عناوين الألعاب
Windows.Xbox.TestAutomationContractسطح أتمتة الاختبار يأتي على أجهزة التجزئة
Windows.Xbox.System.Internal.AdsContractنظام الإعلانات هو عقد WinRT داخلي
Windows.Xbox.System.Internal.CopyOnLan.CopyOnLanContractنسخ الألعاب عبر الشبكة المحلية، نقل العناوين عبر الشبكة المحلية؟
Windows.System.Internal.XboxLive.Auth.AuthContractv2سطح مصادقة Xbox Live داخلي (منفصل عن واجهات برمجة تطبيقات XBL العامة)
AppData\Local\Packages\توجد فقط إعدادات تطبيقات المطوّرين المثبتة جانبيًا، تطبيقات نظام Xbox لا تستخدم مسارات التخزين القياسية LocalPackages لتطبيقات UWP
القناةAPIالغرض
بث على مستوى النظامRtlPublishWnfStateDataينشر حالة الجسم/الوجه/الصوت لجميع المشتركين في WNF
تسجيل دخول بالوجهLogonUserExExWيطلق تسجيل دخول المستخدم التلقائي المعتمد على الوجه
قناة مسماة لكل تطبيقNamed pipe server + GetNamedPipeClientProcessIdمخرجات مقيدة لكل عملية؛ يتحقق من هوية المستدعي قبل تسليم البيانات
استدعاء إجراء عن بُعد لكل مستدعيRPC server + RpcServerInqCallAttributesWوصول مصادق عليه لكل مستدعي إلى نتائج الاستدلال
هوية مستمرةState Repository (SRDictionaryToPropertySet)يحفظ الهوية المعترف بها عبر الجلسات
بوابة الصلاحياتRtlCapabilityCheckكل الوصول إلى مخرجات الاستدلال مقيد بفحص صلاحية NT
المستهلكملاحظات
Xbox Shellتكيّف واجهة المستخدم مع التعبيرات
Guide.exeمشغل تسجيل الدخول التلقائي
XboxUI.exeواجهة مستخدم تدرك الانتباه/النظرة
عناوين الألعابعبر عقد WinRT NuiVision (Windows.Kinect.KinectContract v1، إصدار التجزئة)
xCloudعميل البث يستقبل حالة NUI