Vulnerabilidad de “WordPress SEO by Yoast”

Hoy nos levantamos con la noticia de que el famoso plugin de WordPress SEO by Yoast  que cuenta con más de 14 millones de descargas según el sitio oficial del plugin, tiene una vulnerabilidad de tipo Blind SQL injection, para la cual los desarrolladores ya realizaron una actualización.

yoast-seo

La vulnerabilidad en WordPress SEO by Yoast ha sido descubierto por Ryan Dewhurst, desarrollador del escáner de vulnerabilidades de WordPress WPScan.

La vulnerabilidad no es explotable por todo el mundo, para ello necesitamos tener acceso a la zona de administración de WordPress como administrador, editor o usuarios con privilegios, para poder llegar al fichero afectado el cual se encarga del procesamiento por bloques del .

Todas las versiones anteriores a la 1.7.3.3 de WordPress SEO by Yoast son vulnerables, así que es recomendable realizar una rápida actualización de seguridad si no queremos poner en riesgo nuestros datos.

Ryan, también dejó un POC de la vulnerabilidad, para que podamos ver como nos afecta.

http://127.0.0.1/wp-admin/admin.php?page=wpseo_bulk-editor&type=title&orderby=post_date%2c(select%20*%20from%20(select(sleep(10)))a)&order=asc

Ahora mismo la ya existe un parche para la vulnerabilidad en la versión 1.7.4 del plugin que es de obligatoria actualización si quieres tener tu WordPress protegido ante indeseables.

Me chiva mi compañero Manuel que por qué no usar la técnica de Hacking con buscadores, para saber cuantos Yoast tiene indexado Google. Con el siguiente dork podemos visualizarlo.

inurl:”page=wpseo_bulk-editor”

Donde podemos ver que hay localizados 9350 plugins, que no estaría de más que estas personas bloquearan, mediante robots.txt, las zonas sensibles de la Web.

yoast_hacking_buscadores

Luego solo tenemos que ir al dominio principal y buscar la siguiente línea en el código para saber la versión de Yoast que tiene.

<!– This site is optimized with the Yoast WordPress SEO Premium plugin vX.X.X– https://yoast.com/wordpress/plugins/seo/ –>

Así que ya sabéis, tener siempre vuestro software actualizado para evitar problemas.

[UPDATE]

Si alguien por el motivo que sea no puede actualizar o algún Sysadmin se encuentra con usuarios lentos en la actualización puede generar una expresión regular en el FW o WAF para bloquear (sleep( y (select( mediante estas dos expresiones

(\(sleep\()

(\(select\()