
これは理論だけをまとめた小さなメモ書きです。このバグは競合してしまい、実際にきちんとテストするまでには至りませんでした。
EnterpriseAppMgmtSvc は、COM オブジェクトを実装する興味深いサービスです。Windows Phone 時代からあるようで、実際、このサービスが実装する COM インターフェイスのほとんどは、Windows Phone でのみ動作するデッドコードです。OneCore のおかげで!
非 WCOS システムでデフォルトで動作するように見える唯一のコクラスは EnterpriseModernAppManager です。MS は元々 EnterpriseModernAppManager::InstallApplication() に権限チェック(管理者権限が必要)を入れていましたが、このコクラスの他のメソッドには権限チェックを追加し忘れました。
(当然のことながら、CVE-2022-35841 のパッチでは、EnterpriseModernAppManager の他のメソッドに対する権限チェックが追加されています。)
ここで興味深いメソッドは EnterpriseAppMgmtSvc::ProvisionApplication です。これは、渡された XML 文字列の構成から APPX パッケージをステージング(部分的にインストール?)します。
任意の APPX パッケージは、desktop6:Service 拡張機能と、packagedServices および localSystemServices の 2 つの制限付き機能によって、SYSTEM として実行される NT サービスをインストールするように構成できます。
私が確認できたのはここまでです。当然のことながら、競合が発生するのも今日パッチが公開されるのも予想していなかったため、これを実際にテストしたことはなく、したがって APPX がどのような署名を必要とするのかは分かりません。