Fuzzing Windows RPC with RpcView
RpcView
From RPC to RCE - Workstation Takeover via RBCD and MS-RPChoose-Your-Own-Adventure
In the default configuration of Active Directory, it is possible to remotely take over Workstations (Windows 7/10/11) and possibly servers (if Desktop Experience is installed) when their WebClient service is running.
https://www.youtube.com/watch?v=BNzfmYwkioY
https://github.com/trailofbits/RpcInvestigator
RPC Investigator (RPCI) is a .NET/C# Windows Forms UI
application that provides an advanced discovery and analysis interface
to Windows RPC endpoints. The tool provides a visual interface around
the existing core RPC capabilities of the NtApiDotNet platform, including:
- Enumerating all active ALPC RPC servers
- Parsing RPC servers from any PE file
- Parsing RPC servers from processes and their loaded modules, including services
- Pulling symbol information from a Symbol Server
- Exporting RPC server definitions as serialized .NET objects for your own scripting
Beyond these core features, RPCI provides additional capabilities:
- The Client Workbench allows you to create and execute an RPC client
binary on-the-fly by right-clicking on an RPC server of interest. The
workbench has a C# code editor pane that allows you to edit the client
in real time and observe results from RPC procedures executed in your
code.
- Discovered RPC servers are organized into a searchable library,
allowing you to pivot RPC server data in useful ways, such as searching
all RPC procedures for all servers for interesting routines through a
customizable search interface.
- The RPC Sniffer tool adds visibility into RPC-related ETW data to
provide a near real-time view of active RPC calls. By combining ETW data with RPC server data from NtApiDotNet, we can build a more complete
picture of ongoing RPC activity.