XSS, CSRF та AFU уразливості в Organizer для WordPress
23:51 24.04.201216.04.2012
Ще 18.04.2008 я знайшов Cross-Site Scripting, Cross-Site Request Forgery та Arbitrary File Upload (Code Execution) уразливості в плагіні Organizer для WordPress. Але довго відкладав публікацію інформації про дані уразливості. Це друга порція уразливостей в плагіні Organizer. Про що найближчим часом повідомлю розробникам плагіна.
Раніше я писав про уразливості в Organizer для WordPress.
Детальна інформація про уразливості з’явиться пізніше. Спочатку повідомлю розробникам.
24.04.2012
XSS:
http://site/wp-admin/admin.php?page=organizer/page/users.php&edit_id=%3Cscript%3Ealert(document.cookie)%3C/script%3E
XSS (Persistent):
Код виконається на сторінці users.php плагіна.
CSRF:
Через атаку на функцію Add/Edit User Setting можна додавати і редагувати налаштування. Додавання і редагування поєднані в один і той же POST запит.
POST запит на сторінці http://site/wp-admin/admin.php ?page=organizer/page/users.php (аналогічно експлоіту для XSS).
Через атаку на функцію Delete User Setting можна вадалити налаштування.
http://site/wp-admin/admin.php?page=organizer/page/users.php&delete_id=admin
Arbitrary File Upload (Code Execution):
Можливе необмежене завантаження файлів з виконанням коду (php файлів). Тому що в полі File extensions allowed можна вказати розширення скриптів, такі як “php”.
Так що окрім використання обхідних методів, таких як подвійні розширення (при нашаштуваннях плагіна по замовчуванню), можна змінити налаштування і задати “php” в дозволені розширення. Що дозволить завантажувати на сервер та виконувати довільні скрипти. Окрім проведення атаки на адміна через вищезгадану CSRF уразливість для зміни налаштувань (або отримання доступу до адмінського акаунту для цього), також для цього можна використати Insufficient Authorization уразливість (при наявності акаунта навіть з найменшими правами Subscriber).
Уразливі Organizer 1.2.1 та попередні версії.