Now that I've been working with MSRPC extensively for some time, I'm actually starting to like it ! Although things could've been less complex (NDR alignment, for example) the protocol itself is actually quite clean and nicely set up.
Some of the major flaws in MSRPC are (imho):
- Overly complex. A couple percents of performance boost (if at all) by doing alignment of data types is not worth the trouble.
- Once you have a certain interface the only way to change an existing method's parameters is adding a new method with the new parameters.
- Not everybody who works with MSRPC completely understands what it's doing and how it works. This has been the cause of quite a few flawed interfaces (the winreg interface for example), causing security flaws and inefficiency.
One of the nice things about RPC (and perhaps also one of it's problems) is it's flexibility. The encoding can be changed as well as the transport that's being used.Go Top