Chrome Cache to XSS

Leer AWS-hacking van nul tot held met htARTE (HackTricks AWS Red Team Expert)!

Meer in-diepte besonderhede in hierdie skryfstuk.

Die tegniek wat hier bespreek word, behels die verstaan van die gedrag en interaksie van twee primêre tipe cache: die back/forward cache (bfcache) en die disk cache. Die bfcache, wat 'n volledige afskrif van 'n bladsy insluit, insluitend die JavaScript-heap, het voorrang bo die disk cache vir terug/voorwaartse navigasies as gevolg van sy vermoë om 'n meer omvattende afskrif te stoor. Die disk cache stoor hulpbronne wat van die web afgehaal is sonder om die JavaScript-heap in te sluit, en word gebruik vir terug/voorwaartse navigasies om kommunikasiekoste te verminder. 'n Interessante aspek van die disk cache is dat dit hulpbronne wat met fetch opgehaal is, insluit, wat beteken dat die browser die URL-hulpbronne van die cache sal weergee.

Sleutelpunte:

  • Die bfcache het voorrang bo die disk cache in terug/voorwaartse navigasies.

  • Om 'n bladsy wat in die disk cache gestoor is te gebruik in plaas van die bfcache, moet die laasgenoemde gedeaktiveer word.

Deaktiveer bfcache:

Standaard deaktiveer Puppeteer bfcache, in ooreenstemming met die voorwaardes wat in Chromium se dokumentasie vermeld word. Een effektiewe metode om bfcache te deaktiveer, is deur die gebruik van RelatedActiveContentsExist, wat bereik word deur 'n bladsy met window.open() te open wat 'n verwysing na window.opener behou.

Herskep die gedrag:

  1. Besoek 'n webbladsy, bv. https://example.com.

  2. Voer open("http://spanote.seccon.games:3000/api/token") uit, wat 'n bedienerreaksie met 'n 500-statuskode tot gevolg het.

  3. Navigeer na http://spanote.seccon.games:3000/ in die nuut geopende oortjie. Hierdie aksie stoor die reaksie van http://spanote.seccon.games:3000/api/token as 'n disk cache.

  4. Gebruik history.back() om terug te navigeer. Die aksie lei daartoe dat die gekaapte JSON-reaksie op die bladsy weergegee word.

Bevestiging dat die disk cache gebruik is, kan bevestig word deur die gebruik van DevTools in Google Chrome.

Vir verdere besonderhede oor bfcache en disk cache, kan verwysings gevind word by web.dev oor bfcache en Chromium se ontwerpdokumente oor disk cache onderskeidelik.

Leer AWS-hacking van nul tot held met htARTE (HackTricks AWS Red Team Expert)!

Last updated