mirror of
https://github.com/carlospolop/hacktricks
synced 2024-11-22 12:43:23 +00:00
4.6 KiB
4.6 KiB
Afstandsoorskot
Leer AWS-hacking van nul tot held met htARTE (HackTricks AWS Red Team Expert)!
Ander maniere om HackTricks te ondersteun:
- As jy wil sien dat jou maatskappy geadverteer word in HackTricks of HackTricks aflaai in PDF-formaat Kontroleer die INSKRYWINGSPLANNE!
- Kry die amptelike PEASS & HackTricks swag
- Ontdek Die PEASS Familie, ons versameling van eksklusiewe NFT's
- Sluit aan by die 💬 Discord-groep of die telegram-groep of volg ons op Twitter 🐦 @hacktricks_live.
- Deel jou haktruuks deur PR's in te dien by die HackTricks en HackTricks Cloud github-opslag.
Basiese Inligting
Om net toegang tot 'n 1B-oorvloei te hê, stel dit 'n aanvaller in staat om die vorige grootte meta-inligting te wysig, wat toelaat om te manipuleer watter stukke werklik vrygestel word, en uiteindelik 'n stuk te genereer wat 'n ander wettige stuk bevat.
Kodevoorbeeld:
- https://github.com/DhavalKapil/heap-exploitation/blob/d778318b6a14edad18b20421f5a06fa1a6e6920e/assets/files/shrinking_free_chunks.c
- Hierdie aanval werk nie meer as gevolg van die gebruik van Tcaches nie.
- Verder, as jy probeer om dit te misbruik deur groter stukke te gebruik (sodat tcaches nie betrokke is nie), sal jy die fout kry:
malloc(): invalid next size (unsorted)
Doel
- Maak 'n stuk binne 'n ander stuk sodat skryftoegang oor daardie tweede stuk toelaat om die ingeslote een te oorskryf
Vereistes
- Afstandsoorskot om die vorige grootte meta-inligting te wysig
Aanval
- 3 stukke geheue (a, b, c) word een na die ander gereserveer. Dan word die middelste een vrygestel. Die eerste bevat 'n afstandsoorskot kwesbaarheid en die aanvaller misbruik dit met 'n 0x00 (as die vorige byte 0x10 was, sou dit die middelste stuk aandui dat dit 0x10 kleiner is as wat dit werklik is).
- Dan word 2 kleiner stukke toegewys in die middelste vrygestelde stuk (b), maar, aangesien
b + b->grootte
nooit die c-stuk opdateer nie omdat die aangeduide adres kleiner is as wat dit behoort te wees. - Dan word b1 en c vrygestel. Aangesien
c - c->vorige_grootte
steeds na b wys (nou b1), word beide gekonsolideer in een stuk. Tog is b2 steeds binne in tussen b1 en c. - Laastens word 'n nuwe malloc uitgevoer wat hierdie geheuearea herwin wat eintlik b2 gaan bevat, wat die eienaar van die nuwe malloc toelaat om die inhoud van b2 te beheer.
Hierdie beeld verduidelik perfek die aanval:
Verwysings
Leer AWS-hacking van nul tot held met htARTE (HackTricks AWS Red Team Expert)!
Ander maniere om HackTricks te ondersteun:
- As jy wil sien dat jou maatskappy geadverteer word in HackTricks of HackTricks aflaai in PDF-formaat Kontroleer die INSKRYWINGSPLANNE!
- Kry die amptelike PEASS & HackTricks swag
- Ontdek Die PEASS Familie, ons versameling van eksklusiewe NFT's
- Sluit aan by die 💬 Discord-groep of die telegram-groep of volg ons op Twitter 🐦 @hacktricks_live.
- Deel jou haktruuks deur PR's in te dien by die HackTricks en HackTricks Cloud github-opslag.