Looks like the Linux malloc has no randomization or we can say has similar addresses between parent and child but it differs in the case of
Is my understanding correct?
CC
Conversation
Replying to
You should use github.com/GrapheneOS/har to get a better idea of how the baseline randomization works. It's focused on isolating each size class into separate regions. I recommend reading through github.com/GrapheneOS/har. It has fine-grained randomization, but it's not the focus.
Replying to
okay, thanks for the information . Actually, I have seen once but not in-depth. I shall start reading the source code but as of now I am more focusing on reading the internals of malloc.
Randomization for large allocations (> 128k) is essentially complete: randomly sized guards and randomly delayed address space reuse. For small (slab) allocations, it has high entropy size class region randomization, slot randomization and randomly delayed reuse of slots/slabs.
1
1
1
It doesn't implement random selection of slabs themselves yet other than the randomized reuse. This is what's still planned for fine-grained randomization:
github.com/GrapheneOS/har
github.com/GrapheneOS/har
github.com/GrapheneOS/har
Work has been focused on more important things.
1
2

