Skip to content
Discussion options

You must be logged in to vote

As the artical in technique wiki "Avoid Occupying System Reserved Region When Allocating Trampoline" said:

Note that this range may be split into two blocks

In 64-bit NT6+, system reserved range for ASLR is [0x00007FF7FFFF0000 (SYSTEM_RESERVED_REGION_LOWEST) .. 0x00007FFFFFFF0000), 32GB, we reserved 1GB after ntdll.dll.

  • If the range is one block:
    • The block is [s_ulSystemRegionLowUpperBound (end of ntdll.dll) .. s_ulSystemRegionLowLowerBound (1GB after ntdll)].
    • The if condition will be FALSE.
  • Or the ntdll.dll is loaded in a low position near by SYSTEM_RESERVED_REGION_LOWEST, the range (1GB after ntdll) will be split into two blocks:
    • A block in bottom [s_ulSystemRegionLowUpperBound (…

Replies: 1 comment

Comment options

You must be logged in to vote
0 replies
Answer selected by m417z
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Category
Q&A
Labels
None yet
2 participants