WPScan собирает данные о всех известных уязвимостях wordpress. Уязвимости могут быть как в установленных плагинах или темах, так и самом движке worpress.
--update
— обновляет базы.--url
или -u
<целевой url> — URL адрес/домен сайта на WordPress для сканирования.--force
или -f
— принуждает WPScan не проверять, работает ли удалённый сайт на WordPress (проще говоря, даже если целевой сайт не на WordPress, сканирование всё равно продолжается).--enumerate
или -e
[опция(опции)] — Перечень после этого ключа можно использовать следующие опции:u
— имена пользователей id от 1 до 10u[10-20]
— имена пользователей id от 10 до 20 (вы должны вписать в [] целые цифры)p
— плагиныvp
— сканирование только на плагины, про которые известно, что они уязвимыеap
— все плагины (может занять много времени)tt
— timthumbst
— темыvt
— сканирование только на темы, про которые известно, что они уязвимыеat
— все темы (может занять много времени).
Можно использовать по несколько ключей. Если ключи не заданы, то по умолчанию используется следующий набор «vt,tt,u,vp».
Обнаруживаем уязвимые плагины:
ruby wpscan.rb --url adminhelp.pp.ua --enumerate vp
Результат сканирования
[+] Started: Wed Apr 13 15:19:28 2016
[+] robots.txt available under: ‘http://adminhelp.pp.ua/robots.txt’
[+] Interesting entry from robots.txt: http://adminhelp.pp.ua/wp-admin/admin-ajax.php
[!] The WordPress ‘http://adminhelp.pp.ua/readme.html’ file exists exposing a version number
[!] Full Path Disclosure (FPD) in ‘http://adminhelp.pp.ua/wp-includes/rss-functions.php’:
[+] Interesting header: LINK: <http://adminhelp.pp.ua/wp-json/>; rel=»https://api.w.org/»
[+] Interesting header: SERVER: Apache
[+] Interesting header: X-POWERED-BY: PHP/5.2.17
[+] XML-RPC Interface available under: http://adminhelp.pp.ua/xmlrpc.php
[!] Upload directory has directory listing enabled: http://adminhelp.pp.ua/wp-content/uploads/
[+] WordPress version 4.5 identified from advanced fingerprinting
[+] WordPress theme in use: rundown — v10.6.5
[+] Name: rundown — v10.6.5
| Latest version: 1.8 (up to date)
| Location: http://adminhelp.pp.ua/wp-content/themes/rundown/
| Readme: http://adminhelp.pp.ua/wp-content/themes/rundown/readme.txt
| Changelog: http://adminhelp.pp.ua/wp-content/themes/rundown/changelog.txt
| Style URL: http://adminhelp.pp.ua/wp-content/themes/rundown/style.css
| Theme Name: Rundown
| Theme URI: http://www.kharissulistiyono.com/wp-labs/rundown-wordpress-theme
| Description: When something seems so hard to be done, do it point-by-point. Rundown is a res
| Author: Kharis Sulistiyono | Author URI: http://kharissulistiyono.com
[+] Enumerating installed plugins (only ones with known vulnerabilities) …
Time: 00:10:09 <==========================================================================> (
[+] We found 1 plugins:
[+] Name: akismet
| Latest version: 3.1.10
| Location: http://adminhelp.pp.ua/wp-content/plugins/akismet/
[!] We could not determine a version so all vulnerabilities are printed out
[!] Title: Akismet 2.5.0-3.1.4 — Unauthenticated Stored Cross-Site Scripting (XSS)
Reference: https://wpvulndb.com/vulnerabilities/8215
Reference: http://blog.akismet.com/2015/10/13/akismet-3-1-5-wordpress/
Reference: https://blog.sucuri.net/2015/10/security-advisory-stored-xss-in-akismet-wordpress
[i] Fixed in: 3.1.5
[+] Finished: Wed Apr 13 15:30:03 2016
[+] Requests Done: 1341
[+] Memory used: 70.992 MB
[+] Elapsed time: 00:10:35
[+] — никаких уязвимостей, всё гуд
[!] — некритичная уязвимость, можно не обращать внимания
[!] — шеф всё пропало, критическая уязвимость, которой можно воспользоваться
[i] — рекомендация по устранению найденной уязвимости
Как видно, сканер нашел уязвимость в плагине Akismet. Из рекомендации ниже видно, что баг устранен в следующей версии плагина, нужно просто обновить все плагины.
Сканируем на уязвимые темы
ruby wpscan.rb --url adminhelp.pp.ua --enumerate vt
Результат сканирования
[+] URL: http://adminhelp.pp.ua/
[+] Started: Wed Apr 13 16:13:42 2016
[+] robots.txt available under: ‘http://adminhelp.pp.ua/robots.txt’
[+] Interesting entry from robots.txt: http://adminhelp.pp.ua/wp-admin/admin-ajax.php
[!] The WordPress ‘http://adminhelp.pp.ua/readme.html’ file exists exposing a version number
[!] Full Path Disclosure (FPD) in ‘http://adminhelp.pp.ua/wp-includes/rss-functions.php’:
[+] Interesting header: LINK: <http://adminhelp.pp.ua/wp-json/>; rel=»https://api.w.org/»
[+] Interesting header: SERVER: Apache
[+] Interesting header: X-POWERED-BY: PHP/5.2.17
[+] XML-RPC Interface available under: http://adminhelp.pp.ua/xmlrpc.php
[!] Upload directory has directory listing enabled: http://adminhelp.pp.ua/wp-content/uploads/
[+] WordPress version 4.5 identified from advanced fingerprinting
[+] WordPress theme in use: rundown — v10.6.5
[+] Name: rundown — v10.6.5
| Latest version: 1.8 (up to date)
| Location: http://adminhelp.pp.ua/wp-content/themes/rundown/
| Readme: http://adminhelp.pp.ua/wp-content/themes/rundown/readme.txt
| Changelog: http://adminhelp.pp.ua/wp-content/themes/rundown/changelog.txt
| Style URL: http://adminhelp.pp.ua/wp-content/themes/rundown/style.css
| Theme Name: Rundown
| Theme URI: http://www.kharissulistiyono.com/wp-labs/rundown-wordpress-theme
| Description: When something seems so hard to be done, do it point-by-point. Rundown is a responsive WordPress … | Author: Kharis Sulistiyono
| Author URI: http://kharissulistiyono.com
[+] Enumerating plugins from passive detection …
[+] No plugins found
[+] Enumerating installed themes (only ones with known vulnerabilities) … Time: 00:05:11 <======================================================> (375 / 375) 100.00% Time: 00:05:11
[+] No themes found
[+] Finished: Wed Apr 13 16:19:12 2016
[+] Requests Done: 413
[+] Memory used: 31.695 MB
[+] Elapsed time: 00:05:30
В результате сканирования ничего интересного.
Запускаем сканирование для получения списка пользователей. Очень удобно для подготовки атаки брутфорсом
ruby wpscan.rb --url adminhelp.pp.ua --enumerate u
Результат сканирования
[+] URL: http://adminhelp.pp.ua/
[+] Started: Thu Apr 14 10:14:59 2016
[+] robots.txt available under: ‘http://adminhelp.pp.ua/robots.txt’
[+] Interesting entry from robots.txt: http://adminhelp.pp.ua/wp-admin/admin-ajax.php
[!] The WordPress ‘http://adminhelp.pp.ua/readme.html’ file exists exposing a version number
[!] Full Path Disclosure (FPD) in ‘http://adminhelp.pp.ua/wp-includes/rss-functions.php’:
[+] Interesting header: LINK: <http://adminhelp.pp.ua/wp-json/>; rel=»https://api.w.org/»
[+] Interesting header: SERVER: Apache [+] Interesting header: X-POWERED-BY: PHP/5.2.17
[+] XML-RPC Interface available under: http://adminhelp.pp.ua/xmlrpc.php
[!] Upload directory has directory listing enabled: http://adminhelp.pp.ua/wp-content/uploads/
[+] WordPress version 4.5 identified from advanced fingerprinting [+] WordPress theme in use: rundown — v10.6.5
[+] Name: rundown — v10.6.5
| Latest version: 1.8 (up to date)
| Location: http://adminhelp.pp.ua/wp-content/themes/rundown/
| Readme: http://adminhelp.pp.ua/wp-content/themes/rundown/readme.txt
| Changelog: http://adminhelp.pp.ua/wp-content/themes/rundown/changelog.txt
| Style URL: http://adminhelp.pp.ua/wp-content/themes/rundown/style.css
| Theme Name: Rundown | Theme URI: http://www.kharissulistiyono.com/wp-labs/rundown-wordpress-theme
| Description: When something seems so hard to be done, do it point-by-point. Rundown is a responsive WordPress … | Author: Kharis Sulistiyono
| Author URI: http://kharissulistiyono.com
[+] Enumerating plugins from passive detection …
[+] No plugins found
[+] Enumerating usernames …
[+] Identified the following 2 user/s:
+—-+———+———+
| Id | Login | Name |
+—-+———+———+
| 1 | user1 | admin |
| 2 | user2 | user |
+—-+———+———+
[+] Finished: Thu Apr 14 10:15:19 2016
[+] Requests Done: 50
[+] Memory used: 8.148 MB
[+] Elapsed time: 00:00:20
В результате получен список пользователей. Может быть в следующей статье опишу брутфорс с помощью wpscan