Nov 15

Efecto del crackeo del sitio

 

Como comenté hace unos días, me habían crackeado el sitio y habían metido spam. Google me sacó de los buscadores durante unos días hasta que solucioné el problema. Desde entonces vigilo el sitio y, toco madera, de momento no ha vuelto a suceder. De todas formas, ahí va el efecto en las visitas al desaparecer de google. El gráfico corresponde al foro, donde el efecto es más drástico, ya que apenas hay enlaces exteriores a post del foro y casi todas las visitas provienen de los buscadores.

efecto en las visitas al desaparecer del buscador google

Oct 31

Actualizando mediawiki

 

Respecto al crackeo sufrido, me puse manos a la obra. Borré los scripts maliciosos que me habían puesto en la página y estuve vigilando el log de errores de acceso, para ver desde qué IP intentaban acceder a ellos. Una vez localizada la IP, la he "baneado"  (supongo que no servirá de mucho, porque el que sea tendrá posibilidad fácil de cambiarse de IP) y he visto que después de los accesos fallidos ha intentado acceder a la Chuwiki.

Pues bien, wordpress (este blog) y el SMF (el foro de java) se actualizan muy fácilmente. Basta entrar como administrador y el mismo panel de control te avisa de que hay una versión nueva. Le das a un botón y se actualiza todo solo. Pero no es así con mediawiki y por eso no tenía actualizada mediawiki a la última. De hecho, la versión es la primera que instalé hace ya fácilmente tres años. Tiene toda la pinta de que se han colado por ahí, explotando alguna vulnerabilidad de la mediawiki (aunque no tengo ninguna garantía). Por ello la he actualizado a la última…. ¡¡ y me he entretenido un montón !!.

Resulta que la actualización es más o menos sencilla, basta con hacer el consabido backup por si acaso, desempaquetar la nueva mediawiki sobre la antigua, tocar un fichero para poner el usuario y password de base de datos y  … ¡¡ ejecutar un script php desde línea de comandos !!. En este último punto es donde ha venido el entretenimiento.

No puedo ejecutar ese script llamándolo desde el navegador. El script detecta que no se está haciendo desde la máquina local y te dice que no tienes permisos. Tampoco tengo acceso a una línea de comandos de mi proveedor. Bueno, quizás sí tengo acceso, pero con todo el tema de certificados de seguridad, firmas digitales y demás que por un lado, no tengo ni idea de cómo se hace y que por otro lado, desde mi windows, no es tan sencillo y hay que andar instalando cosas como Putty. Así que por no echarme unas horas con eso, busqué otro método.

Y encontré uno la mar de entretenido. Resulta que desde mi panel de control web puedo programar tareas a ejecutarse en el servidor (comando cron para los que sabe de linux). Así que a eso me puse.

  1. Comando cron para ejecutar "php -version" cada cinco minutos y recibir el correo con la salida del comando. Esto me sirve para saber si está el ejecutable php accesible. Lo de cada cinco minutos es porque como el servidor está en estados unidos, cualquiera adivina su hora exacta. Y cinco minutos para darme tiempo a recibir el correo y parar el cron. antes de que se ejecute por segunda vez. Correo afirmativo, está accesible php.
  2. Ahora otro cron cada cinco minutos para ejecutar un ‘pwd’ (ver el directorio en el que se ejecuta el cron) y así saber que path tengo que poner para llegar al script de php. A los cinco minutos, ya sé el directorio de ejecución.
  3. Y finalmente otro cron ejecutar el comando ‘php path/update_wiki.php’. Espera y ejecución correcta. Pruebo la wiki recién instalada y funciona bien, salvo un pequeño susto que comento al final.

Bueno, lo del cron no es que sea nada del otro mundo, pero lo que me ha llamado muchísimo la atención es la forma rupestre de ir ejecutando los comandos. Es como si estuviras programando un satélite a dos minutos luz. Ejecutas el comando y entre que va y vuelve, esperas cinco minutos por el resultado (lo siento, leo mucha ciencia ficción).

Y una pequeña estupidez de la actualización. Resulta que han cambiado la página principal de la mediawiki y ahora, en vez de "Portada", se llama "Página Prncipal", así que me llevé un pequeño susto cuando veo por primera vez la wiki recién instalada y aparace la página incial vacía.

 

ACTUALIZACIÖN: Mandé el Jueves la solicitud a google para volver a aparecer en el buscador y hoy, sábado, parece que ya aparezco. 🙂

Jul 10

Exito con pretty urls para SMF

Como comenté hace unos días, había instalado el plugin pretty-urls en mi foro SMF. Pues bien, dos semanas después y habiendo quitado el sitemap de google webmaster tools, reviso las estadísticas de visitas y aparentemente van subiendo notablemente. Parece quedar demostrado que es importante para salir bien en el buscador de google tener palabras interesantes en la url, y no números feos.

Ahí va el gráfico de estadísticas del último mes.

Estadísticas de visitas con pretty-urls

Jul 05

Todopoderoso Google

Se me ha ocurrido mirar el dominio chuidiang.com en el ranking alexa, más que nada por curiosidad y he aquí el resultado

ranking alexa chuidiang.com

Lo que me ha llamado la atención es el escalón de subida a mediados de Mayo y el escalón de bajada a mediados de Junio. Yo no he hecho nada especial en mi página ni en una fecha ni en la otra. Tampoco creo que una pequeña multitud de webmaster hayan decidido enlazar con mi página y un mes después esa pequeña multitud haya decidido quitar los enlaces.

Aunque no puedo probarlo, lo más probable es que google haya hecho algún experimento con su algoritmo de búsquedas, pageranks o cualquier cosa. Igual les ha dado por experimentar con un coeficiente del algoritmo o cualquier tontería similar. El resultado de ese experiemento es que el número de visitas a mi página se incrementa casi al doble y luego vuelve incluso algo por debajo de lo normal.

A mi no me va nada en ello, me gusta que la gente visite mi página, pero tampoco me supone un trauma si no lo hacen. Pero ¿qué pasa con una empresa cuyo negocio depende fuertemente del número de visitas a su página? Un pequeño experimento de google puede hacer que su volumen de ventas se duplique, o que caiga a la mitad. Todopoderoso google.

May 14

chuidiang-editores

 

Acabo de subir a google-code los fuentes de otro pequeño proyecto que me traigo entre manos, chuidiang-editores.

De momento son simplemente unas clases que heredan de JFormattedTextField y hace de editores simples: un EditorNumerico, EditorDate, EditorLongitud, EditorLatitud, etc. Por supuesto, intentando que sólo admitan números correctos, que se puedan poner restricciones, como que el número esté entre un mínimo y un máximo, etc.

También hay un EditorPanelGeneral. Es un JPanel al que se añaden editores de una forma simple y él se encarga del Layout y de colocarlos de forma automática. Este JPanel admite como dato un Hashtable. Con las claves identifica a qué editor pertenece el dato y se lo pasa. En el método getDato() devuelve un Hashtable con los datos de cada uno de los editores.

Y eso es más o menos lo que hay. La intención final es ligar todo esto con base de datos, de forma que para un conjunto de columnas dadas de unas tablas, se construya automáticamente el formulario y más adelante, facilitar también el tema de consultas e inserciones, así como la presentación en un JTable de los resultados, con sus botones de crear/editar/borrar, filtro, etc.

Ahí van algunos enlaces:

y sólo falta lo de siempre, porque empezar he empezado con ganas. Lo que hay que ver es lo que dura.

Apr 21

Más spam en la Chuwiki

Llevo unos días recibiendo spam en la Chuwiki. Varias veces al día crean una página de nombre "Titulo incorrecto" con un montón de enlaces de spam y desde IPs distintas.

Llevo varios días borrando esa página. Al ver que el tema seguía, me decidí a bloquear las IPs de donde proviene ese spam, pero parece que no se les acaban. Seguramente están usando un proxy de IP dinámica, de esos que sirven para ocultar la IP real.

Mirando en la documentación de MediaWiki veo que existen cosas como Captchas estilo ConfirmEdit, pero no parece que sea de fácil instalación y sobre todo porque en los primeros párrafos empiezan a contar rollos de versiones que, por supuesto, yo no tengo.

Así que al final, encontré cómo hacer para que un usuario no registrado no pueda crear páginas, que básicamente consiste en editar el fichero LocalSettings.php y añadirle una línea como

$wgGroupPermissions[‘*’][‘create’] = false;

con lo que no permite a usuarios anónimos (debe ser el *) crear (por lo de create) páginas nuevas.

Es una pequeña limitación, pero supongo que a alguien que quiera crear una página y se vaya a poner a escribir algo en serio en ella, no le costará mucho más esfuerzo registrarse y darse de alta.

Apr 03

Nuevo chiste

En mi página principal Apuntes de Programación, sale un chiste aleatorio cada vez que se visualiza. Gracias a Luis (un compañero de trabajo), tenemos un nuevo chiste disponible

vieja nintendo

Mar 29

Actualización de wordpress

Anteayer visité mi propio blog y tuve un pequeño disgusto. Por más que le daba, parecía que no se cargaba la hoja de estilo CSS. El blog salía sin columnas, sin estilos, fuentes, colores ni nada. Texto plano y simple. Con el navegador le dí a ver el código fuente de la página y otro disgusto más grande. En la página faltaba toda la sección de <head>, que es donde se hace referencia al fichero de estilo CSS. En su lugar había una línea larga y kilométrica de enlaces de span con estilo hidden para que no fueran visibles. Abro el administrador de wordpress, voy al editor de temas y efectivamente, el fichero header.php había sido reemplazado por esa línea de span. ¡¡ Me habían crakeado el blog !!

Afortunadamente hago backups todos los meses, así que fuí al último backup con la intención de recuperar ese fichero header.php. Pues bien, hace un mes también estaba crackeado, pero al menos habían respetado el tag <head>, símplemente habían añadido todos esos enlaces/span. Viendo el blog con ese header.php el blog se veía correctamente, pero al ver el código fuente, todos esos enlaces/span estaban ahí.

Así que decidí actualizar la versión de wordpress, puesto que la que tenía puesta una un poco antigua. La última actualización había sido un desastre y por eso no lo había actualizado. Así que me armé de valor y me decidí a intentarlo otra vez. Esta vez por necesidad más que por estar a la última. Me voy al administrador del wordpress y desactivo todos los plugins. Luego al "fantásico" de mi hosting y actualizo a la últma versión disponible desde ahí. Volvió a pasar el desastre de la otra vez, todos los acentos y eñes cambiados por "gurruños" variados. Buscando por internet, encuentro esta solución para los acentos de wordpress. La verdad es que es muy tonta, basta buscar el fichero wp-config.php y hay una línea que pone define(‘DB_CHARSET’, ‘utf8’). Basta cambiar el utf8 por latin1, así define(‘DB_CHARSET’,’latin1′). Con eso se arregló el tema de acentos.

El otro problema que tenía con que se me descolocaban los videos de youtube lo solucioné cambiando el tema antiguo por este, el que estais viendo ahora. Creo que voy a dejarme de florituras y no lo modificaré, lo dejaré como está. En su día estuve jugando con el tema anterior, pero era más por aprender y jugar con CSS que por conseguir un tema vistoso.

Finalmente, otro problema es que dentro del administrador de wordpress me daba un error de php. Decía que no se podía cambiar el "header" de la página porque wp-config.php ya había enviado información. Afortunadamente ese problema me resulta conocido y el problema eran tres o cuatro líneas en blanco que había al final del fichero wp-config.php. Me bastó con borrarlas.

Así que arreglado, wordpress actualizado y tema nuevo.