Talento desperdiciado
Hace poco menos de un año, estaba tranquilamente sentado, disfrutando de mi café, cuando sonó mi celular. Olga, una gran amiga, clienta y así, me dijo "maic, mi sitio saca una leyenda rarísima". El café se puso de inmediato frío como el infierno y amargo como la hiel.
Leyenda rarísima no es aquella que habla del amor inmortal (para eso tenemos a Romeo y Julieta, pero eso es otro tema), sino una que decía "Jquery--.net is for sale" (o algo parecido). También podía decir Pwnd, pero el sabor es el mismo: de alguna manera, con algún exploit (vulnerabilidad) de wordpress, nos habían juanqueado el sitio.
Raudo y veloz, cual gacela con embarazo a punto de término, me dediqué a analizar los logs de Apache y ví que habían subido un script que no solo nos había comprometido el sitio, sino que le chupaba el pagerank al sitio, y habían subido, literal, unas páginas Made for AdSense, que además hacían que Google llevara tráfico que generaba ingresos a través del sitio, sin que nos diéramos cuenta, en temas que no tenían nada que ver.
Es gracioso. Uno puede conseguir cualquier cosa en Internet, casi siempre relacionada con el término "gratis", que puede meterlo a uno en problemas. Un plugin, que afortunadamente fue retirado del directorio de Wordpress, tenía el código en cuestión que permitió un ataque XSS, algo que en términos prácticos permitió que un tipo muy inteligente nos diera vuelta durante semanas, sin que lo percibiéramos. Hasta que su dominio venció, y fue evidente el ataque.
Eso pasa por bajar cosas piratas
Sí. Y no. El plugin en cuestión parecía legítimo, hasta que viendo el código con mucha paciencia lograron determinar que era dañino. Obviamente, puede pasar que las vulnerabilidades no sean propiamente intencionadas, sino el resultado de un código poco cuidado, o con técnicas que no han probado a lo largo del tiempo y resultan ser perniciosas por técnicas que los piratas informáticos (muy chic el término) van desarrollando para, ¿por qué no?, joder a los desarrolladores, tener crédito y ganarse unos dolaritos por la chula cara.
El uso de scripts es riesgoso
Riesgoso, pero necesario. Dudo mucho que nadie, nunca, pudiera hacer un sitio de Internet de gran escala sin un sistema de administración de contenidos, pudiéramos tener acortadores de direcciones (como el de RBTH, 5rt.us, o el famosísimo Bitly), o el mismo twitter pudieran existir. Todo requiere un sistema (bien) programado para poder manejar —y ofrecer— información a nuestros usuarios.
Claro está que podía usar un sitio estático para el sitio de mi clienta-amiga-y-así, pero tenía que piratearme duplicar el sitio que anteriormente estaba hecho, y encima, poder extenderlo si así lo pretendía ella.
Ahora cualquier naco te puede hackear, urge legislar
OK, no hay que cortarse las venas. El síndrome del abusador y abusado lo hemos vivido desde tiempos inmemoriales, y solamente en casos de delitos lo tomamos en cuenta. Hasta hace relativamente poco se legisló contra el bullying escolar, pero la realidad es que NADIE puede evitar que siga existiendo. De hecho, algunos idiotas progresistas proponen que el bullying es bueno para los niños porque los enseña a defenderse. Para no quedarnos atrás, los programadores pensamos de manera similar porque somos bien progresistas, y lo que hacemos cuando algo así sucede, es optar por la mejor solución: evolucionar.
Como los Pokémon, ¡yupi!
Sí, eso... eso. Cuando evolucionamos, tendemos a hacer dos cosas: mejorar el código, analizando qué diablos pasó, evitando a través de (más) código que vuelva a suceder. Lo que termina siendo siempre una hecatombe: más código, más mantenimiento, y siempre más oportunidad a que existan vulnerabilidades. Así que...
La seguridad por oscuridad
Aunque no soy partidario de la seguridad por oscuridad (es decir, que nadie sepa con qué se hizo el guisado, te lo comes porque sabe rico), la misma puede ayudarnos a la hora de protegernos de juanquers que buscan -versiones específicas de- sitios hechos en Wordpress para inyectar su código y poder hacerse con el sitio en algún momento.
Durante muchos años, yo he notado sitios ENORMES hechos a punta de Wordpress, y hasta hace nada era imposible mantener sitios Wordpress sin que se supiera qué movía internamente al sitio. Lo único a lo que podíamos aspirar era instalar un sitio Wordpress en un directorio, escribir una redirección htaccess, y rezar que nadie fuera lo suficientemente curioso para analizar el código fuente de las páginas. Hasta ahora.
HideMyWP
Los chicos de wpWave desarrollaron un plugin muy simple, muy efectivo y muy económico: para evitar que nadie se entere al final que tenemos un CMS Wordpress en nuestro blog, sitio o portal, se redirigen las direcciones de nuestros plugins, temas, archivos y todo lo que huela a Wordpress, a direcciones seguras que nada tienen que ver con el CMS.
Una de las ventajas de este plugin, es que nos brinda una capa extra de seguridad (la seguridad por oscuridad no es definitiva, aunque sí que es efectiva para inhibir a los juanquers más novatos), al poder utilizarlo en conjunto con otros plugins de seguridad. Así, al no interponerse con otros plugins, podemos contar con tantas capas de seguridad que nuestro servidor nos permita, o cuanta podamos adquirir.
Para concluir, recordar que es imposible tener sitios invulnerables, a menos que sean locales, estáticos, y estemos desconectados de Internet. Y a veces, no estaría tan seguro de la seguridad si la computadora está prendida.
Tú, ¿tienes sitios en Wordpress? ¿Te ha pasado por encima un ataque juanquer? Déjanos tu experiencia en los comentarios.