Abstract: The present disclosure relates to methods, systems, and devices that use assured calling sequences to validate proper application behavior. Validating calling sequences ensures that attackers have not modified the process' stack to gain control of the execution path for critical operations. The validation may involve mapping calling sequence addresses to modules or functions present in the process. Additionally, some embodiments relate to eliminating unnecessary code from various modules and controlling which modules can be loaded into a program.
Abstract: The present disclosure relates to methods, systems, and devices that use assured calling sequences to validate proper application behavior. Validating calling sequences ensures that attackers have not modified the process' stack to gain control of the execution path for critical operations. The validation may involve mapping calling sequence addresses to modules or functions present in the process. Additionally, some embodiments relate to eliminating unnecessary code from various modules and controlling which modules can be loaded into a program.