Tor
Tor (скор. від англ. The Onion Router[3]) — це браузер, створений для забезпечення анонімності в мережі Інтернет. Клієнтське програмне забезпечення Tor маршрутизує Інтернет-трафік через всесвітню мережу добровільно встановлених серверів з метою приховування розташування користувача. Окрім того, використання Tor робить складнішим відслідковування Інтернет-активності як на рівні вебсайту, так і на рівні Інтернет-провайдера, включаючи «відвідування вебсайтів, залишені повідомлення та коментарі на відповідних ресурсах, миттєві повідомлення та інші форми зв'язку», до користувача[4] і призначений для захисту приватності користувача та можливості проведення конфіденційних операцій, приховуючи користувацьку активність в мережі від стороннього моніторингу.
Тип | Цибулева маршрутизація, Анонімізатор |
---|---|
Автор(и) | The Tor Project, Inc |
Розробник | Проект Tor[1] |
Перший випуск | 20 вересня 2002[2] |
Стабільний випуск | 0.2.9.9 (23 січня 2017 ) |
Репозиторій | gitweb.torproject.org/tor.git |
Нестабільний випуск | 0.3.0.2-alpha (23 січня 2017 ) |
Операційна система | Крос-платформовий |
Мова програмування | C |
Доступні мови | Багатомовний |
Стан розробки | Активний |
Ліцензія | BSD license |
Вебсайт | www.torproject.org |
Tor у Вікісховищі |
«Цибулева маршрутизація» (англ. Onion Routing) відображає шарову природу шифрування даного сервісу: початкові дані шифруються та розшифровуються багато разів, потім передаються через наступні вузли Tor, кожен з яких розшифровуює «шар» шифру перед передачею даних наступному вузлу і, зрештою, до місця призначення. Це зменшує можливість розшифрування оригінальних даних в процесі передачі.[5]
Клієнтське програмне забезпечення Tor — вільне програмне забезпечення і використання мережі Tor безкоштовне.
Історія
Альфа-версія програмного забезпечення, з «функціонуючою та розгорнутою» мережею цибулевої маршрутизації, була оголошена 20 вересня 2002 року.[2]
Початково проект був спонсорований Воєнно-морською дослідницькою лабораторією США (United States Naval Research Laboratory)[6], а згодом, з 2004 до 2005 р. фінансово підтримувався Electronic Frontier Foundation[7]. Програмне забезпечення Tor на цей момент розробляється організацією Tor Project, яка є дослідницько-освітньою неприбутковою організацією[8], розміщеною в США[1] починаючи з грудня 2006 року і отримала розповсюджену фінансову підтримку.[7]
Функціонування
Tor націлений на приховування особистості своїх користувачів і їхньої активності в мережі від аналізу трафіку та спостереження за мережею шляхом відокремлення ідентифікації та маршрутизації. Це реалізація цибулевої маршрутизації, яка шифрує і довільно направляє комунікації через мережу вузлів, що добровільно їх підтримують в різних частинах світу. Ці маршрутизатори застосовують шифрування в багатошаровому вигляді (звідси метафора про цибулю), щоб забезпечити досконалу пряму секретність між вузлами, отже надаючи користувачам анонімність щодо знаходження в мережі. Ця анонімність розширюється до розміщення матеріалів, які інакше могли б бути заборонені в зв'язку цензурою, через анонімні приховані сервіси Tor.[6] Також, утримуючи деякі з вхідних вузлів (bridge relays) засекреченими, користувачі можуть ухилятись від інтернет-цензури, яка покладається на блокування публічних вузлів мережі Tor.[9] Через те, що IP-адреса відправника і отримувача не є одночасно у вигляді відкритого тексту на будь-яких вузлах шляху, крім виходу, жодна з частин інформації не є відкритим текстом, отже не можливо на будь-якій точці комунікаційного каналу ідентифікувати обидва кінці. Отримувачу здається, що останній Tor-вузол (вихідний) є ініціатором передачі даних, а не просто відправником.
Операції з трафіком
Програмне забезпечення Tor періодично транслює віртуальне коло через Tor-мережу, використовуючи багаторівневе шифрування, забезпечує досконалу пряму секретність. В той же час, програмне забезпечення надає SOCKS-інтерфейс своїм клієнтам. SOCKS-програмне забезпечення може бути направлене на Tor, який згодом мультиплексує трафік через віртуальне Tor-коло. Проксі-сервер Polipo використовує SOCKS 4 і SOCKS 5 протоколи, а отже рекомендований для використання разом з анонімізуючою мережею Tor.[10]
Потрапляючи всередину Tor-мережі, трафік відправляється від вузла до вузла, остаточно досягаючи вихідний вузол на якому видається пакет у формі відкритого тексту і направляється до свого початкового місцепризначення. З точки зору призначення, походженням цього трафіку є вихідний Tor-вузол.
Tor працює на TCP-рівні передачі даних в мережі. Програми, чий трафік зазвичай анонімізують, використовуючи Tor, включають Internet Relay Chat (IRC), миттєві повідомлення і World Wide Web. Перегляд веб-сторінок через Tor часто поєднаний з Polipo або Privoxy проксі-сервісами. Privoxy — фільтрувальний проксі-сервер, що направлений поліпшити захист інформації на прикладному рівні моделі OSI і рекомендований до використання разом з анонімізуючою мережею Tor організацією torproject.org.[10][11]
У старих версіях програмного забезпечення Tor (до травня-червня 2010 року[12]), як і багатьох анонімізуючих сервісів перегляду веб-сторінок, прямі DNS-запити виконуються багатьма програмами, без використання Tor-проксі. Це дозволяє кому-небудь спостерігати за з'єднанням користувача з метою виявлення (наприклад), який WWW сайт вони переглядають через Tor, хоча зміст інформації, переглядуваної користувачем залишиться прихованим. Використання Privoxy, або команди «torify» є одним з можливих рішень даної проблеми.[13] Додатково, програми, що використовують SOCKS5 — що підтримує проксі-запити, засновані на імені — може маршрутизувати DNS-запити через Tor, проводячи пошук при вихідному вузлі, отже отримуючи таку ж анонімність як і решта Tor-трафіку.[14]
Починаючи з версії 0.2.0.1-alpha, Tor включає власний DNS-інструмент, який буде проводити запити через змішані мережі. Це має закривати DNS-вразливість і дає можливість взаємодіяти з address mapping facilities Tor-мережі для надання доступу до прихованих Tor-сервісів (.onion
) програмам, що не використовують SOCKS.[12]
Приховані сервіси
Tor також може надавати анонімність серверам у формі сервісів з прихованим місцезнаходженням, які є Tor-клієнтами, чи вузлами, на яких виконується спеціально налаштоване серверне програмне забезпечення. Замість видачі IP-адреси сервера (а отже і його місцезнаходження в мережі), приховані сервіси доступні через притаманні Tor-мережі .onion
псевдо-домени верхнього рівня (TLD).Tor-мережа розуміє ці домени верхнього рівня і маршрутизує дані анонімно в та з прихованих сервісів. Використання Tor-клієнту необхідно для отримання доступу до прихованих сервісів.
Приховані сервіси розміщені в Tor-мережі починаючи з 2004 року.[16] Окрім бази даних, що містить дескриптори прихованих сервісів,[17] Tor децентралізований згідно зі своєю будовою; не існує безпосереднього списку всіх прихованих сервісів. Проте є ряд прихованих сервісів, які слугують цій меті.
Так як приховані сервіси не використовують вихідні вузли, вони не чутливі до «прослуховувань вихідного вузла» (англ. exit node eavesdropping). Хоча є ряд проблем безпеки, щодо прихованих Tor-сервісів. Наприклад, сервіси, які доступні через приховані Tor-сервіси і загальнодоступну мережу інтернет вразливі до кореляційних атак, а отже недосконало приховані. Інші небезпеки включають неправильно сконфігуровані сервіси (пр. ідентифікації інформації, включеної по замовчуванню у повідомленнях про помилку веб-серверів) , статистики uptime і downtime, перехоплюючі атаки і помилки зі сторони користувача.
Приховані сервіси можуть бути доступні без прямого підключення до мережі Tor через Tor2web.
Уразливості
Tor не здатен і не намагається надавати захист проти моніторингу трафіку, що входить і виходить з Tor-мережі. Попри те, що Tor захищає від аналізу трафіку, він не може попередити встановлення наявності трафіку (т.зв. end-to-end correlation).[18][19]
Співробітники Кембріджського Університету представили статтю[20] на Сімпосію IEEE 2005 року про безпеку та приватність щодо технік аналізу трафіку які дозволяли зловмисникам з частковим оглядом мережі зробити висновок про те, який з вузлів використовується для трансляції анонімних потоків. Ця техніка помітно знижує анонімність, яку надає Tor. Також було показано, що на перший погляд потоки, що не відносяться один до одного можуть бути прив'язані назад до того ж ініціатора передачі. Проте, ця атака не здатна виявити особистість користувача-ініціатора.[20]
Загрози безпеці
Слід пам'ятати, що один з вузлів ланцюжка Tor цілком може виявитися уразливим. Також з тієї або іншої причини ворожі до клієнта дії може здійснювати сайт — від спроб з'ясувати справжню адресу клієнта до «відбиття» його повідомлення.
Перегляд і модифікація повідомлення
На останньому вузлі ланцюжка Tor початкове повідомлення від клієнта остаточно розшифровується для передачі його серверу в первинному виді. Відповідно:
- Перший вузол ланцюжка знає справжню адресу клієнта;[21]
- Останній вузол ланцюжка бачить початкове повідомлення від клієнта, хоча і не знає істинного посилача
- Сервер-адресат бачить початкове повідомлення від клієнта, хоча і не знає істинного посилача
- Всі інтернет-шлюзи на шляху від останнього вузла мережі Tor до сервера-адресата бачать початкове повідомлення від клієнта, хоча і не знають адреси істинного посилача.
Розкриття посилача
При роботі з мережею Tor до повідомлень користувача може додаватися технічна інформація, що повністю, або частково розкриває посилача.
- Технічна інформація про адресу сервера-одержувача може видаватися клієнтом шляхом DNS-запитів до свого DNS-сервера, легко перехоплюваних провайдером. Вирішенням цієї проблеми буде налаштування дозволу імен через мережу Tor[22], або блокування фаєрволом доступу Tor до DNS шляхом заборони вихідних з'єднань на віддалений порт 53[23] чи використання сторонніх DNS-серверів, таких як OpenDNS[24] чи TorDNS[25];
- Сервер може запитувати, а клієнт видавати технічну інформацію про адресу клієнта і конфігурації його операційної системи і браузера. Запит може йти як через виконання в браузері сценаріїв мови JavaScript і Java, так і іншими способами. Ця проблема може бути розв'язана відключенням в браузері відповідних сценаріїв і мов, а також використанням фільтрувальних проксі-серверів, таких як Polipo, Privoxy і Proxomitron.
Інші загрози безпеці
- На шляху від останнього вузла мережі Tor до сервера призначення, повідомлення (що йде у відкритому виді) може бути модифіковане
- На шляху від останнього вузла мережі Tor до сервера призначення, існує можливість крадіжки призначених для користувача реквізитів доступу до серверу, наприклад, логіна і пароля, cookie, або сеансу зв'язку
- Сервер може відхилити повідомлення з адресою посилача вузла мережі Tor. Так чинять багато серверів[26] для захисту від спама, анонімного вандалізму і з інших причин. Зокрема, так чинить Вікіпедія, Google,[27] Linux.org.ru і деякі корпорації.[28]
Застосування
- Більша частина програмного забезпечення Tor написана мовою програмування Сі та приблизно становить 146,000 рядків коду.[29]
- Vuze (колишній Azureus), BitTorrent клієнт, написаний мовою Java, включає вбудовану підтримку Tor.[30]
- Маршрутизатори з вбудованою апаратною підтримкою Tor на даний час знаходяться в розробці організацією Torouter project.[31] Код програмного забезпечення знаходиться на стадії альфа версії, та запускається з платформи OpenWrt.[32]
- Проект Guardian активно розробляє програмне забезпечення відкритого коду для платформи Android з метою створення більш захищених мобільних комунікацій.[33] Програмне забезпечення включає: Gibberbot — клієнт миттєвих повідомлень, що використовує Off-the-Record Messaging-шифрування;[34] Orbot — Tor клієнт для Android;[35] Orweb — мобільний браузер;[36] ProxyMob — аддон для Firefox що допомагає керувати HTTP, SOCKS, і SSL-проксі налаштування для інтеграції з Orbot;[37] і Secure Smart Cam — набір інструментів-утиліт для покращення конфіденційності інформації, що зберігається в пристрої.[38]
Найпоширеніші пакунки (bundle) TOR'у
Існують розробки пакунків TOR для основних операційних систем, але, наразі, зупинимося на збірці під Windows.
У пакет входять власне сама програма TOR, Vidalia (графічний інтерфейс) і Privoxy (фільтрувальний проксі). Privoxy відповідає за фільтрацію контенту, блокування cookies-файлів та небезпечних скриптів. Поруч з цим, Privoxy блокує рекламу на веб-сторінках, як і будь-який інший фільтрувальний проксі.
Розробники TOR наполегливо рекомендують використовувати Privoxy через можливу загрозу витоку DNS (DNS leak). Так що, хоч і можна завантажити та встановити кожен компонент пакету окремо, краще прислухатися до поради розробників TOR.
Примітки
- Tor Project: Core People. The Tor Project. Архів оригіналу за 18 січня 2011. Процитовано 17 липня 2008.
- Dingledine, Roger (20 вересня 2002). pre-alpha: run an onion proxy now!. or-dev mailing list. Процитовано 17 липня 2008.
- Мережа TOR (спочатку називалася «The Onion Router») // Термінологічний словник з питань запобігання та протидії легалізації (відмиванню) доходів, одержаних злочинним шляхом, фінансуванню тероризму, фінансуванню розповсюдження зброї масового знищення та корупції / А. Г. Чубенко, М. В. Лошицький, Д. М. Павлов, С. С. Бичкова, О. С. Юнін. — Київ : Ваіте, 2018. — С. 395. — ISBN 978-617-7627-10-3.
- Glater, Jonathan D. (25 січня 2006). Privacy for People Who Don't Show Their Navels. The New York Times. Процитовано 13 травня 2011.
- The Tor Project. Tor: anonymity online. Процитовано 9 January 2011.
- Dingledine, Roger; Mathewson, Nick; Syverson, Paul (13 серпня 2004). Tor: The Second-Generation Onion Router. Proc. 13th USENIX Security Symposium. San Diego, California. Процитовано 17 листопада 2008.
- Tor: Sponsors. The Tor Project. Процитовано 11 грудня 2010.
- Make a Donation. The Tor Project. Процитовано 31 травня 2011.
- Tor: Bridges. The Tor Project. Процитовано 9 січня 2011.
- Ubuntuusers.de – Tor einrichten und verwenden. Архів оригіналу за 13 липня 2013. Процитовано 28 грудня 2010.
- TheOnionRouter/TorFAQ. The Tor Project. Процитовано 28 грудня 2010.
- Tor Changelog. Архів оригіналу за 26 червня 2007. Процитовано 11 вересня 2007.
- TheOnionRouter/TorifyHOWTO – Noreply Wiki. Процитовано 19 квітня 2007.
- RFC 1928 – SOCKS Proxy Protocol, Version 5. Архів оригіналу за 31 липня 2008. Процитовано 4 серпня 2008.
- Øverlier, Lasse; Paul Syverson (21 червня 2006). Locating Hidden Servers (PDF). Proceedings of the 2006 IEEE Symposium on Security and Privacy IEEE Symposium on Security and Privacy. Oakland, CA: IEEE CS Press. с. 1. doi:10.1109/SP.2006.24. ISBN 0-7695-2574-1. Процитовано 8 червня 2008.
- The Tor Project, Inc. Tor: Hidden Service Protocol, Hidden services. Torproject.org. Процитовано 9 січня 2011.
- One cell is enough to break Tor's anonymity. Tor website. 18 лютого 2009. Процитовано 9 січня 2011.
- TheOnionRouter/TorFAQ. Процитовано 18 вересня 2007. «Tor (like all current practical low-latency anonymity designs) fails when the attacker can see both ends of the communications channel»
- Low-Cost Traffic Analysis of Tor (PDF). 19 січня 2006. Архів оригіналу за 13 липня 2013. Процитовано 21 травня 2007.
- Захиститися від компрометації у такому разі допомагає можливість вибору в Tor вхідного і вихідного вузла.
- Наприклад, за допомогою перенаправлення портів, або використанням віртуальної машини JanusVM фільтрувального проксі-сервера Privoxy, які при вірних налаштуваннях примусово завертають в себе увесь трафік.
- Якщо запустити сервер Tor після заборони на передачу імен DNS, то він не зможе працювати таким, що виходить, незалежно від заданих йому налаштувань.
- Якщо запустити Tor при використанні openDNS, то стає неможливим підняття сервера цієї мережі, оскільки openDNS починає видавати йому неправдиві адреси.
- TorDNS. Архів оригіналу за 27 вересня 2009. Процитовано 22 березня 2012.
- Tor blacklist Архівовано 27 вересня 2007 у Wayback Machine. — список блокування Tor для веб-сервера Apache.
- — 12 Чому Google блокує мої пошукові запити через Tor?
- 68971/ Блокуємо Tor на корпоративному firewall.
- Luckey, Robin. Tor. Ohloh. Архів оригіналу за 13 липня 2013. Процитовано 16 квітня 2010.
- Tor. Vuze. Архів оригіналу за 13 липня 2013. Процитовано 3 березня 2010.
- Simonite, Tom (22 грудня 2010). Home Internet with Anonymity Built In. Technology Review. Процитовано 14 травня 2011.
- Torouter Project. Процитовано 10 травня 2011.
- About. The Guardian Project. Процитовано 10 травня 2011.
- Gibberbot: Secure Instant Messaging. The Guardian Project. Архів оригіналу за 11 травня 2011. Процитовано 10 травня 2011.
- Orbot: Mobile Anonymity + Circumvention. The Guardian Project. Процитовано 10 травня 2011.
- Orweb: Privacy Browser. The Guardian Project. Архів оригіналу за 11 травня 2011. Процитовано 10 травня 2011.
- ProxyMob: Firefox Mobile Add-on. The Guardian Project. Архів оригіналу за 11 травня 2011. Процитовано 10 травня 2011.
- Obscura: Secure Smart Camera. The Guardian Project. Архів оригіналу за 11 травня 2011. Процитовано 10 травня 2011.