IA, CSRF та FPD уразливості в Organizer для WordPress
23:57 20.04.2012Ще 18.04.2008 я знайшов Insufficient Authorization, Cross-Site Request Forgery та Full path disclosure уразливості в плагіні Organizer для WordPress. Але довго відкладав публікацію інформації про дані уразливості. Це третя порція уразливостей в плагіні Organizer. Як заявив мені розробник плагіна, він більше не підтримує цей плагін і не буде виправляти численні уразливості в ньому, про які я повідомив.
Раніше я писав про уразливості в Organizer для WordPress.
Insufficient Authorization:
Доступ до users.php та виконання всіх операцій дозволено будь-яким користувачам системи (навіть Subscriber).
http://site/wp-admin/admin.php?page=organizer/page/users.php
Можливий перегляд налаштувань, додавання, редагування та видалення налаштувань користувачів. Зокрема будь-який користувач (той же Subscriber) зможе задати, в тому числі для свого акаунту, дозволені розширення для завантаження файлів, наприклад, php.
В тому числі непривілегійований користувач може проводити Persistent XSS атаки на адміна (через дві раніше згадані Persistent XSS дірки). А також дана уразливість дозволяє проводити CSRF атаки (для зміни налаштувань) не тільки на адміна, а на будь-якого залогіненого користувача.
CSRF:
Увесь фунціонал плагіна вразливий до CSRF атак. Окрім раніше загадних CSRF в скрипті users.php, наприклад, в скрипті dir.php через CSRF можна створювати, переіменовувати та видаляти директорії (переіменовувати та видаляти можна лише пусті директорії). Для цього потрібно відправити три відповідних POST запити.
http://site/wp-admin/admin.php?page=organizer/page/dir.php
А в скрипті view.php через CSRF можна переіменовувати, копіювати та видаляти завантажені файли. Для цього потрібно відправити три відповідних POST запити.
http://site/wordpress/wp-admin/admin.php?page=organizer/page/view.php
FPD:
Скрипт http://site/wordpress/wp-admin/admin.php?page=organizer /page/view.php має вбудований функціонал (і уразливість) - виведення повного шляху на сервері.
Уразливі Organizer 1.2.1 та попередні версії.