¿Es posible modificar un archivo de soporte .js en una aplicación web mediante inyección?

0

Digamos que hay una aplicación web que necesita un archivo de soporte de JavaScript .js para cargarse en el encabezado del documento html.

<!DOCTYPE html>
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
    <script type="text/javascript" src="file.js"></script>
    <title>example</title>
  </head>
  <body>
          [...]
  </body>
</html>

¿Sería posible modificarlo con un ataque de inyección, siempre que la aplicación web sea vulnerable a las inyecciones? No entiendo cómo sería posible modificar un script necesario antes.

    
pregunta hate 20.02.2014 - 16:19
fuente

2 respuestas

1

Para asegurarnos de que usamos la terminología correcta, se debe tener en cuenta que cuando se habla de vulnerabilidades de aplicaciones web, los ataques de inyección generalmente se refieren a A1-Injection como se define en la clasificación de las Diez Mejores OWASP.

Dicho esto, la respuesta a tu pregunta es sí. Si la aplicación web es propensa a ataques de inyección, un escenario de ataque podría ser el siguiente:

  

El atacante envía una entrada maliciosa al servidor web que a su vez   se lo pasa a un intérprete (por ejemplo, php) que lo incluye en una solicitud   y lo ejecuta. La entrada maliciosa se ejecuta en la web.   servidor, y si los permisos del archivo JS lo permiten, el código ejecutado ( la carga útil ) podría   Modificar el archivo JS con un contenido arbitrario. Este archivo JS modificado se entregará a todos los clientes que soliciten esta página web.

Para simplificar, un ataque de inyección puede potencialmente dar a un atacante la capacidad de ejecutar comandos arbitrarios en el servidor víctima, lo que resulta en la modificación de archivos y / o datos.

    
respondido por el ack__ 20.02.2014 - 20:30
fuente
0

Si está hablando de modificar el archivo javascript externo llamado "file.js", entonces sí, es posible realizar algunas modificaciones usando un depurador en el navegador que elija. Comenzaría cambiando las variables en la consola de bits interesantes de Javascript y agregando un punto de interrupción y ejecutando el depurador para ver cuál es el resultado. Uso puntos de interrupción y el depurador para modificar variables en javascript para producir un resultado inesperado. Digamos que la aplicación está utilizando una variable llamada "is_admin = false" con Javascript. Primero cambiaré la variable a "is_admin = true" y continuaré después de mi punto de interrupción con la esperanza de que estén usando Javascript de todas las formas incorrectas para segregar los derechos de administrador.

    
respondido por el jmbmxer 21.02.2014 - 00:49
fuente

Lea otras preguntas en las etiquetas