Por qué los filtros de palabras clave en transferencias bancarias ya no son suficientes
Cada día, millones de transferencias bancarias pasan por sistemas de monitoreo que buscan palabras sospechosas en los conceptos de pago. Si alguien escribe "narco", "lavado" o "fentanilo" en la descripción de una transferencia, el sistema genera una alerta. Es un mecanismo simple, directo, y durante años ha sido la primera línea de defensa contra el lavado de dinero y otros delitos financieros.
El problema es que los criminales ya aprendieron cómo funciona.
El juego del gato y el ratón
Lo que observamos en instituciones financieras mexicanas es una realidad incómoda: los actores maliciosos manipulan el texto de las transferencias de formas que el ojo humano no distingue, pero que hacen que los filtros automáticos fallen por completo.
Imaginemos que un sistema tiene la palabra "lavado" en su lista de alerta. Un actor malicioso puede escribir exactamente lo mismo —visualmente idéntico— pero sustituyendo la letra "a" latina por la "a" cirílica. Son dos caracteres Unicode completamente distintos que se ven exactamente igual en pantalla. El filtro no lo detecta. El analista que lo revisa manualmente tampoco nota nada raro.

Y eso es solo una de las técnicas. También insertan caracteres invisibles de ancho cero en medio de las palabras, usan números en lugar de letras ("p3ric0" en vez de "perico"), agregan puntos entre cada carácter ("n.a.r.c.o"), duplican letras, o simplemente migran a nueva jerga que aún no está en el diccionario del filtro. Investigaciones recientes demuestran que estas técnicas pueden evadir más del 95% de los clasificadores convencionales.

La conclusión es clara: buscar coincidencias exactas de palabras clave ya no es una defensa viable por sí sola.
Una propuesta para cerrar la brecha
En Backbone Systems trabajamos en el desarrollo de software para prevención y detección de crímenes financieros, y este problema nos toca de frente. Por eso publicamos un artículo de investigación donde documentamos sistemáticamente estas técnicas de evasión y proponemos una solución concreta: un pipeline de defensa multicapa.
La idea central es que ningún mecanismo único de detección puede cubrir todo el espectro de ataques. En lugar de depender de una sola técnica, construimos un sistema donde cada capa resuelve un tipo específico de manipulación:

La primera capa normaliza el texto a nivel Unicode. Elimina caracteres invisibles, descompone caracteres compuestos, quita acentos para permitir coincidencia flexible, y traduce homoglifos cirílicos y griegos a sus equivalentes latinos. Después de esta capa, "lavado" escrito con caracteres cirílicos se convierte en el mismo "lavado" que el filtro espera encontrar.
La segunda capa resuelve perturbaciones tipográficas. Convierte "p3ric0" de vuelta a "perico", colapsa "n.a.r.c.o" a "narco", y reduce "seecuestrro" a "secuestro".
La tercera capa aplica coincidencia difusa. Usando distancia de Damerau-Levenshtein, tolera un número controlado de errores para atrapar variantes que las capas anteriores no resolvieron completamente, como transposiciones de letras ("nacro" en vez de "narco").
La cuarta capa detecta anomalías Unicode como señal de riesgo independiente. Si una transferencia mezcla caracteres latinos con cirílicos o contiene caracteres invisibles, eso por sí solo ya es sospechoso, independientemente de si se encuentra una palabra clave.
Finalmente, una capa semántica usa embeddings de oraciones multilingues para detectar evasión por significado: cuando los criminales migran a jerga nueva que no está en ninguna lista, el sistema puede identificar que la descripción de la transferencia es semánticamente cercana a actividad ilícita.
Los resultados
En nuestras pruebas, el pipeline detectó exitosamente las seis categorías de ataque adversarial que documentamos, sin generar falsos positivos en transacciones legítimas. Los ataques de homoglifos y caracteres invisibles recibieron las puntuaciones de riesgo más altas, precisamente porque combinan la evasión del filtro con una señal de anomalía Unicode que delata la manipulación intencional.
Lo más importante: todo el sistema está diseñado para ser auditable. Cada alerta viene con una explicación de por qué se generó, qué capa la detectó y qué tipo de manipulación se encontró. Esto es fundamental para cumplir con las regulaciones mexicanas de prevención de lavado de dinero (LFPIORPI) y los requisitos de la CNBV.
El objetivo real
El objetivo no es construir un sistema de detección perfecto. Es hacer que la evasión sea tan costosa y compleja que el esfuerzo necesario para eludir la detección supere el beneficio de la transacción ilícita. Cuando sofisticar un ataque adversarial cuesta más de lo que vale la operación que intenta ocultar, la disuasión funciona.
Si te interesa profundizar en los detalles técnicos, el artículo completo está disponible y contiene implementaciones funcionales en Python de cada capa del pipeline, listas para ser adaptadas e integradas en sistemas de monitoreo transaccional existentes.
Deep fakes no son el problema: la amenaza real al KYC en México son los acarreados
La industria está obsesionada con los deep fakes, pero en México la amenaza real al KYC no requiere inteligencia artificial — solo un camión...
Comentarios (0)
Sé el primero en comentar.
Deja un comentario