¿Verifica que un usuario del sitio web esté detrás de un firewall corporativo?

8

Tenemos un sitio web de comercio electrónico público alojado en nuestro centro de datos en el sitio. Para las personas que se encuentran dentro del firewall corporativo que golpea el sitio web, quiero mostrar información de perfil sobre la solicitud de la página actual. Esto incluiría sql, así que queremos asegurarlo lo más posible. Al acceder al sitio web desde el interior de nuestro firewall corporativo, la dirección IP de los usuarios es siempre 192.168.0.12.

¿Cómo puedo saber de forma confiable / segura si el usuario que visita nuestro sitio web proviene del firewall corporativo? ¿Es suficiente verificar la dirección IP?

    
pregunta Paul Lemke 10.06.2011 - 20:12
fuente

3 respuestas

5
  

¿Cómo puedo saber de forma confiable / segura si el usuario que visita nuestro sitio web proviene del firewall corporativo? ¿Es suficiente verificar la dirección IP?

Creo que una mayor preocupación es "¿puedes escribir este código de tal manera que nadie pueda manipularlo?" Lo dudo mucho, sin embargo, hay cosas que puedes hacer.

Editar Ok, la respuesta antigua probablemente estaba siendo un poco paranoica de la seguridad aquí. Introducir el código de depuración en su aplicación en vivo es un riesgo para la seguridad, ya que es otro nivel de autenticación que necesita para enfrentar el escrutinio. Sin embargo, en ciertos escenarios, eso podría ser aceptable.

En el caso de una tienda en línea, podría decir que la mejor opción son los certificados SSL del lado del cliente firmados por un certificado de confianza que el servidor conoce, posiblemente combinado con restricciones de direcciones IP. Mantener una lista de revocaciones Razones para esto:

  • Bastante difícil de falsificar. El certificado debe ser firmado y autorizado por usted primero e instalado en el navegador del cliente. Por lo tanto, la seguridad se convierte en control de acceso a los certificados autorizados. Puede invalidarlos del lado del servidor manteniendo una lista de revocaciones / lista de confianza de "Mostraré la información del perfil"
  • De todos modos, está utilizando SSL en el caso más lento (usuario registrado), por lo que puede asumir que los tiempos de tráfico basados en SSL son límites superiores (HTTP simple será más rápido, pero solo marginalmente).
  • Confíe en las implementaciones criptográficas existentes en lugar de intentar implementar algo nuevo que podría romperse criptográficamente hablando.
  • Podrías relajar los requisitos de IP hasta cierto punto; los desarrolladores pueden probar desde casa también.
respondido por el user2213 10.06.2011 - 20:55
fuente
4

Yo agregaría autenticación adicional a la mezcla, tal vez un encabezado adicional agregado por un proxy intermedio o algo así. Incluso un encabezado no es muy fuerte porque puede ser falsificado, pero la dirección IP sola parece un poco débil.

Aunque falsificar el tráfico TCP (y ver las respuestas) no es trivial, debes buscar otra capa para agregar si es posible. Si está en Windows, considere agregar Kerberos / NTLM a la mezcla (Windows Auth).

    
respondido por el Daniel Miessler 10.06.2011 - 20:41
fuente
1

Para las áreas autenticadas del sitio, podría agregar una lista de usuarios a los que la aplicación proporcionaría información de depuración, y verificar que junto con la dirección IP de origen, esencialmente solo funcionaría para usuarios apropiados provenientes de la red interna. .

Como otras respuestas han señalado, depender solo de la dirección IP de origen podría ser un problema, ya que cualquier persona con acceso a esa red obtendría esta información si llegara al sitio, lo cual (dependiendo de quién está en esa red) podría incluir a personas que no deberían No lo veas.

Dependiendo de la configuración, el riesgo de suplantación de la dirección IP podría ser bastante bajo, pero permitir un acceso completo de la red a información potencialmente confidencial sin autenticarlos aún más no se consideraría un control fuerte.

    
respondido por el Rоry McCune 12.06.2011 - 21:14
fuente

Lea otras preguntas en las etiquetas