¿Cómo evito que se agregue javascript adicional al kiosco HTML en el espacio público?

3

Estoy planeando un proyecto que debe ser compatible con PCI, pero estoy atascado en una vulnerabilidad en particular y no puedo pensar en una forma de protegerme contra él.

El escenario es que hay un quiosco instalado en una ubicación pública que ejecuta una aplicación HTML / Javascript. La computadora física está bloqueada, pero los usuarios pueden acceder a la pantalla táctil y al teclado.

El kiosco tendría un firewall y solo se le permitiría cargar contenido de ciertos dominios o IP, pero me preocupa que un usuario ingrese código directamente en la página.

Lo que estoy imaginando es que una persona que accede al quiosco podría inyectar código en la página utilizando document.write () que registraría la entrada del usuario, y luego volver al kiosco más tarde para recopilar la entrada.

En este punto, parece que la única protección contra esto es que el usuario probablemente no pueda abrir una consola web utilizando solo el teclado. ¿Hay alguna de las siguientes formas a) para evitar que se carguen scripts adicionales después de cierto punto? o b) ¿alguna forma de garantizar que una consola web no pueda abrirse en un navegador? ¿O alguna otra protección?

En otras palabras, además de proteger físicamente la computadora, ¿qué debo hacer para asegurar una aplicación de kiosco basada en el navegador cuando el kiosco tiene un teclado?

¡Y las ideas o pensamientos son apreciados!

    
pregunta ninapavlich 04.12.2015 - 03:33
fuente

2 respuestas

1

Desde el punto de vista de una aplicación web, las vulnerabilidades que describe son las mismas para cualquier sitio web y se pueden mitigar de la misma manera. Consulte los los diez principales de OWASP y ASVS para conocer las formas estándar de la industria de tratar estos problemas.

De lo contrario, algunas técnicas particulares de la parte superior de mi cabeza incluyen:

  1. entrada de fregado
  2. Usar encabezados de políticas de seguridad de contenido
  3. Usa un WAF
  4. Borrar todos los datos una vez finalizada la sesión

PCI DSS tiene el requisito 6 para cubrir el desarrollo de software seguro, eche un vistazo al sitio web del consejo de PCI.

También me imagino que tu kiosco se consideraría una terminal virtual, así que echa un vistazo a SAQ C-VT para asegurarte de que estás cubierto.

    
respondido por el Richard 05.12.2015 - 12:22
fuente
0

Puede evitar que se abra una consola utilizando las banderas del modo de kiosco de Chrome. Si necesita una forma de depuración en este modo, puede utilizar la depuración remota de Google Chrome. El modo Kiosk también evitará que javascript se ejecute a través de la barra de direcciones ya que la barra de direcciones no existe. La única forma en que un atacante podría evitar esto es cerrar la ventana del kiosco a través de alt f4 o ctrl alt dlt y abrir un navegador regular (sin embargo, un simple inicio de sesión debería ayudar a evitar esto)

    
respondido por el PC3TJ 16.12.2015 - 20:58
fuente

Lea otras preguntas en las etiquetas