Los filtros bayesianos de spam calculan la probabilidad de que un mensaje sea spam basándose en su contenido. A diferencia de los simples filtros basados en contenido, el filtrado de spam bayesiano aprende del spam y de un buen correo, lo que resulta en un enfoque antispam muy robusto, adaptable y eficiente que, lo mejor de todo, apenas devuelve falsos positivos.
Índice de contenidos
¿Cómo se reconoce el correo basura?
Piense en cómo detectar el spam. Una mirada rápida es suficiente. Usted sabe cómo es el spam, y sabe cómo es un buen correo.
La probabilidad de que el spam parezca buen correo es de alrededor de… cero.
Puntuación de los filtros basados en contenido no se adaptan
¿No sería genial si los filtros automáticos de spam también funcionaran así?
Los filtros de spam basados en contenidos lo intentan. Buscan palabras y otras características típicas del spam. A cada elemento característico se le asigna una puntuación, y a partir de las puntuaciones individuales se calcula una puntuación de spam para todo el mensaje. Algunos filtros de puntuación también buscan las características del correo legítimo, lo que reduce la puntuación final de un mensaje.
El enfoque de los filtros de puntuación funciona, pero también tiene varios inconvenientes:
- La lista de características se construye a partir del spam (y el buen correo) disponible para los ingenieros del filtro. Para tener una buena idea del típico spam que cualquiera puede recibir, el correo debe ser recolectado en cientos de direcciones de correo electrónico. Esto debilita la eficiencia de los filtros, especialmente porque las características de un buen correo serán diferentes para cada persona, pero esto no se tiene en cuenta.
- Las características a buscar son más o menos establecidas en stone. Si los spammers hacen el esfuerzo de adaptarse (y hacen que su spam parezca un buen correo a los filtros), las características de filtrado tienen que ser ajustadas manualmente – un esfuerzo aún mayor.
- La puntuación asignada a cada palabra se basa probablemente en una buena estimación, pero sigue siendo arbitraria. Y al igual que la lista de características, no se adapta al cambiante mundo del spam en general ni a las necesidades de un usuario individual.
Los filtros de spam bayesianos se retocan a sí mismos, mejorando y mejorando
Los filtros de spam bayesianos también son una especie de filtros basados en contenido de scoring. Sin embargo, su enfoque elimina los problemas de la simple calificación de los filtros de spam, y lo hace de manera radical. Dado que la debilidad de los filtros de puntuación está en la lista de características construida manualmente y sus puntuaciones, esta lista se elimina.
En su lugar, los filtros bayesianos de spam construyen la lista ellos mismos. Idealmente, usted comienza con un (gran) montón de correos electrónicos que ha clasificado como spam, y otro montón de buen correo. Los filtros analizan tanto el correo legítimo como el spam para calcular la probabilidad de que aparezcan varias características en el spam y en el correo bueno.
Cómo un filtro bayesiano de spam examina un correo electrónico
Las características que un filtro de spam bayesiano puede ver pueden ser:
- las palabras en el cuerpo del mensaje, por supuesto, y
- sus encabezados (remitentes y rutas de mensajes, por ejemplo!), pero también
- otros aspectos como el código HTML/CSS (como colores y otros formatos), o incluso
- pares de palabras, frases y
- meta información (donde aparece una frase en particular, por ejemplo).
Si una palabra, «cartesiano» por ejemplo, nunca aparece en el spam, pero a menudo en el correo electrónico legítimo que recibe, la probabilidad de que «cartesiano» indique spam es casi nula. El «tóner», por otro lado, aparece exclusivamente, y a menudo, en el spam. El «tóner» tiene una probabilidad muy alta de ser encontrado en el spam, no muy por debajo de 1 (100%).
Cuando llega un nuevo mensaje, es analizado por el filtro de spam bayesiano, y la probabilidad de que el mensaje completo sea spam se calcula utilizando las características individuales.
Suponga que un mensaje contiene tanto «cartesiano» como «tóner». De estas palabras por sí solas todavía no está claro si tenemos spam o correo legítimo. Otras características (esperemos y muy probablemente) indicarán una probabilidad que permita al filtro clasificar el mensaje como spam o como buen correo.
Los filtros de spam bayesianos pueden aprender automáticamente
Ahora que tenemos una clasificación, el mensaje puede ser usado para entrenar el filtro en sí mismo. En este caso, o bien se reduce la probabilidad de que «cartesiano» indique que el correo es bueno (si el mensaje que contiene tanto «cartesiano» como «tóner» es spam), o bien se debe reconsiderar la probabilidad de que «tóner» indique spam.
Usando esta técnica de auto-adaptación, los filtros bayesianos pueden aprender tanto de sus propias decisiones como de las del usuario (si corrige manualmente un error de juicio por parte de los filtros). La adaptabilidad del filtrado bayesiano también asegura que sean más efectivos para el usuario individual de correo electrónico. Mientras que el spam de la mayoría de la gente puede tener características similares, el correo legítimo es característicamente diferente para todos.
¿Cómo pueden los spammers pasar los filtros bayesianos?
Las características del correo legítimo son tan importantes para el proceso de filtrado de spam bayesiano como lo es el spam. Si los filtros son entrenados específicamente para cada usuario, los spammers tendrán aún más dificultades para trabajar con los filtros de spam de todo el mundo (o incluso de la mayoría de la gente), y los filtros pueden adaptarse a casi todo lo que los spammers intentan.
Los spammers sólo pasarán los filtros bayesianos bien entrenados si hacen que sus mensajes de spam se parezcan perfectamente al correo electrónico ordinario que todo el mundo puede recibir.
Los spammers no suelen enviar este tipo de correos electrónicos ordinarios. Supongamos que esto se debe a que estos correos electrónicos no funcionan como correo basura. Por lo tanto, lo más probable es que no lo hagan cuando los correos electrónicos ordinarios y aburridos son la única manera de pasar los filtros de spam.
Sin embargo, si los spammers cambian a correos electrónicos de apariencia más común, veremos mucho spam en nuestras bandejas de entrada de nuevo, y el correo electrónico puede llegar a ser tan frustrante como lo era en los días prebayesianos (o incluso peor). También habrá arruinado el mercado para la mayoría de los tipos de spam, sin embargo, y por lo tanto no durará mucho tiempo.
Los indicadores fuertes pueden ser el talón de Aquiles de un filtro de spam bayesiano
Una excepción puede ser percibida por los spammers que se abren paso a través de los filtros bayesianos incluso con su contenido habitual. Está en la naturaleza de las estadísticas bayesianas que una palabra o característica que aparece con mucha frecuencia en un buen correo puede ser tan significativa como para convertir cualquier mensaje de parecer spam a ser clasificado como jamón por el filtro.
Si los spammers encuentran una manera de determinar sus palabras de correo electrónico seguro -utilizando recibos de devolución HTML para ver qué mensajes ha abierto, por ejemplo-, pueden incluir uno de ellos en un correo basura y llegar a usted incluso a través de un filtro bayesiano bien entrenado.
John Graham-Cumming lo ha intentado dejando que dos filtros bayesianos funcionen uno contra el otro, el «malo» que se adapta a los mensajes que se encuentran para pasar por el filtro «bueno». Dice que funciona, aunque el proceso es lento y complejo. No creemos que esto ocurra en gran medida, al menos no a gran escala, y que no se adapte a las características de los correos electrónicos de las personas. Los spammers pueden (tratar de) averiguar algunas palabras clave para las organizaciones (algo como «Almaden» para algunas personas en IBM tal vez?) en su lugar.
Por lo general, el spam siempre será (significativamente) diferente del correo normal o, sin embargo, no será spam.
El balance final: La fuerza del filtrado bayesiano puede ser su debilidad
Los filtros bayesianos de spam son filtros basados en contenido que:
- están específicamente entrenados para reconocer el spam y el buen correo del usuario de correo electrónico individual , lo que los hace altamente efectivos y difíciles de adaptar para los spammers.
- puede continuamente y sin mucho esfuerzo o análisis manual adaptarse a los últimos trucos de los spammers.
- tener en cuenta el buen correo del usuario individual y tener una tasa muy baja de falsos positivos .
- Desafortunadamente, si esto causa una confianza ciega en los filtros antispam bayesianos, hace que el error ocasional sea aún más grave . El efecto contrario de falsos negativos (spam que se ve exactamente igual que el correo normal) tiene el potencial de molestar y frustrar a los usuarios.