Ret2ret & Reo2pop

Reading time: 3 minutes

tip

Leer & oefen AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Leer & oefen GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Ondersteun HackTricks

Ret2ret

Die hoof doel van hierdie tegniek is om te probeer om ASLR te omseil deur 'n bestaande pointer in die stapel te misbruik.

Basies, stapel oorgeloop is gewoonlik veroorsaak deur stringe, en stringe eindig met 'n null byte aan die einde in geheue. Dit maak dit moontlik om te probeer om die plek wat deur 'n bestaande pointer in die stapel aangedui word, te verminder. So as die stapel 0xbfffffdd bevat, kan hierdie oorgeloop dit in 0xbfffff00 verander (let op die laaste nul byte).

As daardie adres na ons shellcode in die stapel wys, is dit moontlik om die vloei na daardie adres te laat bereik deur adresse by die ret instruksie te voeg totdat hierdie een bereik word.

Daarom sal die aanval soos volg wees:

  • NOP sled
  • Shellcode
  • Oorskry die stapel vanaf die EIP met adresse na ret (RET sled)
  • 0x00 bygevoeg deur die string wat 'n adres van die stapel verander om na die NOP sled te wys

Volg hierdie skakel om 'n voorbeeld van 'n kwesbare binêre te sien en in hierdie een die eksploit.

Ret2pop

In die geval dat jy 'n perfekte pointer in die stapel kan vind wat jy nie wil verander nie (in ret2ret verander ons die finale laagste byte na 0x00), kan jy dieselfde ret2ret aanval uitvoer, maar die lengte van die RET sled moet met 1 verkort word (sodat die finale 0x00 die data net voor die perfekte pointer oorskry), en die laaste adres van die RET sled moet na pop <reg>; ret wys.
Op hierdie manier sal die data voor die perfekte pointer verwyder word van die stapel (dit is die data wat deur die 0x00 geraak word) en die finale ret sal na die perfekte adres in die stapel wys sonder enige verandering.

Volg hierdie skakel om 'n voorbeeld van 'n kwesbare binêre te sien en in hierdie een die eksploit.

References

tip

Leer & oefen AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Leer & oefen GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Ondersteun HackTricks