Implementar aplicaciones web vulnerables en línea

1

Estoy implementando una aplicación web vulnerable para estudiantes (alrededor de 100) en una universidad, que pueden probar en línea y recolectar todo el tráfico con fines de investigación.

Estoy implementando esta máquina en un ESX que aloja otras máquinas y me preocupan los problemas de seguridad involucrados.

Todas las recomendaciones / enlaces / consejos disponibles serán excelentes.

    
pregunta Evilwill 19.03.2012 - 14:54
fuente

3 respuestas

2

Reglas de cortafuegos draconianas. Si sabe cómo la aplicación es vulnerable, entonces puede escribir reglas para esperar esas respuestas de la aplicación y nada más, y para limitar el alcance de las vulnerabilidades conocidas, mientras recopila los datos de tráfico. Incluso podría escribir reglas para que las respuestas "malas" esperadas del servidor se redirijan a un agujero negro u otro servidor para que también pueda capturar ese tráfico.

También me aseguraría de que las máquinas virtuales y el servidor no tengan acceso a otras máquinas virtuales / servidores o redes.

Como dice Legolas, está configurando un honeypot de alta interacción, así que configúrelo así para empezar, pero necesita limitar las respuestas maliciosas reales que crea su servidor.

    
respondido por el schroeder 19.03.2012 - 18:38
fuente
2

Le sugiero que los coloque en una LAN y que sus alumnos puedan navegar a través de una configuración de VPN. Es mucho más seguro que ponerlos solo en internet. Si solo los pone en Internet, también recibe atención de no estudiantes.

Usted mismo respondió a su pregunta, una aplicación vulnerable en Internet.

Ok, así que debes tener en cuenta:

  • aplicaciones de la cárcel, no permita que puedan ver otras carpetas.
  • Particione su disco duro para que solo puedan llenar una carpeta a la que tendrían acceso con un exploit, de lo contrario podrían bloquear el sistema
  • usa el principio de los menos privilegiados
  • Tenga cuidado con las aplicaciones que pueden escribir cosas (sé, por ejemplo, que con la inyección de sql en mysql se puede crear un archivo que genere un shell php)
  • Supervisar y registrar todo
  • Limitar la carga y descarga
  • Firewall de la máquina para que no puedan configurar un correo electrónico de spam
  • Limitar la memoria y el tiempo de CPU
  • Separe esta red completamente de su propia red

  • Cortafuegos: lista blanca en lugar de listas negras

respondido por el Lucas Kauffman 19.03.2012 - 15:06
fuente
1

Esto podría ser obvio, pero me gustaría agregar dos sugerencias más:

  1. Coloque un mecanismo de autenticación seguro frente a su aplicación web vulnerable. Si está ejecutando Apache, le recomiendo que simplemente cierre todo el directorio de la aplicación con un nombre de usuario y contraseña a través de Apache. Si distribuye esas credenciales solo entre sus alumnos, eso pondrá otra barrera en el camino de los atacantes externos / no deseados.
  2. Aloje su aplicación web vulnerable desde una máquina virtual , si es posible. De esa manera, tiene otra capa de separación entre esta aplicación y su infraestructura real (aunque de ninguna manera es a prueba de balas), y también puede revertir fácilmente su servidor web a su imagen original de forma nocturna o discrecional.
respondido por el Chris Allen Lane 24.03.2012 - 15:55
fuente

Lea otras preguntas en las etiquetas