Tor
Tor (скор. від англ. The Onion Router[4]) — це браузер, створений для забезпечення анонімності в мережі Інтернет. Клієнтське програмне забезпечення Tor маршрутизує Інтернет-трафік через всесвітню мережу добровільно встановлених серверів з метою приховування розташування користувача. Окрім того, використання Tor робить складнішим відслідковування Інтернет-активності як на рівні вебсайту, так і на рівні Інтернет-провайдера, включаючи «відвідування вебсайтів, залишені повідомлення та коментарі на відповідних ресурсах, миттєві повідомлення та інші форми зв'язку», до користувача[5] і призначений для захисту приватності користувача та можливості проведення конфіденційних операцій, приховуючи користувацьку активність в мережі від стороннього моніторингу.
![]() | |
![]() | |
Тип | Цибулева маршрутизація, Анонімізатор |
---|---|
Автор | The Tor Project, Inc |
Розробник | Проект Tor[1] |
Перший випуск | 20 вересня 2002[2] |
Стабільний випуск | 0.2.9.9 (23 січня 2017 ) |
Нестабільний випуск | 0.3.0.2-alpha (23 січня 2017 ) |
Операційна система | Крос-платформовий |
Мова програмування | C |
Доступні мови | Багатомовний |
Стан розробки | Активний |
Ліцензія | BSD license |
Репозиторій | gitlab.torproject.org/tpo/core/tor/ |
Вебсайт | www.torproject.org |
«Цибулева маршрутизація» (англ. Onion Routing) відображає шарову природу шифрування цього сервісу: початкові дані шифруються та розшифровуються багато разів, потім передаються через наступні вузли Tor, кожен з яких розшифровуює «шар» шифру перед передачею даних наступному вузлу і, зрештою, до місця призначення. Це зменшує можливість розшифрування оригінальних даних в процесі передачі.[6]
Клієнтське програмне забезпечення Tor — вільне програмне забезпечення і використання мережі Tor безкоштовне.
Історія
ред.Альфа-версія програмного забезпечення, з «функціонуючою та розгорнутою» мережею цибулевої маршрутизації, була оголошена 20 вересня 2002 року.[2]
Початково проект був спонсорований Воєнно-морською дослідницькою лабораторією США (United States Naval Research Laboratory)[7], а згодом, з 2004 до 2005 р. фінансово підтримувався Electronic Frontier Foundation[8]. Програмне забезпечення Tor на цей момент розробляється організацією Tor Project, яка є дослідницько-освітньою неприбутковою організацією[9], розміщеною в США[1] починаючи з грудня 2006 року і отримала розповсюджену фінансову підтримку.[8]
Функціонування
ред.Tor націлений на приховування особистості своїх користувачів і їхньої активності в мережі від аналізу трафіку та спостереження за мережею шляхом відокремлення ідентифікації та маршрутизації. Це реалізація цибулевої маршрутизації, яка шифрує і довільно направляє комунікації через мережу вузлів, що добровільно їх підтримують в різних частинах світу. Ці маршрутизатори застосовують шифрування в багатошаровому вигляді (звідси метафора про цибулю), щоб забезпечити досконалу пряму секретність між вузлами, отже надаючи користувачам анонімність щодо знаходження в мережі. Ця анонімність розширюється до розміщення матеріалів, які інакше могли б бути заборонені в зв'язку цензурою, через анонімні приховані сервіси Tor.[7] Також, утримуючи деякі з вхідних вузлів (bridge relays) засекреченими, користувачі можуть ухилятись від інтернет-цензури, яка покладається на блокування публічних вузлів мережі Tor.[10] Через те, що IP-адреса відправника і отримувача не є одночасно у вигляді відкритого тексту на будь-яких вузлах шляху, крім виходу, жодна з частин інформації не є відкритим текстом, отже не можливо на будь-якій точці комунікаційного каналу ідентифікувати обидва кінці. Отримувачу здається, що останній Tor-вузол (вихідний) є ініціатором передачі даних, а не просто відправником.
Операції з трафіком
ред.Програмне забезпечення Tor періодично транслює віртуальне коло через Tor-мережу, використовуючи багаторівневе шифрування, що забезпечує досконалу пряму секретність. В той же час, програмне забезпечення надає SOCKS-інтерфейс своїм клієнтам. SOCKS-програмне забезпечення може бути направлене на Tor, який згодом мультиплексує трафік через віртуальне Tor-коло. Проксі-сервер Polipo використовує SOCKS 4 і SOCKS 5 протоколи, а отже рекомендований для використання разом з анонімізуючою мережею Tor.[11]
Потрапляючи всередину Tor-мережі, трафік відправляється від вузла до вузла, остаточно досягаючи вихідний вузол, на якому видається пакет у формі відкритого тексту і направляється до свого початкового місцепризначення. З точки зору призначення, походженням цього трафіку є вихідний Tor-вузол.
Tor працює на TCP-рівні передачі даних в мережі. Програми, чий трафік зазвичай анонімізують, використовуючи Tor, включають Internet Relay Chat (IRC), миттєві повідомлення і World Wide Web. Перегляд вебсторінок через Tor часто поєднаний з Polipo або Privoxy проксі-сервісами. Privoxy — фільтрувальний проксі-сервер, що направлений поліпшити захист інформації на прикладному рівні моделі OSI і рекомендований до використання разом з анонімізуючою мережею Tor організацією torproject.org.[11][12]
У старих версіях програмного забезпечення Tor (до травня-червня 2010 року[13]), як і багатьох анонімізуючих сервісів перегляду вебсторінок, прямі DNS-запити виконуються багатьма програмами, без використання Tor-проксі. Це дозволяє кому-небудь спостерігати за з'єднанням користувача з метою виявлення (наприклад), який WWW сайт вони переглядають через Tor, хоча зміст інформації, переглядуваної користувачем залишиться прихованим. Використання Privoxy, або команди «torify» є одним з можливих рішень даної проблеми.[14] Додатково, програми, що використовують SOCKS5 — що підтримує проксі-запити, засновані на імені — може маршрутизувати DNS-запити через Tor, проводячи пошук при вихідному вузлі, отже отримуючи таку ж анонімність як і решта Tor-трафіку.[15]
Починаючи з версії 0.2.0.1-alpha, Tor включає власний DNS-інструмент, який буде проводити запити через змішані мережі. Це має закривати DNS-вразливість і дає можливість взаємодіяти з address mapping facilities Tor-мережі для надання доступу до прихованих Tor-сервісів (.onion
) програмам, що не використовують SOCKS.[13]
Приховані сервіси
ред.Tor також може надавати анонімність серверам у формі сервісів з прихованим місцезнаходженням, які є Tor-клієнтами, чи вузлами, на яких виконується спеціально налаштоване серверне програмне забезпечення. Замість видачі IP-адреси сервера (а отже і його місцезнаходження в мережі), приховані сервіси доступні через притаманні Tor-мережі .onion
псевдо-домени верхнього рівня (TLD).Tor-мережа розуміє ці домени верхнього рівня і маршрутизує дані анонімно в та з прихованих сервісів. Використання Tor-клієнту необхідно для отримання доступу до прихованих сервісів.[16]
Приховані сервіси розміщені в Tor-мережі починаючи з 2004 року.[17] Окрім бази даних, що містить дескриптори прихованих сервісів,[18] Tor децентралізований згідно зі своєю будовою; не існує безпосереднього списку всіх прихованих сервісів. Проте є ряд прихованих сервісів, які слугують цій меті.
Так як приховані сервіси не використовують вихідні вузли, вони не чутливі до «прослуховувань вихідного вузла» (англ. exit node eavesdropping). Хоча є ряд проблем безпеки, щодо прихованих Tor-сервісів. Наприклад, сервіси, які доступні через приховані Tor-сервіси і загальнодоступну мережу інтернет вразливі до кореляційних атак, а отже недосконало приховані. Інші небезпеки включають неправильно сконфігуровані сервіси (пр. ідентифікації інформації, включеної по замовчуванню у повідомленнях про помилку вебсерверів)[16], статистики uptime і downtime, перехоплюючі атаки і помилки зі сторони користувача.
Приховані сервіси можуть бути доступні без прямого підключення до мережі Tor через Tor2web.
Уразливості
ред.Tor не здатен і не намагається надавати захист проти моніторингу трафіку, що входить і виходить з Tor-мережі. Попри те, що Tor захищає від аналізу трафіку, він не може попередити встановлення наявності трафіку (т.зв. end-to-end correlation).[19][20]
Співробітники Кембріджського Університету представили статтю[21] на Сімпосію IEEE 2005 року про безпеку та приватність щодо технік аналізу трафіку, які дозволяли зловмисникам з частковим оглядом мережі зробити висновок про те, який з вузлів використовується для трансляції анонімних потоків. Ця техніка помітно знижує анонімність, яку надає Tor. Також було показано, що на перший погляд потоки, що не відносяться один до одного, можуть бути прив'язані назад до того ж ініціатора передачі. Проте, ця атака не здатна виявити особистість користувача-ініціатора.[21]
Загрози безпеці
ред.Слід пам'ятати, що один з вузлів ланцюжка Tor цілком може виявитися уразливим. Також, з тієї або іншої причини, ворожі до клієнта дії може здійснювати сайт — від спроб з'ясувати справжню адресу клієнта до «відбиття» його повідомлення.
Перегляд і модифікація повідомлення
ред.На останньому вузлі ланцюжка Tor початкове повідомлення від клієнта остаточно розшифровується для передачі його серверу в первинному виді. Відповідно:
- Перший вузол ланцюжка знає справжню адресу клієнта;[22]
- Останній вузол ланцюжка бачить початкове повідомлення від клієнта, хоча і не знає істинного посилача
- Сервер-адресат бачить початкове повідомлення від клієнта, хоча і не знає істинного посилача
- Всі інтернет-шлюзи на шляху від останнього вузла мережі Tor до сервера-адресата бачать початкове повідомлення від клієнта, хоча і не знають адреси істинного посилача.
Розкриття посилача
ред.При роботі з мережею Tor до повідомлень користувача може додаватися технічна інформація, що повністю, або частково розкриває посилача.
- Технічна інформація про адресу сервера-одержувача може видаватися клієнтом шляхом DNS-запитів до свого DNS-сервера, легко перехоплюваних провайдером. Вирішенням цієї проблеми буде налаштування дозволу імен через мережу Tor[23], або блокування фаєрволом доступу Tor до DNS шляхом заборони вихідних з'єднань на віддалений порт 53[24] чи використання сторонніх DNS-серверів, таких як OpenDNS[25] чи TorDNS[26];
- Сервер може запитувати, а клієнт видавати технічну інформацію про адресу клієнта і конфігурації його операційної системи і браузера. Запит може йти як через виконання в браузері сценаріїв мови JavaScript і Java, так і іншими способами. Ця проблема може бути розв'язана відключенням в браузері відповідних сценаріїв і мов, а також використанням фільтрувальних проксі-серверів, таких як Polipo, Privoxy і Proxomitron.
Інші загрози безпеці
ред.- На шляху від останнього вузла мережі Tor до сервера призначення, повідомлення (що йде у відкритому виді) може бути модифіковане
- На шляху від останнього вузла мережі Tor до сервера призначення, існує можливість крадіжки призначених для користувача реквізитів доступу до серверу, наприклад, логіна і пароля, cookie, або сеансу зв'язку
- Сервер може відхилити повідомлення з адресою посилача вузла мережі Tor. Так чинять багато серверів[27] для захисту від спама, анонімного вандалізму і з інших причин. Зокрема, так чинить Вікіпедія, Google,[28] Linux.org.ru і деякі корпорації.[29]
Застосування
ред.- Більша частина програмного забезпечення Tor написана мовою програмування Сі та приблизно становить 146,000 рядків коду.[30]
- Vuze[en] (колишній Azureus), BitTorrent клієнт, написаний мовою Java, включає вбудовану підтримку Tor.[31]
- Маршрутизатори з вбудованою апаратною підтримкою Tor на даний час знаходяться в розробці організацією Torouter project.[32] Код програмного забезпечення знаходиться на стадії альфа версії, та запускається з платформи OpenWrt.[33]
- Проект Guardian активно розробляє програмне забезпечення відкритого коду для платформи Android з метою створення більш захищених мобільних комунікацій.[34] Програмне забезпечення включає: Gibberbot — клієнт миттєвих повідомлень, що використовує Off-the-Record Messaging-шифрування;[35] Orbot — Tor клієнт для Android;[36] Orweb — мобільний браузер;[37] ProxyMob — аддон для Firefox що допомагає керувати HTTP, SOCKS, і SSL-проксі налаштування для інтеграції з Orbot;[38] і Secure Smart Cam — набір інструментів-утиліт для покращення конфіденційності інформації, що зберігається в пристрої.[39]
Найпоширеніші пакунки (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 September 2002). pre-alpha: run an onion proxy now!. or-dev (Список розсилки). Архів оригіналу за 26 липня 2011. Процитовано 17 July 2008.
- Free_Software_Directory
[[d:Track:Q2470288]]
Tor (like all current practical low-latency anonymity designs) fails when the attacker can see both ends of the communications channel
Посилання
ред.- Офіційний вебсайт
- Tor Project FAQ
- Що таке Tor [Архівовано 5 березня 2016 у Wayback Machine.]
Це незавершена стаття про Інтернет. Ви можете допомогти проєкту, виправивши або дописавши її. |