¿Es la lista blanca de direcciones IP útil si la dirección IP no es "secreta"?

1

Estoy trabajando en una aplicación que tendrá acceso a las claves API proporcionadas por nuestros usuarios. La aplicación hace llamadas a la API en nombre de nuestros usuarios.

La API que estamos usando permite a los usuarios agregar a la lista blanca las direcciones IP que pueden usar sus claves API. Estaba pensando en pedirles a nuestros usuarios que incluyan en la lista blanca la dirección IP de la aplicación para agregar una capa adicional de seguridad, de modo que solo se permitan las solicitudes provenientes de nuestra dirección IP.

Pero he leído que es bastante fácil falsificar las direcciones IP y considerando que voy a decirles a nuestros usuarios qué dirección IP hay en la lista blanca (es decir, un mal actor no tendría que trabajar demasiado para ver qué direcciones IP son válidos), me pregunto si esto vale la pena el esfuerzo?

Si un actor malintencionado obtuviera de alguna manera las claves API de los usuarios, ¿la lista de direcciones IP agregaría alguna capa de seguridad significativa? ¿O sería esto solo un pequeño inconveniente para el mal actor?

¡Gracias!

    
pregunta AntiWiggin 04.08.2018 - 09:06
fuente

1 respuesta

1
  

Pero he leído que es bastante fácil falsificar direcciones IP

Aquí es donde te equivocas. Es fácil conectarse a un sitio web, por lo que ve una dirección IP que no es suya al enrutar a través de un servidor proxy, pero no puede falsificar una dirección IP arbitraria. Para el protocolo TCP, que es muy probable que esté usando, es simplemente imposible falsificar una dirección IP sin comprometer una gran parte de la columna vertebral de Internet.

El motivo de esto es que TCP utiliza un handshake para establecer una conexión. Primero, el cliente envía un paquete SYN. El paquete contiene la IP de origen. El servidor responde a la IP especificada con un paquete SYN + ACK, después de lo cual el cliente finalmente envía un ACK. Si bien es técnicamente posible falsificar la IP de origen, el servidor enviará el SYN + ACK a la dirección de origen falsificada que, naturalmente, no lo esperaría y rechazaría la conexión. Debido a que el tráfico solo se puede enviar después de completar el protocolo de enlace, solo funcionarán las direcciones IP de origen genuinas.

  

¿la lista de direcciones IP realmente agregaría alguna capa de seguridad significativa?

Si un atacante que ha robado las claves de la API solo puede usarlas para iniciar sesión en su servicio, en la lista blanca su IP no se proporcionan mejoras de seguridad. Después de todo, un atacante se conectará a la dirección de la lista blanca para (ab) usar la clave API robada de todos modos. Si, por el contrario, la preocupación es que el atacante creará una copia falsa de su sitio (por ejemplo, un ataque MITM) e intentará que su aplicación les envíe la clave de la API, pero la lista de direcciones en la lista blanca no servirá de nada. En su lugar, debe usar TLS para todas las comunicaciones y codificar la huella dactilar TLS en la aplicación. De esa manera, sus clientes pueden asegurarse de que la aplicación se negará a conectarse a un servidor no original.

    
respondido por el forest 04.08.2018 - 09:10
fuente

Lea otras preguntas en las etiquetas