mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-10-23 10:15:41 +00:00
c277593b98
Some applications tamper Import Directory entry of a loaded executable image to pretend static dependency on their module. We have `RestoreImportDirectory` to revert it in the browser process. If tampering happened in the launcher process, however, we failed to get an IAT thunk address via `GetIATThunksForModule` because it could be located outside the mapped image. With this patch, we skip bounds check in `GetIATThunksForModule` if we detect tampering in the launcher process. We can proceed safely because it's expected that Import Directory is still valid though it's located outside. Differential Revision: https://phabricator.services.mozilla.com/D49690 --HG-- extra : moz-landing-system : lando |
||
---|---|---|
.. | ||
decimal | ||
interceptor | ||
AutoProfilerLabel.cpp | ||
AutoProfilerLabel.h | ||
ConditionVariable_posix.cpp | ||
ConditionVariable_windows.cpp | ||
Debug.h | ||
DynamicallyLinkedFunctionPtr.h | ||
ImportDir.h | ||
moz.build | ||
Mutex_posix.cpp | ||
Mutex_windows.cpp | ||
MutexPlatformData_posix.h | ||
MutexPlatformData_windows.h | ||
NativeNt.h | ||
nsWindowsDllInterceptor.h | ||
PlatformConditionVariable.h | ||
PlatformMutex.h | ||
Printf.cpp | ||
Printf.h | ||
StackWalk_windows.h | ||
StackWalk.cpp | ||
StackWalk.h | ||
TimeStamp_darwin.cpp | ||
TimeStamp_posix.cpp | ||
TimeStamp_windows.cpp | ||
TimeStamp_windows.h | ||
TimeStamp.cpp | ||
TimeStamp.h | ||
WindowsMapRemoteView.cpp | ||
WindowsMapRemoteView.h | ||
WindowsProcessMitigations.cpp | ||
WindowsProcessMitigations.h | ||
WindowsUnicode.cpp | ||
WindowsUnicode.h | ||
WinUtils.h |