
Vectored Overloading is a local PE injection technique that was first observed in the KidKadi malware.
It works by manipulating the load of a legitimate DLL using Hardware Breakpoints (HWBP) and Vectored Exception Handling (VEH) to change the DLL section object on-the-fly.
Essentially, the technique does the following:
SEC_IMAGE mapping from a legitimate DLL (e.g. wmp.dll)0 and forces the DLL flag in the FileHeader->Characteristics fieldNtOpenSection & loads any legitimate DLLNtOpenSection, the VEH emulates the syscall by skipping it and replacing the OUT parameters, so that section object is now that of the payload. The VEH also sets a new HWBP on NtMapViewOfSectionNtMapViewOfSectionOUT parameters of the syscall and skips its execution, emulating a mapping of the malicious PE's viewFor a more detailed analysis, please refer to our blogpost: