english

phpBB y spam

Publicado el 19 de Abril, 2007 a las 3:02am por Pi.
Categorías: Desarrollo.

Acabo de pasar tres horas tratando de arreglar uno de los foros phpBB que administro para que pudiese evitar spam más adecuadamente. Sin embargo, no ha sido tan fácil como esperaba. Este era un cambio necesario desde hace más de un año, pero me sentía muy perezoso para escarbar en código antiguo que cambié hace dos años, y para adaptar código nuevo a mis cambios.

Los detalles: el foro tenía phpBB 2.0.18, con algunos cambios propios. No había ninguna medida que previniese el registro de spammers. Durante más de un año, desde que el primer spammer se registró, he estado borrando manualmente los usuarios y sus mensajes de spam. También usé reglas de exclusión de dominios email e IPs, pero no es suficiente. Ayudan, pero no tanto como uno querría.

Hace como un año, descubrí phpBB KittenAuth, una implementación de KittenAuth para phpBB. Añade una bonita prueba de confirmación al proceso de registro en el foro, y esa prueba no puede ser pasada por robots spam, como ocurre con los captchas. Creo que los captchas son suficientes para los robots normales, y solo los sitios grandes necesitan preocuparse de robots sofisticados. Un robot capaz de franquear un captcha no se preocupa de sitios pequeños, se preocupa de sitios grandes.

Versiones más nuevas de phpBB incluyen un captcha, pero desafortunadamente mi versión no. Así que tenía que elegir, actualizar phpBB y usar un captcha, o quedarme con mi versión y añadir KittenAuth, una opción mejor para la prevención de spam que los captchas. Vale, pues escogí KittenAuth.

Después de una hora intentando adaptar phpBB KittenAuth a mi versión, descubrí que tenía que actualizarme por lo menos a phpBB 2.0.20 para que KittenAuth pudiese sustituir el captcha con su propia prueba. Pensaba que KittenAuth añadiría una prueba, no que sustituiría la prueba de phpBB (es decir, el captcha). Me equivoqué, así que mi esfuerzo se fue al garete (en realidad se fue a la mierda, pero no me parece apropiado usar la palabra mierda mientras escribo esto, mierda, pues ya la he usado). Afortunadamente, había hecho una copia de seguridad, y pude recuperar el sitio original.

Después de todo ese esfuerzo, parecía que de todas maneras tenía que actualizarme a por lo menos 2.0.20, que de hecho ya tiene un captcha. No fue fácil, debido al código que ya había cambiado. La única opción razonable era usar un parche. Sin embargo, eso tiene que aplicarse con un programa llamado Patch (qué original) que proviene de Unix, y cuyas versiones para Windows no son exactamente compatibles. Pasé un mal rato intentando encontrar un Patch que funcionase bajo Windows y que aceptase los parches de phpBB. Estas cosas me cabrean mucho, pero al final pude encontrar el programa, aplicar el parche, subir el nuevo foro al sitio, y finalizar la actualización en remoto. Después de unas pruebas, creo que la actualización ha sido un éxito, el captcha funciona, y todo parece que está bien. El foro ha sido actualizado a la última versión estable de phpBB, exactamente la 2.0.22.

Ahora, en vez de instalar KittenAuth, voy a ver cómo funciona el captcha de phpBB. Durante el último mes, he borrado un usuario spam cada día (de media), a pesar de lo que los usuarios del foro puedan pensar (sí, peña, seguí borrandolos diariamente). Veamos cuantos aparecen ahora. Si uno, aunque sólo sea uno aparece, cambiaré el captcha por uno más avanzado. Y si otro más aparece después de eso, instalaré KittenAuth. Tengo las imágenes listas, prepararlas me llevo la hora que falta de las que pasé con todo esto. Pero por el momento, he terminado.

4 comentarios.

Alejandro

Comment on 12:11pm.

Yo tengo exactamente el mismo problema, y he visto que tu post es del 19 de abril. Acabo de actualizar el foro, pero me gustaría saber como te ha ido a ti la experiencia.

Pi

Comment on 12:50pm.

La experiencia fatal, lo describo en otro post el 25 de mayo: KittenAuth y phpBB. En resumen, entraba incluso más spam. Pero desde que instalé KittenAuth, ni uno solo. KittenAuth para phpBB es una maravilla, te lo recomiendo 100%. Si quieres ver cómo queda, ve a http://foro.dondeyotediga.com e intenta registrarte.

Alejandro

Comment on 1:29am.

Gracias, voy a instalarlo ahora mismo.

Buscando sobre este tema he encontrado algo que, aunque no lo he probado, en mi cabeza parece que tiene bastante sentido. Básicamente se trata de llevar a cabo pequeñas personalizaciones e individualidades en los foros (tiene su lógica que cuanto más difundido está un mod, más posibilidades tiene de que lo salte).

http://soporte.miarroba.com/80376/5274701-posible-solucion-bots-spam-en-foros-phpbb/

Pi

Comment on 9:12am.

Esa explicación es incompleta e incorrecta. Aunque sí funciona, es porque ha cambiado los inputs de sitio, no porque haya cambiado de nombre cuatro variables en el código php. Igual resultado tendrías si pusieses un input extra preguntando “cuanto son 2+2″, y mirando a ver si han metido 4. Hay mods parecidos para los comentarios del WordPress.

Los spambots no son específicos, y engañarlos para que no puedan pasar un registro es a la vez extremadamente sencillo o muy difícil. Pero si todo el mundo empieza a utilizar el mismo método “sencillo”, entonces los spambots lo tendrán en cuenta y se lo saltarán. El captcha es extremadamente popular, así que llevan años saltándolo. Ahora el humanizer es popular, por lo que los spambots se lo saltan. En unos meses, alterar la página de registro con cambis sencillos será popular, y los spambots se lo saltarán.

Pero mirando al futuro, yo no veo una forma de hacer un programa que se salte un tipo de protecciones como KittenAuth. KittenAuth funciona ahora y seguirá funcionando, sin que ningún bot la pueda “romper” hasta que haya inteligencia artificial, y sin necesidad de parches tontos.

Si crees que lo has visto todo… »« Anuncio
Solo se ve bien con el corazón, lo esencial es invisible a los ojos.  — Antoine de Saint-Exupéry, de 'El Principito'

Pi in the Sky funciona con WordPress. Vestido con Vistered Little. Alojado en MochaHost.