Gravatar de Armonth

Captcha y un error de usabilidad horrible

Llevo un tiempo comprobando que muchos de los sistemas de Captcha padecen de un error de usabilidad horrible (muy molesto) y no, no es el problema de usabilidad implicito que llevan para los invidentes.

La idea básica es que muchos de los captchas requieren cookies y una vez has rellenado el formulario pones correctamente el Captcha y al no tener cookies (normalmente las tienes bloqueadas) te salta el siguiente o similar mensaje:

Captcha error: invalid security code. Click back button in your browser and try again.

Suele ser muy habitual en blogs con WordPress + Captcha o en directorios de enlaces, si bloqueas las cookies — cosa que tampoco es que sea poco habitual, muchos programas las bloquean por defecto — debería aparecer un mensaje indicándolo correctamente, por ejemplo:

Captcha error: cookies not found.

El último caso en que me ha pasado, para ilustrar el suceso, es el de Jordisan.net una instalación de WordPress + Captcha que para escribir un comentario me ha obligado a desbloquear las cookies (después de rellenar el formulario dos veces pensando que era culpa mía).

Soluciones a aplicar:

  1. No requerir cookies para rellenar un captcha.
  2. De hacerlo, informar correctamente del error.

Y por último algo muy importante: cuando salte un error relacionado al captcha no te fíes del botón atrás del navegador, a menudo se pierden los datos introducidos. Es mejor ofrecer el formulario ya rellenado con el error arriba destacado y/o añadiendo una marca — por ejemplo un borde rojo — al campo incorrecto.

11 Comentarios (feed)

  1. Gravatar de javier javier nos comenta:

    Lo mas importante de todo es que los captcha no sirven para nada. Hay spam que se sigue colando igual.

    Lunes, 11 de Diciembre/2006 @ 22:58

  2. Gravatar de jordisan jordisan nos comenta:

    Armonth, tomo nota del error y veré qué se puede hacer. Estoy de acuerdo en que es mejor que no requiera cookies, pero el ‘captcha’ es un plugin que instalé “tal cual” y no lo probé a fondo.

    javier, yo tengo poco volumen de comentarios, pero en mi caso el ‘captcha’ ha funcionado perfectamente; desde que lo instalé (hace ya varias semanas) sólo se me ha colado 1 comentario de un spambot; antes tenía no menos de 3-4 cada día.

    Lunes, 11 de Diciembre/2006 @ 23:38

  3. Gravatar de Armonth Armonth nos comenta:

    Javier si se cuela es por que de algún modo se lo saltan: O envian la información directamente mediante un GET al formulario (la mayoría de bots nisiquiera entra en tu web, va directamente al wp-comment-post.php) y se lo salta.

    O eso o en tu caso han llegado al siguiente paso “lógico” en la evolución del spam: pagar una miseria a personas para que manualmente metan spam.

    Yo actualmente ando en los 100 o 120 comentarios spam al día pero no es para tanto :P

    Martes, 12 de Diciembre/2006 @ 0:01

  4. Gravatar de javier javier nos comenta:

    Armonth lo más seguro sea lo que dices no lo había pensado así :)

    Miércoles, 13 de Diciembre/2006 @ 10:20

  5. Gravatar de Armonth Armonth nos comenta:

    Ok. Pd: Te edito mi nick, que se me pone cara de blog :\

    Miércoles, 13 de Diciembre/2006 @ 15:54

  6. Gravatar de Reboot Reboot nos comenta:

    He pasado por este problema hace poco desarrollando una implementación sencilla de un captcha en mi web.

    Es lógico el uso de cookies por una razón: Normalmente utilizas sesiones para guardar a nivel de servidor el código captcha que tienes que acertar.

    ¿Workarounds?
    1. Encriptar el código y pasarlo a la rutina de comprobación mediante un campo más de formulario (esta opción la usé en mi primera prueba de captcha y funcionaba, pero es crackeable, como toda encriptación)

    2. Enviar la id de sesión a través de campos de formulario o empaquetada en la propia URL (como puede hacer, o hacía, Java años ha)

    Ambas opciones pueden suponer un compromiso en la seguridad, sobre todo la primera.

    Jueves, 14 de Diciembre/2006 @ 22:42

  7. Gravatar de Reboot Reboot nos comenta:

    Perdón por el doble-post:

    “Lo mas importante de todo es que los captcha no sirven para nada. Hay spam que se sigue colando igual.”

    Joer, ¿y cómo se lo saltan? No creo que sea saltándose el captcha, sino por inyección SQL por culpa de alguna vulnerabilidad de tu CMS.

    Solución: Hazte un CMS casero :D

    Jueves, 14 de Diciembre/2006 @ 22:46

  8. Gravatar de Armonth Armonth nos comenta:

    Reboot yo creo que simplemente se le están metiendo porque el script al que llama el formulario no tiene en cuenta pedir que el Captcha esté activo y sí lo tiene el formulario.

    Viernes, 15 de Diciembre/2006 @ 2:59

  9. Gravatar de Covi Covi nos comenta:

    Lo cierto es que usar cualquier sistema antispam ya de por sí parece ser antiusable y molesto para el usuario empezando por un campo más a rellenar, por la dificultad que el campo pueda implicar (para usuarios con algún tipo de disfuncionalidad visual) si es captcha y en general por no ser algo demasiado estándar en un formulario.

    …pero, estamos con lo mismo de siempre, devaneándonos los sesos entre sitios usables y accesibles o quizás algo práctico.

    Personalmente, sin mucho tráfico de comentarios excepto SPAM ^^, “Akismet” me bloqueaba alrededor de 100 posts spam casi diarios, hace poco engancharon otro blog que administro con WP también: más de lo mismo.
    Akismet a mí me funciona a la perfección… pero no evita la inserción de entradas en la DB, se necesita por lo tanto un captcha o algo así, y en este sentido he de decir que el plugin: SecureImage a mí me está funcionando a la perfección.
    Eso sí, no tengo gestión ni control de los intentos SPAM (ya que sería tan tedioso y antifuncional como Akismet) y he de suponer que muchos de los comentarios “legales” se quedan en un error del formulario del captcha principalmente, por mucho que mantengamos los datos del formulario y la funcionalidad (casi perdida) del botón “atrás” del explorador.

    Pero es lo mismo de siempre… qué estamos dispuestos a pagar por evitar el putísimo posteo spam de los cojones :(

    Un saludo ;)

    Jueves, 4 de Enero/2007 @ 15:22

  10. Gravatar de Covi Covi nos comenta:

    Por cierto (y perdón por escribir otro comentario), Reboot, hay código para saltarse el captcha sin inyección a la DB, hace poco estuve leyendo un artículo de las técnicas usadas e incluso me bajé el script creo recordar.
    No entiendo mucho de esto pero se basa en el aprendizaje y reconocimiento de los caracteres usados, es independiente del sistema usado, ya sea foro, cms, blog… esto sería tema del chequeo que haga después el sistema pero vamos, que en sí no está dirigido a un sistema en concreto.
    Por eso, cada vez los captcha son más complejos y antiusables quizás también :) : fondos no uniformes, códigos sin organización lineal, mezcla de colores para los caracteres… no podemos olvidar que, bueno, el SPAM en cierta medida es parte de nosotros, es algo que mejoramos involuntariamente mientras más lo combatimos e incluso lo potenciamos buscando vulnerabilidades de nuestro sistema.

    En mi humilde experiencia los mejores bots para captcha están dirigidos, como no, a los foros phpbb donde sí que en mi caso he visto saltarse el captcha aunque son pocos por ahora.

    Un sistema CMS casero, desde luego y obviando el tema de reinventar la rueda: pues sí, sería lo suyo si consigues implementar toda la funcionalidad actual de los CMS hacía las redes sociales no?… que de eso se trata :)
    En mi caso siempre encontré problemas a la hora de la retroalimentación automática… :) , el concepto y el sistema me atrae tanto que… como tanta otra gente te vendes a los sistemas prefabricados… y qué? xD

    Jueves, 4 de Enero/2007 @ 15:39

  11. Gravatar de Armonth Armonth nos comenta:

    Covi no te preocupes por postear doble (si te dejaste cosas por decir, es lo lógico):

    Pero es lo mismo de siempre… qué estamos dispuestos a pagar por evitar el putísimo posteo spam de los cojones :(

    Yo por los comentarios de los lectores (que son la salsa del blog) lo que haga falta, ¡oiga!, mal que me pese…

    Una vez ya lo discuti, el siguiente paso son los “problemas lógicos” rollo una o dos preguntas aleatorias tipo ¿cuál es el título del post? ¿el título del blog? ¿cuánto es la suma de 50 y 50?, el problema es que cuando se generalice eso el spam pasará a consistir en personas contratadas a 2 duros la hora en un país del tercer mundo para que metan el spam a mano revisando los formularios…

    Jueves, 4 de Enero/2007 @ 17:09

Comentarios cerrados