House of Rabbit
Last updated
Last updated
Jifunze & zoezi la Kuvamia AWS:Mafunzo ya HackTricks ya Mtaalam wa Timu Nyekundu ya AWS (ARTE) Jifunze & zoezi la Kuvamia GCP: Mafunzo ya HackTricks ya Mtaalam wa Timu Nyekundu ya GCP (GRTE)
Uwezo wa kubadilisha kidole cha mbele cha fast bin fd au ukubwa: Hii inamaanisha unaweza kubadilisha kidole cha mbele cha kipande katika fastbin au ukubwa wake.
Uwezo wa kuzindua malloc_consolidate
: Hii inaweza kufanywa kwa kutoa kipande kikubwa au kufunga kipande cha juu, ambacho kinasababisha kufunga vipande vya heap.
Kuunda vipande vinavyolingana: Ili kuwa na kipande kimoja kifunike kingine, kuruhusu mabadiliko zaidi ya heap.
Kufanya vipande vya uwongo: Kudanganya mpangishaji ili atambue kipande cha uwongo kama kipande halali wakati wa shughuli za heap.
Lengo: Unda kipande kinachofunika kwa kubadilisha ukubwa wa kipande cha fastbin.
Hatua 1: Kutenga Vipande
Tunagawa vipande viwili vya herufi 0x40 kila kimoja. Vipande hivi vitawekwa kwenye orodha ya kontena ya haraka baada ya kuachiliwa.
Hatua 2: Fungua Vipande
Tunabadilisha metadata ya ukubwa wa chunk1
kuwa 0xa1. Hii ni hatua muhimu ya kudanganya mpangishaji wakati wa kufanya ujumuishaji.
Hatua 4: Anzisha malloc_consolidate
Kutenga kipande kikubwa kunaanzisha kazi ya malloc_consolidate
, ikifunga vipande vidogo kwenye bakuli la haraka. Ukubwa uliobadilishwa wa chunk1
unasababisha kufunika na chunk2
.
Baada ya kufunga, chunk1
inafunika na chunk2
, ikiruhusu unyonyaji zaidi.
fd
Lengo: Unda kipande bandia kwa kubadilisha kidude cha fd
kwenye bakuli la haraka.
Hatua 1: Kutenga Vipande
Maelezo: Tunatenga vipande viwili, kimoja kidogo na kingine kikubwa, ili kuweka kiwango cha rundo kwa ajili ya kipande bandia.
Hatua 2: Unda kipande bandia
Hatua ya 3: Fungua chunk1
Maelezo: Tunafuta chunk1
, tukiiongeza kwenye orodha ya fastbin.
Hatua 4: Badilisha fd
ya chunk1
Maelezo: Tunabadilisha kiashiria cha mbele (fd
) cha chunk1
ili kielekeze kwenye kipande chetu bandia ndani ya chunk2
.
Hatua 5: Chochote malloc_consolidate
Kutenga kipande kikubwa tena husababisha malloc_consolidate
, ambayo huprocess kipande bandia.
Kipande bandia huingizwa kwenye orodha ya fastbin, ikifanya iwe kipande halali kwa ajili ya uchunguzi zaidi.
Mbinu ya House of Rabbit inahusisha kubadilisha ukubwa wa kipande cha fast bin ili kuunda vipande vinavyolingana au kudhibiti kielekezi cha fd
ili kuunda vipande bandia. Hii inaruhusu wachomozaji kuunda vipande halali kwenye rundo, kuruhusu aina mbalimbali za uchunguzi. Kuelewa na kufanya mazoezi ya hatua hizi kutaboresha ujuzi wako wa uchunguzi wa rundo.