前面都已經講完跟stack相關的洞,那我們之後就是要來討論關於heap的漏洞,在此我會先對heap加以介紹
預設的mmap大約為128KB
mmap
跟kernel要memorybrk
)跟kernel要memory對 binary來說,heap 還沒開始用,因為還沒呼叫 malloc()。
但 kernel 早就把記憶體(heap) 分配好了,交給 glibc 管理,等 binary 要用時(第一次 malloc)才會從那塊記憶體分出來用。
簡單來說就是: 對 kernel 已經分配好了,但對 binary 還沒。