Chrome Cache to XSS

Jifunze na fanya mazoezi ya AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Jifunze na fanya mazoezi ya GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Support HackTricks

Maelezo zaidi ya kina katika andiko hili.

Mbinu inayozungumziwa hapa inahusisha kuelewa tabia na mwingiliano wa aina mbili za cache kuu: back/forward cache (bfcache) na disk cache. Bfcache, ambayo inahifadhi picha kamili ya ukurasa ikiwa ni pamoja na JavaScript heap, inapewa kipaumbele juu ya disk cache kwa ajili ya urambazaji wa nyuma/mbele kutokana na uwezo wake wa kuhifadhi picha kamili zaidi. Disk cache, kinyume chake, inahifadhi rasilimali zilizopatikana kutoka mtandao bila kujumuisha JavaScript heap, na inatumika kwa urambazaji wa nyuma/mbele ili kupunguza gharama za mawasiliano. Kipengele cha kuvutia cha disk cache ni kujumuisha rasilimali zilizopatikana kwa kutumia fetch, ikimaanisha rasilimali za URL zilizofikiwa zitaonyeshwa na kivinjari kutoka kwenye cache.

Mambo Muhimu:

  • Bfcache ina kipaumbele juu ya disk cache katika urambazaji wa nyuma/mbele.

  • Ili kutumia ukurasa uliohifadhiwa kwenye disk cache badala ya bfcache, bfcache inapaswa kuzuiliwa.

Kuzuilia bfcache:

Kwa kawaida, Puppeteer inazuilia bfcache, ikilingana na masharti yaliyoorodheshwa katika nyaraka za Chromium. Njia moja yenye ufanisi ya kuzuilia bfcache ni kupitia matumizi ya RelatedActiveContentsExist, ambayo inapatikana kwa kufungua ukurasa kwa window.open() ambao unashikilia rejeleo kwa window.opener.

Kurejesha tabia:

  1. Tembelea ukurasa wa wavuti, kwa mfano, https://example.com.

  2. Teua open("http://spanote.seccon.games:3000/api/token"), ambayo inasababisha jibu la seva lenye msimbo wa hali 500.

  3. Katika tab mpya iliyofunguliwa, tembelea http://spanote.seccon.games:3000/. Kitendo hiki kinahifadhi jibu la http://spanote.seccon.games:3000/api/token kama disk cache.

  4. Tumia history.back() kurudi nyuma. Kitendo hiki kinapelekea kuonyeshwa kwa jibu la JSON lililohifadhiwa kwenye ukurasa.

Uthibitisho kwamba disk cache ilitumika unaweza kuthibitishwa kupitia matumizi ya DevTools katika Google Chrome.

Kwa maelezo zaidi juu ya bfcache na disk cache, viungo vinaweza kupatikana katika web.dev kuhusu bfcache na nyaraka za muundo za Chromium kuhusu disk cache, mtawalia.

Jifunze na fanya mazoezi ya AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Jifunze na fanya mazoezi ya GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Support HackTricks

Last updated