En una revisión de seguridad que me asignaron, me toco auditar varios sitios de WordPress, y mientras revisaba sus plugins me tope con uno el cual le encontré un XSS, y para mi sorpresa este no estaba público en internet :)
En este post quiero compartir con ustedes este simple fallo que encontré
Primero que es un xss según wikipedia: Cross-site scripting es un tipo de vulnerabilidad informática o agujero de seguridad típico de las aplicaciones Web, que puede permitir a una tercera persona inyectar en páginas web visitadas por el usuario código JavaScript
Para empezar usaremos Google Hacking y buscaremos páginas que tengan el plugin User Profile o abreviado userpro
Este fallos afecta en el momento en que el usuario intenta realizar un login, por lo tanto la url que atacamos es la /wp-admin/admin-ajax.php, ya que cuando envía los datos manda un parámetro llamado userpro
Así seria la petición
post /wp-admin/admin-ajax.php Host domain.com
action=userpro_shortcode_template&shortcode=[userpro<img src=a onerror=alert(1)> id=1 layout="float" collage_per_page="20" emd_paginate_top="1" emd_paginate="1" emd_gender="Gender,radi
En algunos casos se envían más parámetros
Buscamos en google páginas que tengan este plugins. Comando a usar:
inurl:/wp-content/plugins/userpro/
Al buscar en google me encontré con varios sitios que son vulnerables
Arribas vemos como salta el xss
Aquí vemos como en este caso salta el xss y aparece mayor resultado que el anterior
Aquí vemos evidencia de otra página y cada uno de los que probamos tiene una versión del plugin diferente y por lo que vi este fallo afecta desde la versión 2.13 hasta la 4.9.23
Este fallo lo reporte y quedo con el cve: CVE-2018-16285 Y también hacen mención del mismo en la URL de wpvulndb
Referencias:
https://es.wikipedia.org/wiki/Cross-site_scripting
https://wpvulndb.com/vulnerabilities/9124
Los complementos son excelentes herramientas tanto para medir estadisticas wordpress, como para mejorar funciones que permitan aumentar la estetica del sitio
ResponderBorrar