Windows Sandbox: supported read-only verification of effective session security settings

Tony Caringola 0 Reputation points
2026-10-21T23:22:24.3066667+00:00

How can I verify the effective security controls of a particular Windows Sandbox session created through the packaged wsb CLI, using supported read-only, credential-free interfaces?

Installation recorded on October 20, 2026: Windows display version 26H2, OS build 26300.9711, Windows Sandbox package 0.8.107.0. Please confirm the supported version range for any proposed method.

We have not established that protections are failing. The unresolved issue is obtaining evidence of effective state for the intended session, rather than relying only on requested XML or a different client object.

The intended settings are:

  • Networking disabled
  • vGPU disabled
  • Clipboard redirection disabled
  • Printer redirection disabled
  • Audio input disabled
  • Video input disabled
  • ProtectedClient enabled
  • One input folder mapped read-only
  • One output folder mapped writable

Specific questions:

  1. ProtectedClient: Which actual process/component/token demonstrates the AppContainer boundary on the packaged CLI route? Which supported read-only interface associates that enforcing component with the public Sandbox session ID? Does this differ from the native launcher/client route?
  2. Client redirection: Which supported interface reports the effective clipboard, printer, microphone and camera redirection state of that SAME existing client session? The documented RDP AudioCaptureRedirectionMode getter is relevant, but we have not established a supported way to access the existing Sandbox client instance. Please distinguish requested, negotiated and enforced state. Creating an unrelated RDP object would not verify this session.
  3. VM and resources: Which supported properties correlate the public session ID with its actual compute system, relevant NIC/endpoints, effective GPU assignment and mapped-folder access modes? An empty host-wide endpoint list alone does not identify the intended VM or establish network isolation.

Please identify the exact documented API/schema or supported diagnostic, required privileges, version applicability, session-correlation fields and query side effects (including whether discovery can start a server or session). If no supported reader exists for one of these controls, an explicit limitation or appropriate product-team guidance route would help.

We seek diagnostic guidance only. Proposed methods must avoid credential/configuration dumps, memory dumps, process injection, broad raw event capture or changing host policies. No files or logs are attached.

Documentation reviewed:

Drafted with OpenAI Codex assistance; the environment details and verification limits were checked against recorded local evidence.

Windows for home | Windows 11 | Security and privacy
0 comments No comments

1 answer

Sort by: Most helpful
  1. AI answer

    2026-10-21T23:23:47.1433333+00:00

    There is currently no documented, supported, read-only interface that accepts a packaged wsb Sandbox ID and returns the effective ProtectedClient, RDP-redirection, networking, GPU, and mapped-folder state for that same session.

    What the supported wsb surface can establish

    For Windows 11 24H2 or later, the documented CLI provides:

    wsb list --raw
    wsb ip --id <sandbox-id> --raw
    

    wsb list reports the current user’s Sandbox IDs, state, and uptime; wsb ip reports an address for a specified Sandbox. The documentation does not define an inspect/get-configuration command or fields linking the Sandbox ID to an RDP object, process, token, HCS compute-system ID, NIC, GPU assignment, or folder mapping ^1^.

    The CLI starts with Windows 11 24H2 and remains described as an early command-line implementation. Package [IP Address] is not given a separate inspection contract, so the conclusion applies to the documented 24H2-or-newer CLI surface, including the stated 26H2 installation, but does not assert undocumented package behavior ^2^.

    These commands are credential-free and do not alter policy. wsb list is discovery-only. Avoid connect, because it opens a remote desktop session; avoid winapp target as an inspection substitute because most target verbs can prepare or start Sandbox ^3^.

    ProtectedClient and AppContainer

    <ProtectedClient>Enable</ProtectedClient> is a requested configuration that directs Windows Sandbox to run its client in AppContainer isolation ^4^. At the Windows security layer, evidence that a particular process is inside an AppContainer is its token:

    • TokenIsAppContainer, queried with GetTokenInformation
    • TokenAppContainerSid, represented by TOKEN_APPCONTAINER_INFORMATION
    • typically Low integrity plus package/capability SIDs

    AppContainer tokens contain a package identity and capability SIDs ^5^. Reading one requires:

    1. A correctly identified enforcing process.
    2. A process handle with PROCESS_QUERY_LIMITED_INFORMATION.
    3. OpenProcessToken(..., TOKEN_QUERY, ...).
    4. GetTokenInformation for the relevant token classes ^6^ ^7^.

    This is read-only, but it is not a complete supported Sandbox verification method: no documentation identifies which packaged-client process is the ProtectedClient enforcement subject or maps that PID/token to the public wsb ID. Access may also require SeDebugPrivilege when the process belongs to another account. Therefore, process-name inference, parent/child inference, or inspecting every package process cannot provide the requested supported correlation. No documented difference for this correlation is specified between packaged CLI and native-launcher sessions.

    Clipboard, printer, microphone, and camera

    The RDP properties are properties of a particular Remote Desktop ActiveX control instance—not a system-wide registry of existing Sandbox clients:

    • AudioCaptureRedirectionMode is read/write and reports that control’s audio-capture redirection setting ^8^.
    • RedirectClipboard is likewise a control configuration property ^9^.
    • Camera configuration is exposed through the control’s nonscriptable interface.
    • CorrelationId is a read-only GUID identifying that control’s remote session, available beginning with Windows 11 23H2 ^10^.

    However, Microsoft documents no supported mechanism to:

    1. obtain the packaged Sandbox client’s existing IMsTscAx object;
    2. map its CorrelationId to a wsb ID; or
    3. read a single negotiated/enforced redirection result.

    Creating another ActiveX control only reads that new object’s requested settings. Available camera configurations similarly do not prove that a device was negotiated or redirected. Thus:

    • Requested state: .wsb XML or runtime UI selection.
    • Client-object state: getters on the exact originating ActiveX object.
    • Negotiated/enforced state: no documented Sandbox-ID-correlated reader for these controls.

    Compute system, networking, GPU, and folders

    HCS can enumerate existing compute systems and query properties. Enumeration itself does not create or start one ^11^. Opening an existing system also does not start it, but HcsOpenComputeSystem requires GENERIC_ALL, despite the intended query being read-only ^12^. Access is restricted to administrators or members of Hyper-V Administrators ^13^.

    HcsGetComputeSystemProperties returns the HCS compute-system ID and type, with optional documented property queries ^14^. The schema includes fields such as Id, Name, Owner, RuntimeId, and GPU assignment modes ^15^. It does not document:

    • a wsb public-session-ID field;
    • a supported mapping between the two ID domains;
    • a Sandbox effective-policy projection;
    • a returned property set proving NIC absence, GPU nonassignment, or mapped-folder access mode for that wsb session.

    Consequently, matching by timing, owner, count, name, or an empty endpoint list is heuristic rather than supported correlation.

    Product-team route

    Request a supported effective-state inspection API through Feedback Hub → Report a problem/Suggest a feature → Security and Privacy → Windows Sandbox. Include Windows 26H2 build 26300.9711, package [IP Address], the exact wsb start/list --raw workflow, and the required correlation and state fields. Microsoft also accepts Windows Sandbox issues and feature requests through its public repository ^16^.

    Specify that the API should be read-only, take a wsb ID, avoid connecting or starting a session, distinguish requested/negotiated/enforced state, and expose stable correlation to the enforcing client and compute system.


    References

    1. Windows Sandbox command line interface
    2. Windows Sandbox versions | Microsoft Learn
    3. CLI Documentation and Usage
    4. Use and configure Windows Sandbox
    5. Launch an AppContainer
    6. OpenProcessToken function (processthreadsapi.h)
    7. GetTokenInformation function (securitybaseapi.h)
    8. IMsRdpClientAdvancedSettings7::AudioCaptureRedirectionMode property
    9. IMsRdpClientAdvancedSettings5 interface
    10. IMsRdpClientNonScriptable8::CorrelationId property
    11. HcsEnumerateComputeSystems
    12. HcsOpenComputeSystem
    13. HCS Error Code
    14. HcsGetComputeSystemProperties
    15. JSON Schema Reference
    16. Common questions about Windows Sandbox
    AI-generated content may be incorrect. Read our transparency notes for more information.

    Was this answer helpful?

Your answer

Answers can be marked as 'Accepted' by the question author and 'Recommended' by moderators, which helps users know the answer solved the author's problem.