How m2team/nanarun works
NanaRun is a Windows application-runtime customization project whose implemented utilities provide elevated command execution (MinSudo) and a Hyper-V Enhanced Session proxy (SynthRdp). The primary workflows are command-to-elevated-process execution and service-managed VMBus-to-TCP RDP forwarding; SynthRdp also exposes service and configuration commands. The tree includes a separate VirtualSmb guest utility and a RunAsSvc scaffold. Source excerpts are partial, so the graph omits uncertain implementation links and treats documented behavior as capability evidence, not inspected code.
Main entry points: SynthRdp.cpp SynthRdp Service · MinSudo.cpp MinSudo CLI · VirtualSmb.cpp VirtualSmb Utility · RunAsSvc.cpp RunAsSvc Scaffold
Components 18
Elevated Execution
- MinSudo CLI
MinSudo/MinSudo.cpp - Privilege Tokens
MinSudo/MinSudo.cpp - Elevated Command
MinSudo/MinSudo.cpp
Enhanced Session Proxy
- SynthRdp CLI
SynthRdp/SynthRdp.cpp - SynthRdp Service
SynthRdp/SynthRdp.cpp - Proxy Configuration
SynthRdp/SynthRdp.cpp - VMBus Control Channel
SynthRdp/SynthRdp.cpp - VMBus Data Channels
SynthRdp/SynthRdp.cpp - Bidirectional Proxy
SynthRdp/SynthRdp.cpp
Guest SMB Utility
- VirtualSmb Utility
VirtualSmb/VirtualSmb.cpp
Service Scaffold
- RunAsSvc Scaffold
RunAsSvc/RunAsSvc.cpp
Other components
- User
- Windows UAC
- RDP TCP Endpoint
- Windows Service Manager
- Windows SMB Redirector
- Hyper-V VMBus
- Windows Service Manager
Connections 20
- User → MinSudo CLI: runs command
- MinSudo CLI → Privilege Tokens: selects token
- MinSudo CLI → Elevated Command: launches process
- Privilege Tokens → Elevated Command: supplies token
- MinSudo CLI → Windows UAC: requests elevation
- User → SynthRdp CLI: issues commands
- SynthRdp CLI → SynthRdp Service: installs or controls
- SynthRdp CLI → Proxy Configuration: reads or writes
- SynthRdp Service → Proxy Configuration: reads settings
- SynthRdp Service → VMBus Control Channel: opens channel
- SynthRdp Service → VMBus Data Channels: opens channels
- SynthRdp Service → Windows Service Manager: registers service
- VMBus Control Channel → Hyper-V VMBus: uses VMBus
- VMBus Data Channels → Bidirectional Proxy: forwards channel data
- Bidirectional Proxy → RDP TCP Endpoint: forwards TCP data
- User → VirtualSmb Utility: runs utility
- VirtualSmb Utility → Windows SMB Redirector: configures instance
- VirtualSmb Utility → Hyper-V VMBus: binds transport
- User → RunAsSvc Scaffold: invokes scaffold
- RunAsSvc Scaffold → Windows Service Manager: connects service dispatcher