House of Einherjar
Last updated
Last updated
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Check the example from https://github.com/shellphish/how2heap/blob/master/glibc_2.35/house_of_einherjar.c
Or the one from https://guyinatuxedo.github.io/42-house_of_einherjar/house_einherjar_exp/index.html#house-of-einherjar-explanation (you might need to fill the tcache)
Lengo ni kutenga kumbukumbu katika anwani maalum karibu yoyote.
Unda kipande bandia tunapotaka kutenga kipande:
Weka viashiria kuashiria yenyewe ili kupita ukaguzi wa akili
Overflow ya byte moja na byte ya null kutoka kipande kimoja hadi kingine ili kubadilisha bendera ya PREV_INUSE
.
Onyesha katika prev_size
ya kipande kilichotumiwa kwa null tofauti kati yake na kipande bandia
Ukubwa wa kipande bandia lazima pia uwe umewekwa sawa ili kupita ukaguzi wa akili
Kwa ajili ya kujenga vipande hivi, utahitaji kuvuja kwa heap.
A
kipande bandia kinaundwa ndani ya kipande kinachodhibitiwa na mshambuliaji kinachoashiria kwa fd
na bk
kwa kipande asilia ili kupita ulinzi
Vipande vingine 2 (B
na C
) vinatengwa
Kutumia matumizi ya off by one katika B
kipande bendera ya prev in use
inafutwa na data ya prev_size
inabadilishwa na tofauti kati ya mahali ambapo kipande C
kinatengwa, hadi kipande bandia A
kilichoundwa hapo awali
Hii prev_size
na ukubwa katika kipande bandia A
lazima iwe sawa ili kupita ukaguzi.
Kisha, tcache inajazwa
Kisha, C
inachukuliwa ili kuungana na kipande bandia A
Kisha, kipande kipya D
kinaundwa ambacho kitakuwa kinaanzia katika kipande bandia A
na kufunika kipande B
Nyumba ya Einherjar inamalizika hapa
Hii inaweza kuendelea na shambulio la fast bin au Tcache poisoning:
Free B
ili kuiongeza kwenye fast bin / Tcache
B
's fd
inabadilishwa ili kuashiria anwani ya lengo ikitumia kipande D
(kama inavyojumuisha B
ndani)
Kisha, mallocs 2 zinafanywa na ya pili itakuwa ikitegemea anwani ya lengo
Baada ya kuachilia viashiria havijafutwa, hivyo bado inawezekana kufikia data zao. Kwa hivyo kipande kinawekwa katika bin isiyopangwa na kuvuja viashiria inavyovijumuisha (libc leak) na kisha heap mpya inawekwa kwenye bin isiyopangwa na kuvuja anwani ya heap kutoka kwa kiashiria inachopata.
Null-byte overflow bug katika strtok
.
Tumia House of Einherjar kupata hali ya vipande vinavyoshirikiana na kumaliza na Tcache poisoning ili kupata primitive ya kuandika isiyo na mpangilio.
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)