hacktricks/pentesting-web/xss-cross-site-scripting/chrome-cache-to-xss.md

51 lines
4.7 KiB
Markdown
Raw Normal View History

2024-02-11 02:07:06 +00:00
# Chrome Cache na XSS
2023-01-12 13:44:25 +00:00
<details>
2024-02-11 02:07:06 +00:00
<summary><strong>Leer AWS-hacking van nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
2023-01-12 13:44:25 +00:00
2024-02-11 02:07:06 +00:00
* Werk jy in 'n **cybersecurity-maatskappy**? Wil jy jou **maatskappy adverteer in HackTricks**? of wil jy toegang hê tot die **nuutste weergawe van die PEASS of HackTricks aflaai in PDF-formaat**? Kyk na die [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)!
* Ontdek [**The PEASS Family**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* Kry die [**amptelike PEASS & HackTricks swag**](https://peass.creator-spring.com)
* **Sluit aan by die** [**💬**](https://emojipedia.org/speech-balloon/) [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** my op **Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Deel jou hacking-truuks deur PR's in te dien by die** [**hacktricks repo**](https://github.com/carlospolop/hacktricks) **en** [**hacktricks-cloud repo**](https://github.com/carlospolop/hacktricks-cloud).
2023-01-12 13:44:25 +00:00
</details>
2024-02-11 02:07:06 +00:00
Meer in-diepte besonderhede [**in hierdie skryfstuk**](https://blog.arkark.dev/2022/11/18/seccon-en/#web-spanote).
2023-01-12 13:44:25 +00:00
2024-02-11 02:07:06 +00:00
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.
2023-01-12 13:44:25 +00:00
2024-02-11 02:07:06 +00:00
### Sleutelpunte:
2023-01-12 13:44:25 +00:00
2024-02-11 02:07:06 +00:00
- 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.
2023-01-12 13:44:25 +00:00
2024-02-11 02:07:06 +00:00
Deaktiveer bfcache:
2023-01-12 13:44:25 +00:00
2024-02-11 02:07:06 +00:00
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.
2023-01-12 13:44:25 +00:00
2024-02-11 02:07:06 +00:00
Herskep die gedrag:
2023-01-12 13:44:25 +00:00
2024-02-11 02:07:06 +00:00
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.
2023-01-12 13:44:25 +00:00
2024-02-11 02:07:06 +00:00
Bevestiging dat die disk cache gebruik is, kan bevestig word deur die gebruik van DevTools in Google Chrome.
2023-01-12 14:56:14 +00:00
2024-02-11 02:07:06 +00:00
Vir verdere besonderhede oor bfcache en disk cache, kan verwysings gevind word by [web.dev oor bfcache](https://web.dev/i18n/en/bfcache/) en [Chromium se ontwerpdokumente oor disk cache](https://www.chromium.org/developers/design-documents/network-stack/disk-cache/) onderskeidelik.
2023-01-12 14:56:14 +00:00
2023-01-12 13:44:25 +00:00
<details>
2024-02-11 02:07:06 +00:00
<summary><strong>Leer AWS-hacking van nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
2023-01-12 13:44:25 +00:00
2024-02-11 02:07:06 +00:00
* Werk jy in 'n **cybersecurity-maatskappy**? Wil jy jou **maatskappy adverteer in HackTricks**? of wil jy toegang hê tot die **nuutste weergawe van die PEASS of HackTricks aflaai in PDF-formaat**? Kyk na die [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)!
* Ontdek [**The PEASS Family**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* Kry die [**amptelike PEASS & HackTricks swag**](https://peass.creator-spring.com)
* **Sluit aan by die** [**💬**](https://emojipedia.org/speech-balloon/) [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** my op **Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Deel jou hacking-truuks deur PR's in te dien by die** [**hacktricks repo**](https://github.com/carlospolop/hacktricks) **en** [**hacktricks-cloud repo**](https://github.com/carlospolop/hacktricks-cloud).
2023-01-12 13:44:25 +00:00
</details>