The Purpose of Base Address Randomization

2019-06-22 12:29发布

问题:

Since VS2008(Is it right?), MSVC linker option has a Base Address Randomization.

What the main purpose of this feature?

What I only glad to is, I don't need to rebase my Dlls manually anymore.

Is that all? Was it their purpose?
Is there any other benefit else.

回答1:

I believe you'll find that the idea is to change the entry points making it harder to exploit them - ie now an attacker not only needs to be able get executable code into memory but also work out which addresses it should be pointing at.

See here for more information