
Xbox Series のアーキテクチャに関する個人研究
| フィールド | 値 |
|---|---|
| 日付 | 2026年3月9日〜12日 + 2026年7月7日〜?日 |
| ハードウェア | Xbox Series S (コードネーム: Lockhart) |
| OS ビルド | 26100.7010.amd64fre.xb_flt_2602ge.260212-1010 + 26100.8561.amd64fre.xb_flt_2606ge.260609-2200 |
| アクセス方法 | Dev Mode + SSH + REST API + NTFS ファイル共有ジャンクション |
このレポートは、Xbox Series S の内部アーキテクチャを静的および動的に分析したもので、すべて Microsoft の公式開発者モード基盤を通じて実施されました。エクスプロイトやポリシー違反は一切使用されておらず、すべてのアクセスは個人開発者プログラムの範囲内に収まっています。
本レポートには、ゲームプレイに使用される最上位レベルのコンポーネントから、最下位レベルのシステムドライバーコンポーネントに至るまでの詳細が含まれています。これらの詳細のほとんどは Xbox One でも同じであると予想されます。
AI は、大量の初期調査結果 (200 件以上の分析出力と 50 件以上のランダムなメモ) をこの文書にすばやく一貫した形式で整形するために使用されました。今後の編集はすべて手作業で行われます。
もしこの文書の一部が不明確、記載不足、または誤りであると思われる場合は、遠慮なく DM を送ってください。また、私の質問 (セクション 12) に対する回答があれば、それも歓迎します。GUID やその他の一般的なパターンは、私のアカウントを特定するようなものを残してしまわないように、pre-commit フックで秘匿化されています。
私が取り組んでいることの多くは仮定に基づいているため、不正確かもしれません。より多くの情報を得て、より多くのバイナリを調査するにつれて変更される可能性があります。
おそらくお察しの理由により、私はいかなる状況でも、直接のバイナリ、逆アセンブル出力、または Microsoft およびその子会社の IP と見なされるものを共有しません。
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 は、Windows が初期化される前にハイパーバイザー (HostOS 経由) によって直接読み込まれ、アクセス可能なすべてのボリュームには存在しません。完全なカーネルアクセス下でも改ざんできず、これが主要なセキュリティ境界となっています。
HVCI は意図的に無効化されています (セクション 18)。 IsSecureKernelRunning = 0x0 は、セキュアカーネル (VTL1) が実行されていないことを確認しています。コード整合性はロード時のみで、バイナリがマップされた後は TOCTOU ウィンドウが残ります。これは意図的なパフォーマンストレードオフであり、セキュリティ境界はパーティション内のメモリ保護ではなく、ハイパーバイザーパーティションです。
NTFS ジャンクションにより、SystemOS ファイルシステム全体がネットワーク経由で公開されます (セクション 1.2)。 SSH シェルから単一の mklink /J コマンドを実行するだけで、C:\ またはその他の任意の場所が Device Portal のファイル共有にマップされ、開発者モードの PIN 以外に追加の認証を必要とせず、すべてのシステムバイナリをリモートから読み取ることができます。
パーティション間アーキテクチャはほぼ完全にマッピングされています (セクション 4、14、26〜28)。 ERA ゲームパーティションは、ハイパーバイザーを介したチャネルのみを通じて SystemOS と通信します。I/O 用の XVIO リングバッファ、共有メモリ用の GPA 変換、IPC 用の HvSocket、そして親となる "Host OS" によって許可されるゼロコピーフレームバッファ配信用の ALPC ポートセクションです。
Deploy:\ ジャンクションはローカルアクセス制限を回避します (セクション 25)。 Windows Update ボリュームは、どこかしらの不整合 (おそらく xrfssvc.exe?) により、ネットワーク共有 (S:\Deployment\SoftwareDistribution\) 経由でのみアクセス可能です。
ほとんどのバイナリには説明文字列が単に含まれているだけなのですが、それに気づいたのは今日になってからでした。というのも、私はコンソールへの実際の接続以外には Windows を何にも使っていなかったからです。多くの場合、内容は退屈ですが (例: XVUH、XVMCTRL)、時には非常に説明的なものもあります (例: Durango Virtual XVNC Bus Driver、Xbox Remote File System Service)。
すべてのテストは、開発者モードの小売版 Xbox Series S 1台で実施されました。結果は多くのビルドを反映していますが、最終的にはビルド間の差分を取って報告書にまとめる予定です。調査結果は、ハードウェアリビジョン (Series X、Xbox One) やファームウェアバージョンによって異なる場合があります。いくつかのカーネルレベルのサーフェスには到達できませんでした。ライブカーネルダンプは NoKernelDumps 制限によってブロックされ、xvmctrl.sys の IOCTL サーフェスは完全には列挙されていません。未解決の質問はセクション 12 で追跡されています。
| ツール | 目的 |
|---|---|
| Windows エクスプローラー | 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 トレース分析 | S:\Deployment\SoftwareDistribution\ ジャンクション経由の Windows Update パイプライン |
| ライブプロセスダンプ | GET /api/debug/dump/usermode/live?pid=<pid> |
| Ghidra | COM インターフェース / ドライバーの解析 |
| IDA Pro | 複雑な DLL および COM インターフェースのコールグラフ |
| XboxTools | さまざまな用途のための自作ユーティリティ集 |
アクセスは、公式には文書化されていない (ただし、コミュニティドキュメント があります) Dev Mode SSH インターフェースを介して確立されました。NTFS ジャンクション手法 (セクション 1.2) により、D:\DevelopmentFiles のスクラッチスペースから、C:\ システムボリューム全体と、追加のドライブ文字を持つすべてのボリュームへの読み取りアクセスが拡張されました。すべての分析は読み取り専用であり、システム設定は変更されませんでした (WdConfig.exe set は使用されませんでした)。Xbox は、SSH シェルを介して標準の x86_64 Windows コンソールバイナリ (/MT でコンパイル) を直接実行できるため、ローカルで解析ツールを実行するためにこれを使用しました。
カーネルダンプは利用できませんでした。NoKernelDumps という Device Portal の制限により、小売版の開発者モードではブロックされます。ユーザーモードのライブプロセスダンプは利用可能であり、関連する箇所で使用されました。
Xbox Dev Mode は Visual Studio をサポートしており、これは SSH を使用します:
DevToolsUserhttps://XBOX:11443 の Device Portal は、D:\DevelopmentFiles への隠し NTFS ファイル共有を公開しています。SSH シェルから:```batch
mklink /J D:\DevelopmentFiles\C C:\
This creates a junction point from the developer scratch space to the system C: drive root, exposing the entire SystemOS filesystem as a readable network share at:
\\XBOX\DevelopmentFiles\C
This allows running tools like `dumpbin` from a PC directly against Xbox system binaries over the network.
---
## 2. OS Identity
| Field | Value |
|--------------------|-------------------|
| 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` |
The OS identifies as **SystemOS**, not Windows. The build branch `xb_flt_2602ge` seems to be a distinct Xbox "fork" of the Windows codebase, still very similar to Windows 11. Some Windows system binaries are bit-for-bit identical to their desktop counterparts, built with the same MSVC toolchain, likely originating from the same UUP packages. This is seperate from the unclear "Host OS".
### 2.1 Registry Identity
Several `CurrentVersion` fields have been intentionally frozen, similarly to desktop Windows (for compatibility with Xbox One titles in this case):
| Key | Value | Notes |
|-----|-------|-------|
| `CurrentVersion` | `6.3` | Reports internally as Windows 8.1, for compatibility |
| `BuildGUID` | | zeroed/scrubbed |
| `InstallDate` | `0` | no install timestamp |
| `EditionID` | `SystemOS` | Never updated |
| `ReleaseId` | `2009` | Frozen at Windows 10 20H2 era; never incremented |
---
## 3. Volume Layout
The console exposes 13 drive letters, most of which are assumed to be [like the Xbox One, entirely virtual](https://xboxoneresearch.github.io/wiki/operating-system/xbox-operating-system/)