* **Şirketinizi HackTricks'te reklamını görmek istiyorsanız** veya **HackTricks'i PDF olarak indirmek istiyorsanız** [**ABONELİK PLANLARINI**](https://github.com/sponsors/carlospolop) kontrol edin!
* [**PEASS Ailesi'ni**](https://opensea.io/collection/the-peass-family) keşfedin, özel [**NFT'lerimiz**](https://opensea.io/collection/the-peass-family) koleksiyonumuz
* **Katılın** 💬 [**Discord grubuna**](https://discord.gg/hRep4RUj7f) veya [**telegram grubuna**](https://t.me/peass) veya bizi **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)** takip edin.**
* **Hacking püf noktalarınızı paylaşarak PR göndererek** [**HackTricks**](https://github.com/carlospolop/hacktricks) ve [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github depolarına katkıda bulunun.
* Örneği kontrol edin [https://github.com/shellphish/how2heap/blob/master/glibc\_2.35/house\_of\_einherjar.c](https://github.com/shellphish/how2heap/blob/master/glibc\_2.35/house\_of\_einherjar.c)
* Veya şu adresten bakın [https://guyinatuxedo.github.io/42-house\_of\_einherjar/house\_einherjar\_exp/index.html#house-of-einherjar-explanation](https://guyinatuxedo.github.io/42-house\_of\_einherjar/house\_einherjar\_exp/index.html#house-of-einherjar-explanation) (tcache'yi doldurmanız gerekebilir)
* Saldırgan tarafından kontrol edilen bir parçanın içine `A` sahte bir parça oluşturulur ve korumaları atlamak için `fd` ve `bk` ile orijinal parçaya işaret eder
* 2 diğer parça (`B` ve `C`) tahsis edilir
*`B`'deki yanlışlık kullanılarak `prev in use` biti temizlenir ve `C` parçasının tahsis edildiği yer ile önce oluşturulan sahte `A` parçası arasındaki farkla `prev_size` verisi üzerine yazılır
* Bu `prev_size` ve sahte parçadaki boyut aynı olmalıdır kontrol noktalarını atlamak için.
* Sonra, tcache doldurulur
* Sonra, `C` serbest bırakılır böylece sahte parça `A` ile birleşir
* Sonra, sahte `A` parçasında başlayacak ve `B` parçayı kapsayacak yeni bir parça `D` oluşturulur
* Einherjar Evi burada biter
* Bu, hızlı bin saldırısı ile devam ettirilebilir:
*`B`'yi serbest bırakarak hızlı bine ekleyin
*`B`'nin `fd`si üzerine yazılarak hedef adresi hedefleyen `D` parçasını (çünkü içinde `B` bulunmaktadır) işaret eder
* Sonra, 2 malloc yapılır ve ikincisi **hedef adresi tahsis edecek**
* İşaretçileri sıfırlamadığınızda serbest bırakıldıktan sonra, verilerine hala erişmek mümkündür. Bu nedenle, bir parça sıralanmamış kutuya yerleştirilir ve içerdiği işaretçiler sızdırılır (libc sızıntısı) ve ardından bir yeni heap sıralanmamış kutuya yerleştirilir ve aldığı işaretçiden bir heap adresi sızdırılır.