Matemáticas contra el cibercrimen: cómo detectar fraude, manipulaciones y ataques de red usando la ley de Benford

Gonzalo Álvarez de Marañón    8 octubre, 2019
Matemáticas contra el cibercrimen: cómo detectar fraude, manipulaciones y ataques de red usando la ley de Benford

A principios del siglo XX, cuando todavía no existían las calculadoras ni los ordenadores ni los smartphones, los científicos e ingenieros recurrían para sus cálculos a tablas de logaritmos recopiladas en gruesos volúmenes. Por ejemplo, un atajo para multiplicar dos números grandes consiste en buscar sus logaritmos en las tablas, sumarlos (sumar es más fácil que multiplicar, ¿verdad?) y buscar finalmente en las tablas el antilogaritmo del resultado.

En los años 30, el físico Frank Benford trabajaba como investigador en General Electric. Un buen día, Benford se percató de que las primeras páginas de los libros de logaritmos estaban más gastadas que las últimas. Este misterio sólo podía tener una explicación: sus colegas buscaban números que empezaban con dígitos pequeños con más frecuencia que los que empezaban con dígitos más grandes. [1]

Como buen científico, se preguntó: ¿por qué sus compañeros y él mismo encontraban en su trabajo esa distribución de números? Intuitivamente pensamos que el primer dígito de cualquier número debería seguir una distribución uniforme, es decir, la probabilidad de que un número cualquiera empiece por 1, 2, 3, … Hasta el 9 debería ser la misma e igual a 1/9 = 11,111…%. ¡Pues no!

Benford comprobó desconcertado cómo la frecuencia de ocurrencia de dígitos en los números de muchos fenómenos naturales sigue una distribución logarítmica. Intrigado por este descubrimiento, Benford tomó muestras de datos de varias fuentes (desde las longitudes de los ríos, hasta los censos de población) y observó que la probabilidad de que el primer dígito de un número cualquiera sea igual a d viene dada por la siguiente ley logarítmica:

Pr( d ) = log( d + 1 ) – log( d ) = log ( ( d + 1 ) / d ) = log( 1 + 1 / d )

La siguiente tabla recoge todos los valores de P( d ) desde 1 hasta 9.

Probabilidades (en porcentaje) del primer dígito significativo de números que siguen la ley de Benford.

En la página Testing Benford’s Law encontrarás numerosos ejemplos de conjuntos de datos que siguen esta ley, como los números de seguidores en Twitter o la reputación de usuario en Stack Overflow.

Captura de la página Testing Benford’s Law.

La explicación de por qué forman esta distribución es (relativamente) sencilla. Fíjate en la siguiente barra de escala logarítmica. Si escoges puntos aleatoriamente en esta barra, el 30,1% de los valores caerán entre 1 y 2; el 17,6% caerán entre 2 y 3; y así sucesivamente, hasta encontrar que sólo el 4,6% de los valores caerán entre 9 y 10. Por consiguiente, en una serie numérica que siga una distribución logarítmica, habrá más números que empiecen por 1 que por otro dígito mayor (2, 3, …), habrá más números que empiecen por 2 que por otro dígito mayor (3,4, …), y así sucesivamente.

Barra de escala logarítmica.

Pero no vamos a detenernos aquí, ¿verdad? La siguiente pregunta interesante que surge es: ¿cómo se pueden identificar los conjuntos de datos que normalmente se ajustan a la ley de Benford?

Para entender la respuesta, necesitamos viajar con la imaginación a dos países bien distintos: Mediocristán y Extremistán.

En Extremistán, la ley de Benford rules

Si pones en fila a todos los empleados de tu organización y mides sus alturas, obtendrás una distribución normal: la mayoría de la gente tendrá una altura media; algunos pocos serán más bien altos y otros, más bien bajos; y un par de personas serán altísimas y otro par, bajísimas. Si un empleado llega tarde a la sesión de medición, cuando sumemos su altura al resto no alterará significativamente la media del grupo, con independencia de lo alto o bajo que sea. Si en vez de medir la altura registras el peso o las calorías consumidas cada día o el número de calzado, obtendrás resultados similares. En todos los casos, obtendrás una curva similar a la siguiente.

Distribución normal

Aprovechando que los tienes a todos reunidos, podrías anotar a continuación el patrimonio de cada uno. ¡Qué diferencia! Ahora la mayoría poseerá un capital total más bien exiguo, un grupo mucho menor habrá acumulado un capital decente, un pequeño grupo poseerá una pequeña fortuna y unos poquísimos disfrutarán de fortunas escandalosas. Y si el consejero delegado llega tarde y añadimos su patrimonio al del grupo, su impacto posiblemente será brutal en la media. Ya puestos, si mides el número de seguidores en Instagram de tus compañeros y hay alguna celebrity entre ellos, obtendrás resultados similares. Representados gráficamente, todos estos resultados tendrán una forma similar a la siguiente.

Distribución potencial

Como ves, no todas las distribuciones aleatorias son iguales. De hecho, existe una gran variedad entre ellas. Podríamos agruparlas en dos grandes categorías: las que siguen distribuciones (aproximadamente) normales y las que siguen distribuciones (aproximadamente) potenciales.

Nicholas Nassim Taleb las describe muy gráficamente en su famoso libro El cisne negro como dos países: Mediocristán, donde los sucesos individuales no aportan mucho considerados de uno en uno, sino solo de forma colectiva; y Extremistán, donde las desigualdades son tales que una única observación puede influir de forma desproporcionada en el total.

Así que respondiendo a la pregunta de qué conjuntos de datos se ajustan a la ley de Benford, claramente hablamos de datos en el país de Extremistán: grandes conjuntos de datos que comprenden múltiples órdenes de magnitud en los valores y que presentan invariancia de escala. Este último concepto significa que puedes medir tus datos usando un rango de diferentes escalas: pies/metros, euros/dólares, galones/mililitros, etc. Si la ley de frecuencia de dígitos es verdadera, debe serlo para todas las escalas. No hay ninguna razón por la que sólo una escala de medición, la que eliges por casualidad, debería ser la correcta.

Un par de restricciones adicionales para que un conjunto de datos siga la ley de Benford son que estén constituidos por números positivos, que estén libres de valores mínimos o máximos, que no estén compuestos de números asignados (como los números de teléfono o los códigos postales) y que los datos sean transaccionales (ventas, reembolsos, etc.). En estas condiciones, es posible, aunque no necesario, que el conjunto de datos siga esta ley.

Vale, tienes un conjunto de datos que se ajusta perfectamente a la ley de Benford. ¿Y de qué te sirve? Pues te sirve por ejemplo para detectar fraudes, manipulaciones y ataques de red. Veamos cómo.

Cómo aplicar la ley de Benford para luchar contra el cibercrimen

El pionero de la aplicación de la ley para la lucha contra el fraude fue Mark Nigrini, quien relata en su libro Benford’s Law: Applications for Forensic Accounting, Auditing, and Fraud Detection multitud de ejemplos fascinantes de cómo pilló a los defraudadores y timadores. Explica por ejemplo que muchos aspectos de las cuentas financieras siguen la Ley de Benford, como por ejemplo reclamaciones de gastos, transacciones con tarjeta de crédito, pedidos, préstamos, saldos de clientes, asientos de diario, precios de las acciones, precios de inventario, reembolsos de clientes, etc. Propone tests especiales, que llama análisis digital, para detectar datos fraudulentos o erróneos que se desvían de la ley cuando han sido fabricados. Encontré especialmente revelador cómo desenmascara esquemas Ponzi como el timo Madoff por culpa de los resultados financieros que, al ser inventados, no seguían la ley de Benford y hacían saltar todas las alarmas. El método no es infalible, pero funciona tan bien que estos tests han sido integrados en los programas de auditoría utilizados por los auditores de cuentas, como Caseware IDEA o ACL.

Pantallazo del análisis de Benford del programa Caseware IDEA.

En otro trabajo, los autores demostraron que las imágenes en el dominio de la Transformada Coseno Discreta (DCT) siguen de cerca una generalización de la ley de Benford y usaron esta propiedad para el estegoanálisis de imágenes, es decir, para detectar si una imagen dada lleva un mensaje oculto.

La ley de Benford también puede usarse para detectar anomalías en datos económicos y sociales recogidos en encuestas, en datos de procesos electorales, en transacciones de divisas con criptomonedas, en la dinámica de pulsaciones de teclado de diferentes usuarios o para detectar errores o manipulaciones de datos de descubrimiento de fármacos. En Benford Online Bibliography encontrarás una base de datos no comercial de acceso abierto de artículos, libros y otros recursos relacionados con la ley de Benford.

Otro caso de uso de la ley de Benford es la detección de anomalías de tráfico de Internet, como ataques DoS. Se sabe desde hace muchos años que los tiempos entre llegadas de paquetes exhiben una distribución potencial, que sigue la ley de Benford. Por el contrario, los ataques DoS, por el hecho de ser ataques de inundación, rompen cualquier normalidad de comportamiento de tráfico en una red. En concreto, los tiempos entre llegadas de paquetes no son lo suficientemente largos y aparecen como desviaciones notables de la ley de Benford, como puede apreciarse en la siguiente figura:

Análisis de Benford de los tiempos entre llegadas de paquetes que revela cuatro ataques de DoS.

Lo mejor de este método de detección de ataques DoS basado en anomalías es que, a diferencia de otros enfoques, «no requiere ningún aprendizaje, ninguna inspección profunda de paquetes, es difícil de engañar y funciona incluso aunque el contenido de los paquetes esté cifrado».

El futuro de Benford en la ciberseguridad

Biometría, estegoanálisis, fraude, ataques de red, … El mundo de la ciberseguridad está empezando a incorporar el análisis de distribución de probabilidad de leyes logarítmicas con resultados muy prometedores. Se trata de una técnica flexible, no consume apenas recursos, rapidísima y no requiere ningún tipo de entrenamiento. Exige, eso sí, que el conjunto de datos normal cumpla las condiciones suficientes para ajustarse a la ley de Benford.

La próxima vez que te enfrentes a un conjunto de datos, pregúntate si el primer dígito de cada número sigue la ley de Benford. Tal vez encuentres anomalías inesperadas.


[1] En realidad, esta misma observación fue realizada en 1881 por el astrónomo y matemático Simon Newcomb. Publicó un artículo al respecto, pero pasó desapercibido.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *