Pasar al contenido principal
osky
Enviado por Oscar Hernández el
Seguridad y trampas: Cómo DeviceFingerprint evita que me vean la cara de pendejo (Parte 5/5)
Categoría
Tecnología

Seguridad y trampas: Cómo DeviceFingerprint evita que me vean la cara de pendejo (Parte 5/5)

Si le das a un equipo de desarrolladores y productores un portal web para checar entrada, te aseguro que en menos de 24 horas alguien va a intentar armar un script para checar desde su cama. Bienvenidos al Capítulo Final.

El problema de la confianza digital

Cuando liberé el portal de rh_mexico, sabía que la geolocalización por sí sola no bastaba. Spoofear (falsificar) la ubicación del GPS en un celular o un navegador web es más fácil que la tabla del 1. Cualquiera con una extensión de Chrome o una app de Fake GPS te puede simular que está en la oficina de Polanco mientras sigue en pijama en su casa en Satélite.

DeviceFingerprint al rescate

Para evitar esto, implementé el servicio DeviceFingerprint. No solo confío en las coordenadas que manda el navegador; hago un escaneo pasivo del dispositivo que está haciendo la solicitud.

¿Qué revisa el sistema?
1. Inconsistencia de red: Si la IP pública dice que estás en una red de Totalplay residencial, pero el GPS dice que estás en medio de un campo de festival, hay un problema.
2. Firmas de hardware/navegador: Generamos un hash con el User Agent, resolución de pantalla, plugins instalados y zona horaria. Si un usuario que siempre checa desde un iPhone 14 de repente manda un check-in desde un Linux genérico, el sistema levanta una bandera roja (flagged_for_review).
3. Validación JWT y Tokens dinámicos: Cada petición al AsistenciaProcessor va firmada con un token de corta duración generado por el ApiTokenValidator. No puedes simplemente hacer un replay attack con un curl desde la terminal.

Candados digitales

Conclusión

Al final del día, construir rh_mexico en Drupal me tomó mucho más tiempo que simplemente pagar una suscripción de Buk o cualquier otra chingadera genérica. Pero el resultado es un sistema que es 100% nuestro, que respeta la forma caótica en la que opera una agencia de eventos, y que automatiza la burocracia para que podamos enfocarnos en lo que importa.

Fin del mame. Si les latió la serie, ahí me avisan por X o donde me lean. Arre.