Problemas de seguridad que permiten que el servidor conectado a Internet escriba en el servidor de red

5

No sé mucho sobre ingeniería de redes desde que empecé a ser programador. La situación es que mi empresa tiene una interfaz web alojada en uno de nuestros servidores que está conectado a Internet. Los empleados de la empresa inician sesión en la interfaz web con su contraseña y completan un formulario / carga de datos. Ahora quiero que estos datos se pongan en una carpeta en otro servidor que se utiliza para almacenar datos de clientes. Este segundo servidor no está conectado a internet.

Si permitimos que el primer servidor escriba en el segundo, ¿hay alguna forma de garantizar que solo lo hagan los usuarios en la interfaz web y no que alguien piratee el servidor? ¿Hay otros problemas de seguridad en los que tenemos que pensar y qué se puede hacer al respecto?

    
pregunta Dyon 23.01.2015 - 12:39
fuente

2 respuestas

5

Cuando un pirata informático toma el control del servidor público, debe asumir el peor de los casos en que puede hacer todo lo que el servidor público tiene permitido hacer. Eso significa que, en caso de un compromiso, las precauciones de seguridad implementadas en el servidor público son ineficientes. Solo puede confiar en las precauciones que tenga en el servidor privado.

  1. Asegúrese de que el servidor público solo tenga permiso en el servidor privado para almacenar archivos en esa carpeta. Ciertamente, no desea que coloque algunos archivos en las carpetas del sistema.
  2. Establezca los permisos de archivo en el servidor privado para que ningún usuario pueda ejecutar los archivos cargados (pero tenga en cuenta que simplemente abrir un documento malintencionado podría explotar una vulnerabilidad en el software del lector que podría permitir la ejecución del código).
  3. El almacenamiento de los archivos desde el frontend debe ser el único propósito de esa carpeta. No debería haber otros datos allí que puedan sobrescribirse.
  4. Establecer una cuota para el tamaño máximo de esa carpeta también puede ser una protección razonable contra un ataque intencional o involuntario de denegación de servicio al llenar todo el espacio de almacenamiento del servidor con basura.
  5. Tener un escáner de virus en el servidor privado para escanear los archivos entrantes no puede hacer daño. Pero no confíes demasiado en ello. Recuerde que un escáner de malware solo puede encontrar lo que sabe.
  6. Una precaución sensata puede ser permitir que solo se carguen archivos con extensiones específicas. Pero tenga en cuenta que la extensión del archivo no es un método confiable para verificar un tipo de archivo. Descubrir que hello.jpg es en realidad un ejecutable renombrado no es trivial. Sin embargo, evita la ejecución accidental debido a un doble clic en la mayoría de los casos.

Otra forma posible de hacer esto es usar un método de extracción. No haga que el servidor público envíe sus archivos al privado. Haga que el servidor privado compruebe si hay nuevos archivos en el servidor público a intervalos regulares y tire de ellos. Esto le da un mayor control sobre qué archivos extraer. Por ejemplo, solo puede extraer archivos con nombres de archivos que coincidan con un patrón específico.

    
respondido por el Philipp 23.01.2015 - 14:12
fuente
3

Esta es más una pregunta de error del servidor, pero intentaré responderla de todos modos.

La mejor manera de protegerse contra esto es NO permitiendo que el servidor escriba directamente en el otro servidor (oculto).

esto se puede hacer a través de varios medios como:

  • Un Proxy (el servidor con orientación pública proxies el archivo guardado en el servidor privado)
  • Un sistema de sondeo (el servidor privado verifica regularmente si hay archivos 'nuevos' y, si es así, los copia desde el servidor público)
  • Un sistema Pulling (el servidor público notifica al servidor privado que tiene un archivo nuevo a través de otros medios [un servicio web por ejemplo] y que el servidor privado copia el archivo desde el servidor público)

Todos estos necesitan algún otro método para proteger el servidor privado contra el uso indebido, pero sí limita el uso "arbitrario" por parte de un pirata informático de sus servidores.

    
respondido por el LvB 23.01.2015 - 13:49
fuente

Lea otras preguntas en las etiquetas