If so, click to download 15 days full version for free!
Rarely applications have the requirement of interacting with the Operating System they run on. In order to cater this requirement, programming languages provide APIs for OS communications.
One way of executing an outside executable is presented below;
AppDomain aDomain = AppDomain.CreateDomain("aDomain");
var ret = aDomain.ExecuteAssembly(pathToExecutable);
The code above dynamically creates a different domain than the current one then loads and executes an outside executable (might be DLL or exe with entry points). If there’s any chance that pathToExecutable is untrusted, loaded from .config configuration files, database or directly from user input, then loading a malicious executable and running it is inevitable.
If so, click to buy now for yearly subscriptions!