-
-
Notifications
You must be signed in to change notification settings - Fork 201
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
linux: Fix unreliable injection when libc is absent
Such as early in the process lifetime, and in targets without an RTLD. The range chosen by our ProcessCodeSwapScope could happen to overlap with the program's ELF header, which we would subsequently parse and then carry on to fail in spectacular ways. So for the case when libc is absent, instead of attempting the full bootstrap right away, only perform mmap() and then return. Since we now allocate enough for both the bootstrapper and the loader, we can eliminate the second mmap() in the case when libc is already there.
- Loading branch information
Showing
11 changed files
with
110 additions
and
70 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters