В ходе аудита были выявлены 17 уязвимостей, лишь одна из которых отнесена к категории опасных. Четырём уязвимостям присвоен средний уровень опасности, 12 отнесены к проблемам с незначительным уровнем опасности. Наиболее опасная уязвимость выявлена в приложении onbasca (Onion Bandwidth Scanner), применяемом для сканирования пропускной способности узлов сети.
Уязвимость вызвана возможностью отправки запросов через HTTP-метод GET, позволяющих выполнить подстановку межсайтовых запросов от лица другого пользователя (CSRF, Cross-Site Request Forgery), позволяющих атакующему добавить свои мостовые узлы в БД через манипуляцией с параметром «bridge_lines». Например, атакующий моет разместить web-страницу с JavaScript-кодом fetch(«http://127.0.0.1:8000/bridge-state/?
bridge_lines=obfs4+0.0.0.0%3A00000+AAA+cert%3D0+iat-mode%3D0», и если эту страницу откроет пользователь с активным сеансом к Onion Bandwidth Scanner, то от его имени в базу будет добавлен IP «0.0.0.0».
Проблемы со средним уровнем опасности:
- Отказ в обслуживании в metrics-lib через передачу большого сжатого файла — так как файл распаковывается в оперативную память, можно передать подобие zip-бомбы (например, можно упаковать 600 МБ нулей в 0.0006 МБ) и вызвать исчерпание доступной памяти.
- Использование в tor-android-service (применяется в Tor browser для Android) стороннего модуля tun2socks, сопровождение которого прекращено.
- Запись нулевого байта за границу выделенного буфера в клиенте Tor из-за использования функции read_file_to_str_until_eof, возвращающей размер без учёта нулевого символа.
- Уязвимость в sbws (Simple Bandwidth Scanner), позволяющая откатить HTTPS-соединение до HTTP, используя редирект на HTTP. Подконтрольный атакующему выходной узел Tor потенциально может использовать данную уязвимость для организации утечки API-токенов.
Источник: http://www.opennet.ru/opennews/art.shtml?num=60522