-
Notifications
You must be signed in to change notification settings - Fork 1.2k
Add unsorted_bin_into_stack #77
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
Conversation
This attack does not work on the latest glibc anymore, because the freed chunk will not end up in the unsorted bin, but in the tcache instead. When reallocated the size of the chunk in the tcache will not be checked again, so the modification is irrelevant (in this step). @zardus We should think about a structure in this repo that differentiates attacks based on the glibc version. Or even hierarchical for different libcs like: libc -> version -> attack |
True. This is not working in latest glibc. Also, I agree with that it's better to maintain this by glibc versions. |
I like the idea of splitting things up by libc version (and libc variant), especially with what's coming soon. |
You should still be able to make this attack work by filling up the tcache first as after the tcache is full, chunks still go into the unsorted bin. In fact, I think any attack that works without tcache can work with tcache but you may need to do a lot of mallocs/frees in between to fill/clear the tcache. |
If we have tcache, I think we can use tcache_poisoning instead of this one. |
That is correct, we could basically add code that fills the cache layer and thereby get the old behavior.Imho this would make it harder to understand the original idea so we'll add some structure to differentiate between libc versions soon. On May 27, 2018 6:50 AM, Benno Fünfstück <notifications@github.com> wrote:You should still be able to make this attack work by filling up the tcache first as after the tcache is full, chunks still go into the unsorted bin. In fact, I think any attack that works without tcache can work with tcache but you may need to do a lot of mallocs/frees in between to fill/clear the tcache.
—You are receiving this because you commented.Reply to this email directly, view it on GitHub, or mute the thread.
|
Thanks. Maybe we need to maintain based on version for these techniques. |
Thank you! |
It adds another attack that returns nearly-arbitrary pointer.
It is similar to house of lore, but it overwrites unsorted bin and simpler.
I tested it with Ubuntu 16.04.