4.13.3. Implications of running multiple RPC services in one process

The direct consequence of running multiple RPC services in one process is that, if one RPC service is listening on an endpoint like a TCP port or a named pipe, all RPC services can be reached using that particular endpoint.

Thus, even if a RPC service listens only on the ncalrpc protocol (in order to accept only local procedure calls), it can be used remotely as long as another RPC service in the same process listens on a TCP port or a named pipe.

Another consequence is that it allows to anonymously identify some Win32 services remotely, as shown in the previous section:

Note: this also explains why one RPC interface identifier can appear more than once in the rpcdump output, with different endpoints on different protocol sequences: these correspond to endpoints opened by RPC services in the same process.