WPScan, analizando la seguridad de tu WordPress

DragonJAR 336x280 WPScan, analizando la seguridad de tu Wordpress

Hoy en día cualquiera conoce los CMS mas populares, CMS como WordPress, Joomla, Drupal ocupan el top 3 de los CMS mas usados por los usuarios. Muchos dearrolladores han tenido que aprender como funcionan estas plataformas nuevas para poder hacer desarrollos modificando el core de la aplicación y seguir vigentes en el mercado.

wordpress security WPScan, analizando la seguridad de tu Wordpress

Normalmente estos CMS suelen pasado por una revisión del equipo de seguridad encargado de revisar los últimos fallos que han salido para aplicar el parche, que son o voluntarios con conocimientos en seguridad o empresas especializadas en el área. En cambio el talón de aquiles de estas plataformas web son los plugins o los temas desarrollados por terceros. Estos plugins suelen estar desarrollados por personas que no tienen en cuenta la seguridad, en la mayoría de los casos por desconocimiento ya que casi todos los CMS modernos cuentan con funciones que podrían prevenir la gran mayoría de problemas en los plugins y temas.

Como esto se ha puesto en auge, existen aplicaciones que se encargarán de revisar la seguridad de tu sitio con WordPress, Joomla, Drupal, etc… Hoy hablaremos de una herramienta creada para auditar WordPress cuyo nombre es WPScan.

Para usar WPscan deberemos de acudir al repositorio de GitHub que tienen montado para su uso.

  • Lo descargamos de https://github.com/wpscanteam/wpscan
  • Seguid las instrucciones de instalación, no tiene pérdida.
  • Una vez lo tengamos instalado lo arrancamos.

Iniciando WPscan

darkmac:wpscan marc$ ruby wpscan.rb
____________________________________________________
__          _______   _____
\ \        / /  __ \ / ____|
\ \  /\  / /| |__) | (___   ___  __ _ _ __
\ \/  \/ / |  ___/ \___ \ / __|/ _` | '_ \
\  /\  /  | |     ____) | (__| (_| | | | |
\/  \/   |_|    |_____/ \___|\__,_|_| |_| v2.1r3363006

WordPress Security Scanner by the WPScan Team
Sponsored by the RandomStorm Open Source Initiative
_____________________________________________________


Examples :

-Further help ...
ruby wpscan.rb --help

-Do 'non-intrusive' checks ...
ruby wpscan.rb --url www.example.com

-Do wordlist password brute force on enumerated users using 50 threads ...
ruby wpscan.rb --url www.example.com --wordlist darkc0de.lst --threads 50

-Do wordlist password brute force on the 'admin' username only ...
ruby wpscan.rb --url www.example.com --wordlist darkc0de.lst --username admin

-Enumerate installed plugins ...
ruby wpscan.rb --url www.example.com --enumerate p

-Enumerate installed themes ...
ruby wpscan.rb --url www.example.com --enumerate t

-Enumerate users ...
ruby wpscan.rb --url www.example.com --enumerate u

-Enumerate installed timthumbs ...
ruby wpscan.rb --url www.example.com --enumerate tt

-Use a HTTP proxy ...
ruby wpscan.rb --url www.example.com --proxy 127.0.0.1:8118

-Use a SOCKS5 proxy ... (cURL >= v7.21.7 needed)
ruby wpscan.rb --url www.example.com --proxy socks5://127.0.0.1:9000

-Use custom content directory ...
ruby wpscan.rb -u www.example.com --wp-content-dir custom-content

-Use custom plugins directory ...
ruby wpscan.rb -u www.example.com --wp-plugins-dir wp-content/custom-plugins

-Update ...
ruby wpscan.rb --update

-Debug output ...
ruby wpscan.rb --url www.example.com --debug-output 2>debug.log

See README for further information.

No argument supplied

Estas son las opciones de las que dispone WPScan, como veis muy sencillo

Ejecutando WPscan

Esta sería una salida normal de WPscan

Por defecto nos hace una serie de peticiones para extraer este resultado si queremos algo mas concreto podemos hacer:

Enumerando plugins

Wpscan nos permite hacer una enumeración de los plugins instalados en nuestro WordPress.

darkmac:wpscan marc$ ruby wpscan.rb -u www.rootedcon.es --enumerate p
____________________________________________________
__          _______   _____
\ \        / /  __ \ / ____|
\ \  /\  / /| |__) | (___   ___  __ _ _ __
\ \/  \/ / |  ___/ \___ \ / __|/ _` | '_ \
\  /\  /  | |     ____) | (__| (_| | | | |
\/  \/   |_|    |_____/ \___|\__,_|_| |_| v2.1r3363006

WordPress Security Scanner by the WPScan Team
Sponsored by the RandomStorm Open Source Initiative
_____________________________________________________

| URL: http://www.rootedcon.es/
| Started on Sat Jun 15 23:28:38 2013

[+] XML-RPC Interface available under http://www.rootedcon.es/xmlrpc.php
[+] WordPress version 3.5.1 identified from meta generator

[!] We have identified 1 vulnerabilities from the version number :
|
| * Title: CVE-2013-2173: WordPress 3.5.1 DoS in class-phpass.php
| * Reference: http://seclists.org/fulldisclosure/2013/Jun/65

[+] The WordPress theme in use is boldy

| Name: boldy
| Location: http://www.rootedcon.es/wp-content/themes/boldy/
|
| * Title: Site5 WordPress Themes Email Spoofing
| * Reference: http://packetstormsecurity.org/files/114750/

[+] Enumerating installed plugins  ...

Time: 00:00:18 <============================================================================================================================> (2484 / 2484) 100.00% Time: 00:00:18

[+] We found 4 plugins:

| Name: tablepress v1.0
| Location: http://www.rootedcon.es/wp-content/plugins/tablepress/
| Readme: http://www.rootedcon.es/wp-content/plugins/tablepress/readme.txt

| Name: wordpress-https v3.3.6
| Location: http://www.rootedcon.es/wp-content/plugins/wordpress-https/
| Readme: http://www.rootedcon.es/wp-content/plugins/wordpress-https/readme.txt

| Name: wordpress-importer v0.6
| Location: http://www.rootedcon.es/wp-content/plugins/wordpress-importer/
| Readme: http://www.rootedcon.es/wp-content/plugins/wordpress-importer/readme.txt

| Name: wp-table-reloaded v1.9.4
| Location: http://www.rootedcon.es/wp-content/plugins/wp-table-reloaded/
| Readme: http://www.rootedcon.es/wp-content/plugins/wp-table-reloaded/readme.txt
|
| * Title: wp-table-reloaded <= 1.9.3 XSS in ZeroClipboard.swf
| * Reference: http://1337day.com/exploit/20396

[+] Finished at Sat Jun 15 23:29:13 2013
[+] Elapsed time: 00:00:35

No solo hace una enumeración de los plugins si no que además nos dice si no está actualizado.

Temas instalados en WordPress

Otra de las vías para hacer explotación es el theme, ya que es una plantilla que no puede estar desarrollado de manera segura.

darkmac:wpscan marc$ ruby wpscan.rb -u www.flu-project.com --enumerate t
____________________________________________________
__          _______   _____
\ \        / /  __ \ / ____|
\ \  /\  / /| |__) | (___   ___  __ _ _ __
\ \/  \/ / |  ___/ \___ \ / __|/ _` | '_ \
\  /\  /  | |     ____) | (__| (_| | | | |
\/  \/   |_|    |_____/ \___|\__,_|_| |_| v2.1r3363006

WordPress Security Scanner by the WPScan Team
Sponsored by the RandomStorm Open Source Initiative
_____________________________________________________

| URL: http://www.flu-project.com/
| Started on Sat Jun 15 23:45:12 2013

[+] robots.txt available under 'http://www.flu-project.com/robots.txt'
[+] User registration is enabled
[+] XML-RPC Interface available under http://www.flu-project.com/xmlrpc.php
[+] WordPress version 3.4.1 identified from meta generator

[!] We have identified 3 vulnerabilities from the version number :
|
| * Title: WordPress 3.5 to 3.3.2 Cross-Site Scripting (XSS) (Issue 3)
| * Reference: https://github.com/wpscanteam/wpscan/wiki/WordPress-3.5-Issues
|
| * Title: XMLRPC Pingback API Internal/External Port Scanning
| * Reference: https://github.com/FireFart/WordpressPingbackPortScanner
|
| * Title: WordPress XMLRPC pingback additional issues
| * Reference: http://lab.onsec.ru/2013/01/wordpress-xmlrpc-pingback-additional.html

[+] The WordPress theme in use is mystique v2.4.3

| Name: mystique v2.4.3
| Location: http://www.flu-project.com/wp-content/themes/mystique/
| Readme: http://www.flu-project.com/wp-content/themes/mystique/readme.txt

[+] Enumerating plugins from passive detection ...
7 plugins found :

| Name: addthis v3.1
| Location: http://www.flu-project.com/wp-content/plugins/addthis/
| Readme: http://www.flu-project.com/wp-content/plugins/addthis/readme.txt

| Name: captcha v3.6
| Location: http://www.flu-project.com/wp-content/plugins/captcha/
| Readme: http://www.flu-project.com/wp-content/plugins/captcha/readme.txt

| Name: cforms
| Location: http://www.flu-project.com/wp-content/plugins/cforms/

| Name: mingle-forum
| Location: http://www.flu-project.com/wp-content/plugins/mingle-forum/
|
| * Title: Mingle Forum <= 1.0.32.1 Cross Site Scripting / SQL Injection
| * Reference: http://packetstormsecurity.org/files/108915/
|
| * Title: Mingle Forum plugin <= 1.0.31 SQL Injection Vulnerability
| * Reference: http://www.exploit-db.com/exploits/17894/
|
| * Title: Mingle Forum (Plugin) <= 1.0.26 Multiple Vulnerabilities
| * Reference: http://www.exploit-db.com/exploits/15943/
|
| * Title: Mingle Forum <= 1.0.33 Cross Site Scripting
| * Reference: http://packetstormsecurity.org/files/112696/
|
| * Title: Mingle Forum 1.0.33.3 Multiple Parameter SQL Injection
| * Reference: http://osvdb.org/show/osvdb/90434

| Name: rpx v1.0.4
| Location: http://www.flu-project.com/wp-content/plugins/rpx/
| Readme: http://www.flu-project.com/wp-content/plugins/rpx/readme.txt

| Name: theme-my-login v6.2.2
| Location: http://www.flu-project.com/wp-content/plugins/theme-my-login/
| Readme: http://www.flu-project.com/wp-content/plugins/theme-my-login/readme.txt

| Name: wp-paypal-donation-plugin v1.0
| Location: http://www.flu-project.com/wp-content/plugins/wp-paypal-donation-plugin/
| Readme: http://www.flu-project.com/wp-content/plugins/wp-paypal-donation-plugin/readme.txt

[+] Enumerating installed themes  ...

Time: 00:03:12 <============================================================================================================================> (1746 / 1746) 100.00% Time: 00:03:12

[+] We found 2 themes:

| Name: mystique v2.4.3
| Location: http://www.flu-project.com/wp-content/themes/mystique/
| Readme: http://www.flu-project.com/wp-content/themes/mystique/readme.txt

| Name: producer v2.4"
| Location: http://www.flu-project.com/wp-content/themes/producer/

[+] Finished at Sat Jun 15 23:49:55 2013
[+] Elapsed time: 00:04:43

Muy útil sin duda.

Fallos que genera

darkmac:wpscan marc$ ruby wpscan.rb -u www.wikileaks.org
____________________________________________________
__          _______   _____
\ \        / /  __ \ / ____|
\ \  /\  / /| |__) | (___   ___  __ _ _ __
\ \/  \/ / |  ___/ \___ \ / __|/ _` | '_ \
\  /\  /  | |     ____) | (__| (_| | | | |
\/  \/   |_|    |_____/ \___|\__,_|_| |_| v2.1r3363006

WordPress Security Scanner by the WPScan Team
Sponsored by the RandomStorm Open Source Initiative
_____________________________________________________

The remote website is up, but does not seem to be running WordPress.

Podemos creer que un sitio está corriendo WordPress en cambio cuando lanzamos la herramienta el resultado que nos da es que no se trata de un WordPress.

Wpscan ha de ser una herramienta que usemos para comprobar la seguridad de nuestro WordPress.


Si te ha gustado el post, compartelo y ayudanos a crecer.

Unete a nuestra Fanpage Siguenos en Twitter

Autor: Seifreed

Formado en un equipo de lucha contra el fraude. He trabajado implementando la protección y prevención del fraude en varios clientes dentro del sector bancario nacional e internacioal. Mi trabajo consiste en encontrar soluciones a los problemas actuales y futuros de las entidades financieras respecto al código malicioso y el fraude. Especialidades como el análisis de malware, análisis forense, ingeniería inversa o tareas de hacking ético, forman parte de mis tareas diarias. Soy ponente ien eventos nacionales (No cON Name, Owasp, Navaja Negra) e internacionales (DraonJAR CON - Colombia). Soy profesor asociado en La Salle enseñando el curso MPWAR (Master in High Performance Web Programming) y el máster de ciberseguridad de La Salle (MCS. Master in Cybersecurity) Miembro de asociaciones y grupos de research como la HoneyNet Project, Owasp, SySsec etc.. También soy el organizador de las conferencias Hack&Beers en Barcelona

Compartir este Artículo