Skip to content

BeyondTrust/plex-explorer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Plex Explorer

A learning aid for security researchers explaining Microsoft's Dataverse plugin sandbox architecture, aka Plex.

Dataverse is the data layer behind Power Platform (Copilot Studio, Power Apps, Power Automate, etc.) and Dynamics 365. Customers extend it with plugins, custom .NET code triggered by data events like create or update. To stop untrusted third-party code from reaching the platform or other tenants, each plugin runs inside a sandbox: a .NET worker process in a Hyper-V isolated container. Microsoft runs these sandboxes at scale across Azure as part of the hosted Dataverse service. Plex is the internal name for the system that manages and executes them.

Presented at Troopers 26 by Simon Maxwell-Stewart (BeyondTrust).

Interactive Architecture Explorer

Tools

  • echo-plugin/ - Minimal Dataverse Custom API plugin that relays commands via cmd.exe. The entry point into the sandbox container.
  • c2/ - Blob storage C2 relay. Operator console runs locally, PowerShell agent runs inside the container, commands pass through Azure Blob Storage.
  • grpc-probe/ - Go program that connects directly to the Plex sidecar gRPC service. Sends raw protobuf-encoded requests over a TLS channel.
  • extract_dlls.py - Pulls all DLLs from the worker directory through the plugin Custom API.

Other Files

  • openapi.yaml - gRPC service definitions in OpenAPI format

Prerequisites

  1. A Dataverse environment with admin/system customizer privileges
  2. Azure CLI (az) installed and logged in
  3. An Azure Storage account (for the C2 relay)
  4. Go 1.21+ (to build the gRPC probe, or use the pre-compiled release)

Responsible Disclosure

All vulnerabilities found during this research were reported to Microsoft via MSRC prior to public disclosure.

About

Security research reverse engineering Microsoft's plex sandbox architecture

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Contributors