Saltar al contenido
verificaOTP

Capítulo 3 de 5 · 13 min de lectura

Velocidad y señales de dispositivo

Detecta patrones anómalos antes de enviar el código, cuando aún es barato decir que no.

El mejor momento para frenar fraude es antes de enviar el mensaje: todavía no pagaste y el atacante no obtuvo nada. Las reglas de velocidad y las señales del dispositivo te dan ese punto de decisión.

Reglas de velocidad

  • Emisiones por número: por ejemplo, 5 por hora.
  • Emisiones por IP o subred: detecta granjas que rotan números.
  • Números distintos por dispositivo: un equipo que verifica 30 números en una hora no es un usuario.
  • Prefijos secuenciales: +56 9 1111 0001, 0002, 0003… es la firma de AIT.

Señales de dispositivo

En apps móviles, las APIs de integridad de plataforma confirman que la petición viene de tu app sin modificar en un dispositivo real. En web, combina señales de sesión: antigüedad de la cookie, coherencia entre zona horaria e IP, y si hubo interacción humana antes del pedido.

type Decision = "allow" | "challenge" | "deny";

export function decide(s: { perPhoneHour: number; perIpHour: number; appAttested: boolean }): Decision {
  if (s.perPhoneHour > 5 || s.perIpHour > 50) return "deny";
  if (!s.appAttested || s.perIpHour > 10) return "challenge";
  return "allow";
}

La regla de prefijos secuenciales merece un ejemplo concreto: si en una hora ves solicitudes para +56 9 7001 0001, 0002, 0003 y 0004, casi nadie compra SIMs reales en ese orden exacto. Es el patrón típico de un script que recorre un rango asignado o recién portado, y suele preceder una ráfaga de AIT.

La calibración de los umbrales importa tanto como la lógica. Un umbral de 5 solicitudes por número por hora es razonable para un flujo de login, pero demasiado estricto para un negocio donde una familia comparte el mismo router y varios integrantes verifican su cuenta la misma tarde, por ejemplo durante una oferta de CyberDay cuando todos registran su RUT para una promoción al mismo tiempo.

Aplicando la regla en el playground

Se marca completado al leer el 80%.

Comentarios (3)

Se guardan solo en tu navegador.

  • Esteban Rivas11 oct

    La regla de prefijos secuenciales detuvo un ataque AIT a las 3 AM un domingo. Nadie se enteró hasta el lunes.

  • Macarena Díaz12 oct

    ¿Cómo manejan IPs compartidas de universidades o redes corporativas?

    • Equipo verificaOTP12 oct

      Umbrales por IP más altos y combinados con señales de dispositivo. La IP sola nunca debería decidir un rechazo.