gecko-dev/mozglue/tests/interceptor
Toshihito Kikuchi b80c6d24b1 Bug 1642626 - Part3: Handle a detour pattern of multple jumps. r=handyman
AVG AntiVirus hooks ntdll!NtMapViewOfSection by planting two JMP instructions,
jumping to a trampoline area first, then jumping to aswhook.dll.

```
ntdll!NtMapViewOfSection:
00007ffa`6d77c560 e9d33cfebf      jmp     00007ffa`2d760238

00007ffa`2d760238 ff25f2ffffff    jmp     qword ptr [00007ffa`2d760230] --> 00007ffa`541e2ad0

aswhook+0x2ad0:
00007ffa`541e2ad0 4055            push    rbp
00007ffa`541e2ad2 53              push    rbx
00007ffa`541e2ad3 56              push    rsi
```

With this patch, our detour can detour on top of that pattern.  The first part is
to remove the MEM_IMAGE check from IsPageAccessible.  The second part is to introduce
a loop in ResolveRedirectedAddress to resolve a chain of jumps.

Differential Revision: https://phabricator.services.mozilla.com/D81582
2020-07-02 16:43:14 +00:00
..
AssemblyPayloads.h Bug 1642626 - Part3: Handle a detour pattern of multple jumps. r=handyman 2020-07-02 16:43:14 +00:00
TestDllInterceptor.cpp Bug 1642626 - Part3: Handle a detour pattern of multple jumps. r=handyman 2020-07-02 16:43:14 +00:00
TestDllInterceptor.exe.manifest Bug 1599015 - Graciously return a failure if we fail to change the attribute of a trampoline. r=handyman,dmajor 2020-01-02 17:08:33 +00:00
TestDllInterceptorCrossProcess.cpp
TestIATPatcher.cpp Bug 1519636 - Automatically reformat recent changes using clang-format r=Ehsan 2020-01-21 09:51:27 +00:00
moz.build Bug 1598703: Part 2 - Add IAT Patching capabilities to the Windows DLL Interceptor; r=mhowell 2019-12-23 23:11:35 +00:00