09.11 // Клиент службы Tor может раскрыть конфиденциальные данные пользователя
В анонимизационной службе Tor обнаружена уязвимость, которая при определенных условиях, может позволить злоумышленнику получить доступ к конфиденциальным данным приложения.
Проблема заключается в том, что некоторые компиляторы во время оптимизации кода опускают функцию memset(), если заполняемый ею буфер больше нигде не используется. Таким образом, находящиеся в памяти данные не обнуляются, что позволяет считать их другим процессом.
Учитывая, что служба Tor предназначена для предоставления пользователям анонимного доступа к сети Интернет и обеспечения защиты сохранности конфиденциальной информации, наличие подобной бреши может быть использовано для восстановления списка ресурсов, посещаемых пользователем, а также извлечения учетных данных, которые используются для авторизации на этих ресурсах.
Описание уязвимости
Дата публикации: | 09.11.2012 |
Дата изменения: | 09.11.2012 |
Всего просмотров: | 0 |
Опасность: | Низкая |
Наличие исправления: | Нет |
Количество уязвимостей: | 1 |
CVSSv2 рейтинг: | (AV:N/AC:H/Au:N/C:P/I:N/A:N/E:P/RL:U/RC:C) = Base:2.6/Temporal:2.3 |
CVE ID: | Нет данных |
Вектор эксплуатации: | Удаленная |
Воздействие: | Обход ограничений безопасности |
CWE ID: | Нет данных |
Наличие эксплоита: | PoC код |
Уязвимые продукты: | Tor Browser Bundle for Windows 2.x |
Уязвимые версии: | Tor 2.2.39-5, возможно другие версии |
Описание: | Уязвимость позволяет удаленному пользователю раскрыть важные данные на целевой системе. Уязвимость существует из-за ошибки состояния операции при вызове функции memset(), которая может быть удалена компилятором. Удаленный пользователь может раскрыть содержимое буферов клиента Tor |
URL производителя: | https://www.torproject.org/ |
Решение: | Способов устранения уязвимости не существует в настоящее время. |
Добавлено 14.11.12: Проблема устранена в Tor 0.2.4 и выше.
Источник: http://www.securitylab.ru/news/432245.php, http://www.securitylab.ru/vulnerability/432243.php, http://www.viva64.com/ru/b/0178/
Коммитнул. Ссылку на это:
тоже дал.
Иногда, в некоторых случаях (не знаю, как воспроизвести), директория ~/.local появляется усилиями TBB, и тогда в соответствующий файл утекают данные о том, что было загружено в сети. В идеологии TBB (stand alone application) ничего вне директории писаться не должно, а на деле вот так выходит. Другие ошибки этого рода уже обсуждали. В общем, у большинства юзеров эта директория есть (всякая гуйня её очень любит), поэтому у них данные туда утекают обширным потоком.
Вот (как раз ваш случай), вот, вот, и всё вместе
Список тикетов про утечки на диск для разных случаев, не везде это вина браузера и не всегда возможно что-либо изменить или исправить кодом браузера. В критически важных случая спасет только Tails или что-то такое. И про использование полного диского шифрования забывать не стоит, потому-что часть утечек можно пофиксить линками на /dev/null, но что-то можно пропустить. Современные ОСи для домашнего пользователя как их не собирай в результате напоминают виндоус.
Что касается меня, у меня нет, например, никаких файловых менеджеров, даже консольных. Все gtk-окошки вызывает TorBrowser. Просто последний (обычно) не настолько наглый, чтобы тут же создавать отсутствующую ~/.local, но вот другие приложения их моментально создают на ура (тот же cvlc). Соответственно, если до чистки профиля вы запустили такое приложение, все дальнейшие скачиваемые файлы оседают в логах на диске.
Это всё понятно, но даже они не нивелируют утечку на 100%. Если противник взломает TBB, он получит информацию о том, какие файлы были скачаны в данном сеансе, просто считав логи. От этого ничего не спасёт.
Если б не тащили туда всё, что ни попадя, можно было бы поговорить. Я вот помню времена, когда самые отпетые могли сказать «у меня не стоит ни одного приложения на Qt/GTK, и при этом всё работает». Да, это было до мира Web 2.0.
Браузер ничего про эту директорию не знает и в файл не пишет. Эти строчки с попыткой записи из системных libgtk, которые не входят в комплект ни Firefox ни TBB.
VLC
В gtk2 и gtk3 можно отключить эту историю для системы целиком через конфиг или для каждого пользователя в отдельности (файлы на разных версий будут отличаться).
Описание настройки.
Должно помочь.
Спасибо, протестирую. С gtk2 сделал, а с gtk3 так и не понял, что нужно прописать в директории /etc/gtk-3.0. Судя по ссылкам, точно такой же опции там нет.
Если файл и строчка "[Settings]" в наличии.
В интернетах упоминают все настройки только для пользователя, а не системы целиком.
Увы, не помогает. Прописывал в /etc/gtk-2.0/gtkrc.
Сообщения об отсутствии файла? Файл recently-used.xbel по требуемому пути всё равно нужен, создайте и посмотрите, там будет только стандартный stub без упоминания сохраняемых браузером файлов.
Да.
Понял. Не подумал об этом. А вообще отключить этот функционал, чтоб он даже не пытался его создавать, наверно, нельзя(?).