There's a possible overflow in handleimage() when shim tries to load and execute crafted EFI executables; The handleimage() function takes into account the SizeOfRawData field from each section to be loaded. An attacker can leverage this to perform out-of-bound writes into memory. Arbitrary code execution is not discarded in such scenario.