The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Уязвимость в BitTorrent-клиенте Transmission, позволяющая вы..."
Версия для распечатки Пред. тема | След. тема
Форум Разговоры, обсуждение новостей
Исходное сообщение [ Отслеживать ]
Присылайте удачные настройки в раздел примеров файлов конфигурации на WIKI.opennet.ru.
"Уязвимость в BitTorrent-клиенте Transmission, позволяющая вы..." +/
Сообщение от opennews (??), 16-Янв-18, 09:57 
В BitTorrent-клиенте Transmission (http://www.transmissionbt.com/) выявлена уязвимость (https://github.com/transmission/transmission/pull/468) (CVE-2018-5702 (https://security-tracker.debian.org/tracker/CVE-2018-5702)), затрагивающая RPC-интерфейс, используемый для организации связи между бэкендом (рабочий процесс) и фронтэндом (интерфейс). Уязвимость позволяет организовать атаку, которая, если в системе запущен  Transmission, может привести к выполнению произвольного кода в системе, при открытии в браузере сайта атакующего.


Исправление  доступно в виде патча (https://patch-diff.githubusercontent.com/raw/transmission/tr...) и обновления для дистрибутивов Debian (https://security-tracker.debian.org/tracker/CVE-2018-5702), FreeBSD (http://www.vuxml.org/freebsd/3e5b8bd3-0c32-452f-a60e-beab7b7...) (пока недоступно для Fedora (https://bodhi.fedoraproject.org/updates/?releases=F27&type=s...), SUSE (https://www.suse.com/security/cve/CVE-2018-5702/), openSUSE (https://lists.opensuse.org/opensuse-security-announce/2018-01/), Ubuntu (https://people.canonical.com/~ubuntu-security/cve/2018/CVE-2...), RHEL/EPEL (https://bugzilla.redhat.com/show_bug.cgi?id=1534063)). Информация об уязвимости и патч для её устранения были переданы (https://bugs.chromium.org/p/project-zero/issues/detail?id=1447) разработчикам Transmission ещё 30 ноября, но разработчики никак не отреагировали на проблему, поэтому исследователь решил раскрыть подробности об атаке не дожидаясь истечения 90 дней, чтобы дистрибутивы могли устранить уязвимость не дожидаясь обновления от основного проекта.

По умолчанию бэкенд принимает запросы на сетевом порту 9091, привязываясь к интерфейсу localhost (127.0.0.1). Запросы фронтэндов отправляются с использованием формата JSON, а для успешного подключения обязательно заполнение HTTP-заголовка "X-Transmission-Session-Id". Злоумышленник может создать страницу, при открытии которой при помощи вызова XMLHttpRequest() можно отправить произвольный запрос на localhost, но в этом случае невозможно подставить свой заголовок "X-Transmission-Session-Id", так как сработает защита от выхода за пределы области текущего домена (cross-origin).


Для обход данного ограничения предлагается интересный трюк. Для хоста с которого предлагается страница для атаки на DNS настраивается поочерёдная отдача двух IP-адресов: на первый запрос отдаётся реальный IP сервера со страницей, а затем возвращается 127.0.0.1. Время жизни (TTL) для данной DNS-записи выставляется в минимальное значение. При открытии страницы браузер определяет реальный IP сервера атакущего и загружает содержимое страницы. На странице запускается JavaScript-код, ожидающий истечения TTL и после этого отправляющий при помощи XMLHttpRequest() второй запрос, который теперь определяет хост как 127.0.0.1, что приводит к обращению к внутреннему сетевому интерфейсу компьютера пользователя без ограничений cross-origin, что позволяет передать произвольный HTTP-заголовок.

Для демонстрации атаки подготовлен специальный минималистичный DNS-сервер rbndr (https://github.com/taviso/rbndr), циклично меняющий  IP для хоста.  Также доступен (http://lock.cmpxchg8b.com/Asoquu3e.html) пример JavaScript-кода для совершения атаки. Для организации выполнения кода после успешной отправки запроса к бэкенду  используется возможность Transmission по привязке выполнения скрипта к загрузке торрента. В частности, можно передать бэкенду команду по включению режима script-torrent-done-enabled и запустить любой скрипт или установить параметр download-dir в /home/user/  и загрузить фиктивный торрент с именем ".bashrc".

URL: http://openwall.com/lists/oss-security/2018/01/11/1
Новость: http://www.opennet.me/opennews/art.shtml?num=47912

Ответить | Правка | Cообщить модератору

Оглавление
Уязвимость в BitTorrent-клиенте Transmission, позволяющая вы..., opennews, 16-Янв-18, 09:57  [смотреть все]
Форумы | Темы | Пред. тема | След. тема



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру