wp-captcha 1.0 Sistema Captcha para WordPress MU
Introducción:
Como muchos saben, WordPress® lanzó hace ya tiempo su sistema WordPress MU (Wordpress Multi Usuario) este sistema es una versión modificada del sistema WordPress original, que te permite crear un sitio en el cual puedes alojar una “infinidad” de Usuarios de los que cada uno puede tener uno o más Blogs WordPress independientes uno del otro. Como ejemplo puedes visitar el sitio de EterBlogs
Problemática:
El sistema permite a cualquier persona registrarse y crear uno o más usuarios y a su vez uno o más Blogs por usuario, el problema es que el sistema de registro no tiene ningún tipo de verificación CAPTCHA* lo que permite que cualquier Robot (Boot, Spider o como quieras llamarlo) pueda ingresar a tu página y crear Usuarios y Blogs-Spamers. Esta falta de protección puede ocasionar muchos problemas, ya que tendrás cientos o miles de Blogs haciendo publicidad (spam) en tu sistema wordpress.
Ejemplos de Catpchas
La cantidad de empresas (sobre todo chinas y estadounidenses) que se dedican a hacer este tipo de publicidad ilegal son demasiadas y parece ser que día a día van creciendo y sobre todo creando nuevos y más softisticados sistemas robots que registran blogs en sitios públicos, lo cual vuelve más tediosa y difícil la tarea de administrar y mantener un sitio creado con WordPress MU.
El problema no sólo es el tener que estar eliminando y/o marcando manualmente a estos Blogs como spam o Usuarios como spammers. ya que si queremos podemos dejarlos allí, pero el incremento de recursos del servidor puede tornarse bastante preocupante, dado que el tamaño de tu base de datos irá creciendo enormemente y exponecialmente, la cantidad de consultas a la base de datos MySQL también se incrementará y con esto obviamente el espacio en Disco Duro, El uso de MicroProcesador y por supuesto el ancho de Banda consumido por estos blogs basura.
La solución:
Integrar un sistema Captcha* es prácticamente la solucion perfecta. el problema es que WordPress no integra este sistema en su versión gratuita de WordPress MU, de hecho, ni siquiera en su sitema oficial en wordpress.com.
Asi que después de buscar algún plugin o hack que integrará un captcha en wordpress mu y no encontrar ninguna solución, me decidí a programar mi propio script captcha y algunos hacks para EterBlogs y hacerlo público para todos aquellos que quieran integrarlos en su sitios wordpress; cabe aclarar que este script puede ser usado en cualquier otro sistema web.
El nombre del script es wp-captcha, ya que originalmente fué escrito para WordPress MU y ya que el sistema puede integrarse en cualquier tipo de página web, ya sea un CMS, Script o Plugin que use un fromulario; decidí mantener el nombre pero haciendo alusión a Widespread Public - Captcha
Instalación:
Desde la shell
1.- Entra al directorio raíz de tu WordPress MU
2.- Descarga wp-captcha
# wget http://digitalsoftproject.com/software/wp-captcha/wp-captcha_01.zip
3.- Descomprime el archivo wp-catpcha.zip
#unzip wp-captcha.zip
4.- Entra a la carpeta wp-captcha y mueve los archivos wp-captcha.php, wp-captcha.jpg y VeraMoBd.ttf a la raiz de tu wordpress y si quieres elimina el directorio wp-captcha y el archivo wp-captcha.zip
# cd wp-captcha
# mv wp-captcha.* ../
# mv VeraMoBd.ttf ../
# cd ..
# rm -fr wp-captcha
# rm -f wp-captcha.zip
5.- Edita con nano vi o tu editor preferido los archivos wp-signup.php, wp-includes/wpmu-functions.php y wp-activate.php como lo indica el archivo wpmu-captcha-español-README.TXT
Via FTP
1.- Descarga wp-captcha desde aquí
2.- Descomprime el archivo wp-captcha.zip
3.- Copia los archivos wp-captcha.php y wp-captcha.jpg y VeraMoBd.ttf al directorio raíz de tu Wordpress MU
4.- Edita los archivos wp-signup.php, wp-includes/wpmu-functions.php y wp-activate.php como lo indica el archivo wpmu-captcha-español-README.TXT
Licencia:
wp-captcha es software libre y se distribuye bajo la licencia GPL (Licencia Pública General)
Sugerencias:
Cualquier sugerencia, comentario, crítica, etc. puedes hacerla aquí o por mail a oscar.rovira@gmail.com
Donaciones:
Si te ha gustado y ha sido de utilidad este script, puedes contribuir por medio de paypal a la cuenta oscar@digitalsoftproject.com
https://www.paypal.com/cgi-bin/webscr?cmd=_xclick&business=oscar%2erovira%40gmail%2ecom&item_name=wp%2dcaptcha&no_shipping=0&no_note=1&tax=0¤cy_code=USD&lc=MX&bn=PP%2dDonationsBF&charset=UTF%2d8
*Completely Automated Public Turing test to tell Computers and Humans Apart (Prueba de Turing pública y automática para diferenciar a máquinas y humanos).
Etiquetas: captcha, captcha para wordpress, codigo, hack, imagen, integrar captcha a wordpress mu, plugin, plugins, protección, script, seguridad, spam, spammers, WordPress, wordpress hackArtículos relacionados:
You can follow any responses to this entry through the RSS 2.0 feed. You can leave a response, or trackback from your own site.
Envía este artículo a un amigo












November 22nd, 2007 at 2:02 pm
[...] wp-captcha Versión Español [...]
November 23rd, 2007 at 2:04 pm
Hola Oscar, un placer mis visitas aquí, donde encuentro el impulso del animo que me empuja en la aventura del cambio, pues da envidia la diferencia, haber, yo le tengo mucho cariño al Space, pero siempre aparece la inquietud de nuevas experiencias, en fin; valorare mis posibilidades, imagino que tampoco será de una dificultad extrema. En fin; buen fin de semana amigo, cuidate.
December 4th, 2007 at 5:13 am
Hola, estoy intentando integrar el Captcha en el WP MU pero me da un error:
Warning: imagettftext(): Could not find/open font in /…asdfgasdfg…/blogs/wp-captcha.php on line 50
Los ficheros se han subido/modificado con exito.
Aprovecho para preguntarte si hay alguna traducción completa al castellano del WP MU, he puesto la de WP normal y hay partes que quedan sin traducir.
Un saludo y enhorabuena por el blog. Y gracias por el contenido
December 4th, 2007 at 3:07 pm
Hola josémari
La línea 50 es la siguiente:
50 imagettftext( $captcha_image, 25, 3, 40, 40, $text_color, ‘VeraMoBd.ttf’, $key );
51 $lines_to_draw = mt_rand (10, 20);
En esa línea uso la funcion imagettftext la cual sirve para escribir sobre una imágen, la variable $captcha_image está configurada en la línea 28, que es la siguiente:
28 $BG_Image=”wp-captcha.jpg”;
Ahí debe de estar indicado el nombre de archivo que usaras como fondo para el captcha, puedes indicar la ruta absoluta o dejar sólo el nombre del archivo si es que haz puesto el archivo en la raíz de tu wordpress mu.
Asegurate de que esté la imágen en formato jpg, que el nombre sea el mismo (wp-captcha.jpg)
December 13th, 2007 at 5:34 am
Ya lo he arreglado. El problema, como me temía, estaba en los paths, y lo he podido reparar poniendo un ./ tanto a la imagen para el captcha como a la fuente que se usa (dejo el comentario por si le es útil a alguien).
Un saludo y gracias.
December 23rd, 2007 at 1:17 pm
mira instale el wp mu, pero no soy usuario blogs, lo puse para que la gente tuviese su espacio… ahora bien tengo problemas… con los registros… cada usuario tiene su cuenta? por que no les manda contraseñas a nadie… y a mi me visa que hay un nuevo blog, no entiendo? , lo puse en español, y le agregue themes, algunos plug ins, como arreglo esto? o esta bien asi?
http://www.blog.ya1111.com
http://www.ya1111.com
si alguien me puede dar una ayuda con el tema…
o alguien me puede recomendar plugg inns…
March 5th, 2008 at 11:57 am
Hola, he agregado las lineas de codigo que dice en el txt de ayuda, y veo la imagen del captcha bien en el signup.php
Instale la ultima version de wordpress mu la 1.3.3, pero cuando un usuario escribe el codigo de verificacion para registrarse no pasa de la pantalla de signup, es decir, no llega a la pantalla de que se le ha enviado un mail.
Para cerciorarme de que no era otro el problema quite el codigo de captcha de los archivos y entonces si se pueden registrar, cual puede ser el problema?
*no da ningun error, sino que despues de colocar el codigo de verificacion y pulsar para registrarse vuelve a la misma pagina.
June 19th, 2008 at 5:28 pm
Hola a todos,
Lo mismo me ocurre a mi. He instalado el captcha siguiendo todas las indicaciones al dedillo.
Pero ocurre el siguiente problema:
- Usuario quiere registrarse.
- Escribe su nombre de usuario, email, código captcha y pulsa siguiente.
- Ahora compone la url para su blog, escribe el título del blog y pulsa en siguiente (para finalizar el registro).
Pero en vez de presentar “Tu registro a finalizado, bla bla bla..”, el navegador devuelve al usuario a la página donde debe introducir de nuevo el captcha.
¿Alguna sugerencia?