SlideShare une entreprise Scribd logo
1  sur  33
Télécharger pour lire hors ligne
ИКОНОМИЧЕСКИ УНИВЕРСИТЕТ – ГР. ВАРНА
ФАКУЛТЕТ „ИНФОРМАТИКА“
КАТЕДРА „ИНФОРМАТИКА“
ЦЕНТЪР „МАГИСТЪРСКО ОБУЧЕНИЕ“
ПО ДИСЦИПЛИНАТА
„Безопасност и защита”
НА ТЕМА
„Защита от анализ на трафика чрез технологията
Tor”
Изготвил:
Ангел Иванов Николов
ф.н. 11457, гр. 61, курс 5,
спец. Информатика
Проверили:
Ас. Радка Начева
Доц. д-р Стефан Дражев
Варна
2014
Защита от анализ на трафика чрез технологията Tor
Ангел Иванов Николов, ф.н. 11457 2/33
СЪДЪРЖАНИЕ
ВЪВЕДЕНИЕ ............................................................................................................................................4
1. Анализ на трафика ............................................................................................................................5
1.1. Същност и история на възникване на атаката .........................................................................5
1.2. Анализ на трафика в епохата на Интернет...............................................................................7
1.3. Цели на анализа на трафика ...................................................................................................10
1.4. Начини за анонимно сърфиране в Интернет.........................................................................13
2. Технологията Tor .............................................................................................................................15
2.1. Абстрактен поглед и технологични основи ...........................................................................15
2.2. Механизъм на работа..............................................................................................................17
2.2.1. Терминология....................................................................................................................17
2.2.2. Tor клиентът.......................................................................................................................18
2.2.3. Комуникация и пренос на данни между възлите. Клетки, вериги и потоци...............19
2.2.4. Инициализиране на нова верига.....................................................................................23
2.2.5. Изпращане и получаване на данни по инициализирана верига..................................26
2.3. Приложения на Tor ..................................................................................................................29
ЗАКЛЮЧЕНИЕ.......................................................................................................................................31
ИЗПОЛЗВАНА ЛИТЕРАТУРА.................................................................................................................32
Защита от анализ на трафика чрез технологията Tor
Ангел Иванов Николов, ф.н. 11457 3/33
Traffic analysis, not cryptanalysis, is the backbone
of communications intelligence.
Susan Landau and Whitfield Diffie
Защита от анализ на трафика чрез технологията Tor
Ангел Иванов Николов, ф.н. 11457 4/33
ВЪВЕДЕНИЕ
Анализът на трафика е специализирана атака, чиято цел е
прихващане и изследване на съобщенията в процеса на комуникация без
знанието на участващите страни. В съвременното информационно
общество тази атака се прилага за множество различни цели и от различни
хора. Първоначално атаката се е считала за нарушаване на личната
неприкосновеност и е извършвана от хакери, търсещи различни облаги.
Следва период, в който, поради широкото навлизане на Интернет в живота
на хората, някои страни намират в анализа на трафика инструмент за
ограничаване на достъпа до определени Интернет ресурси.
Анализът на трафика се счита за сериозен проблем в съвременната
Интернет комуникация, което изключително много повдига стандартите за
сигурност на предаваните по електронен път данни. Потребителите се
стремят все повече към запазване на своята анонимност при използването
на Интернет, както и на упражняване на правото си за свободен достъп до
негово съдържание. Възникват и все по – изтънчени имплементации на
атаката, което от своя страна води до създаването на различни механизми
за защита, всеки от които предоставя различно ниво на анонимност.
Към настоящия момент най – сигурният начин за защита от анализа
на трафика е технологията Tor, базирана на принципите на „луковата
маршрутизация“. Тор е мрежа от свързани помежду си сървъри. Вместо
съобщенията да се изпращат директно от изпращач до получател в
Интернет, те преминават през случайно избран път от сървъри в мрежата
на Tor, криптират се многократно и така достигат своята дестинацията.
По този начин технологията Tor предоставя изключително високи
нива на анонимност и защита от анализ на трафика. Чрез нейното
използване потребителите гарантират своята анонимност при
използването на глобалната мрежа, а заедно с това успешно се
противопоставят и на цензурирането на Интернет.
Защита от анализ на трафика чрез технологията Tor
Ангел Иванов Николов, ф.н. 11457 5/33
1. Анализ на трафика
1.1. Същност и история на възникване на атаката
Анализът на трафика (Traffic Analysis) е процес на прихващане
и изследване на съобщенията в процеса на комуникация без знанието
на участващите страни – изпращач и получател. Днешно време такъв
вид атака се използва както срещу комуникацията в световната мрежа –
Интернет, така и срещу комуникацията в Интранет мрежи, макар
исторически първо да възниква много преди появата на съвременните
компютри и мрежи. Информацията за това кой с кого комуникира, кога се
извършва комуникацията и за колко дълго време, големината и
съдържанието на предаваните съобщения (ако не са криптирани или е
възможно да се разбие използваният криптографски алгоритъм) може да
помогне на атакуващия да придобие знания за страните в комуникацията,
а в най – добрия случай да ги идентифицира без тяхното знание.
Исторически анализът на трафика възниква първо във военното
разузнаване и контраразузнаване, като основната цел е била добиването на
ценна информация за поведението или в най – добрия случай съставянето
на модел на поведението на някоя от двете страни (изпращач или
получател) в противниковата комуникацията, въз основа на намерени
зависимости в прихванатите съобщения. По този начин е било възможно
да се предвидят техните планове за действие, а в резултат да се
предприемат и съответните превантивни военни действия.
Историята познава случаи от времето на Първата и Втората световни
войни, когато са се анализирали главно изпращаните по радио вълни
съобщения. Появата на тази интерференция по времето на военни
действия води до две основни направления в развитието на
комуникацията, второто от които е основна част от комуникацията ни в
Интернет в днешни дни:
 използване на фалшиви съобщения с цел дезинформация на
Защита от анализ на трафика чрез технологията Tor
Ангел Иванов Николов, ф.н. 11457 6/33
противника;
 криптиране на предаваните съобщения.
Дезинформирането на противника има основна заслуга в много
военни действия отново главно през Втората световна война. Счита се, че
дезинформацията на противника не помага толкова за спечелването на
дадена битка, колкото за намаляване на броя на жертвите. Пример тук са
операцията „Хъски“ за удара на Съюзническите войски на остров Сицилия
и операцията „Минсмит“ за дезинформация относно мястото на удара1
.
Анализът на трафика на съобщенията води до широко използване на
криптографската наука при комуникацията от една страна, а от друга до
използването на криптоанализа върху прихванатите съобщения. Счита се,
че анализът на трафика е пряко свързан с криптоанализа, тъй като най –
често се цели да се разчетат прихванатите съобщения.
По време на войните се използват
различни криптографски алгоритми за
криптиране на предаваните съобщения, така
че дори и да се прихванат, то да е
невъзможно да се декриптират без знанието
за използвания ключ. Появяват се машини,
улесняващи криптирането – например
роторната криптираща машина „Енигма“
(вж. фиг. 1) използваща субституционен
многоазбучен шифър. Според
главнокомандващият на Съюзническите сили
Дуайт Айзенхауер, разбиването на нейния
код спомага за цялостната победа над
Хитлеристка Германия2
.
1
Монтегю, Ю. Воюващият покойник. Държавно военно издателство, София, 1963.
2
Winterbotham, F. The Ultra secret: the inside story of Operation Ultra, Bletchley Park and Enigma. Orion
Books Ltd, London. 2000.
Фиг. 1 Машината „Енигма“
Защита от анализ на трафика чрез технологията Tor
Ангел Иванов Николов, ф.н. 11457 7/33
1.2. Анализ на трафика в епохата на Интернет
В днешно време писмената, радио- и дори лице в лице
комуникацията е заместена от такава в Интернет пространството.
Широкото навлизане на Интернет в ежедневието на хората и в частност
обмяната на чувствителна информация – например за извършени банкови
трансакции или информация от социалните мрежи – увеличават
възможността за атака чрез анализ на Интернет трафика, опасността от
която често се подценява.
При комуникацията в Интернет обменяните между компютрите
(например между клиент и сървър) съобщенията се организират в
множество единици от данни, наречени сегменти (segments) или датаграми
(datagrams) в зависимост от използвания протокол на транспортния слой в
OSI модела (съответно TCP или UDP – двата най – използвани протокола).
След това тези единици от данни заедно с метаданните за тях се
инкапсулират в други такива на мрежовия слой – пакети (packets) при
използването на протокола IP. Чрез използването на специални хардуерни
устройства (packet capture appliance) и специален софтуер за атакуващият
е лесно да пресече пътя на пакетите в мрежата и да достъпи информацията
за изпращач и получател от хедърите на TCP сегментите или UDP
датаграмите, а и за самото съдържание на обменяното съобщение, ако то
не е криптирано. Дори и при използването на протоколи от приложния
слой, предоставящи криптиране и автентикация (например SSH), е
възможно да се намерят зависимости в предаваните съобщения, чрез
анализ на единиците от данни от по – долен слой и в частност кога са
пратени (т.нар. Timing attack)3
.
Теоретично за извършването на анализ на трафика не е
задължително да се знае съдържанието на обменяните съобщения, т.е.
3
Song, D., Wagner, D., Tian., X. Timing Analysis of Keystrokes and Timing Attacks on SSH.
http://www.cs.berkeley.edu/~daw/papers/ssh-use01.pdf
Защита от анализ на трафика чрез технологията Tor
Ангел Иванов Николов, ф.н. 11457 8/33
съобщенията могат да бъдат криптирани. Това може да стане с
неизвестен ключ или с криптографски алгоритми, които не използват
ключ, но се пазят в тайна. Според известния криптограф и криптоаналитик
Брус Шнайер (Bruce Schneier)4
, такива алгоритми, наречени ограничени
алгоритми (restricted algorithms), все още се използват в практиката.
Достатъчно информация за страните в комуникацията може да се получи
само като се анализира честотата на изпращане на съобщенията (брой
изпратени съобщения за единица време), точното време на тяхното
изпращане, техния размер, изпращач и получател или други
характеристики, които не се криптират и са достъпни от хедърите на
единиците данни при транспортните или мрежовите протоколите.
Метаданните за данните сами по себе си са достатъчни за
осъществяването на атаката.
Сигурността на криптографските алгоритми зависи от дължината на
използвания ключ, независимо дали става въпрос за симетрично или
асиметрично криптиране (познато още като криптиране с публичен ключ)
и се измерва в битове. Тя трябва да е по – къса от дължина на ключа, тъй
като всеки алгоритъм може да бъде компрометиран (разбит) чрез
последователна проверка с всички възможни ключове (т.нар. brute force
атака). Освен атаката с груба сила (brute force attack), която изисква
операции за n-битов ключ, е възможно да се открият други атаки с по –
малко операции – т. нар. пробиви (breaks).
За разлика от периода на Втората световна война, когато кодът на
машината „Енигма“ е разбит, днес е малко вероятно да се разбие някои от
съвременните криптографски алгоритми. Повечето от тях използват
ключове с дължина 128 бита или по – голяма. Например AES предлага
симетрично криптиране с 128, 192 или 256 битов ключ, а ECDSA, който
предлага асиметрично криптиране, работи с няколко различни ключа с
4
Schneier, B. Applied Cryptography: Protocols, Algorithms, and Source Code in C. John Wiley & Sons,
Second Edition, 1996.
Защита от анализ на трафика чрез технологията Tor
Ангел Иванов Николов, ф.н. 11457 9/33
дължина от 112 до 521 бита. Счита се, че brute force атака е практически
невъзможно да се извърши върху алгоритми със 128-битов или по – дълъг
ключ (забележете, че 56-битовият ключ на DES беше разбит през чрез
успешна brute force атака за малко над 2 дни през 1998 г.5
, което и наложи
неговото заместване от усъвършенствания алгоритъм AES през 2001 г.).
Въпреки това криптоаналитиците продължават да анализират
алгоритмите и да откриват нови теоретични атаки – първо върху
алгоритми с по – къси ключове или върху такива с намален брой на
трансформациите на изходния в криптиран текст. Така евентуално се стига
до реализацията на пробиви (каквито за момента не съществуват за
пълните версии нито на AES, нито DSA) или, съгласно Закона на Мур,
развитието на изчислителната техника позволява извършването на
практика на brute force атака.
Поради тази причина анализът на трафика в днешни дни е
съсредоточен върху анализиране на метаданните за съобщенията, а не
върху тяхното съдържание, като често тази атака се използва в
комбинация с друга. А компютърна сигурност все повече се фокусира
върху използването на криптографията за осигуряване на
конфиденциалност, интегритет на данните, автентикация на записите и
доказателство за произход и често опасността от анализа на трафика и
метаданните за съобщенията неправилно бива подценявана.
Възможен сценарий за анализ на трафика са изпращането на
множество малки по размер пакети, което може да означава, че при тази
комуникация всяко съобщение отговаря на отделен натиснат бутон. Такъв
е принципът на работа на SSH при предаването на паролите. Тук броят на
пакетите всъщност определя дължината на паролата. Друг възможен
сценарий е прихващането на големи по размер пакети, чието изпращане
отнема значително време. Това може да индикира трансфер на файлове
между компютри, например в peer-to-peer мрежа (P2P). Трети сценарий
5
Wikipedia, Data Encryption Standard, http://en.wikipedia.org/wiki/Data_Encryption_Standard
Защита от анализ на трафика чрез технологията Tor
Ангел Иванов Николов, ф.н. 11457 10/33
доказва възможността от определяне на спецификациите на
операционната система на изпращач чрез анализ на хедърите от
протоколния стек TCP/IP6
. Независимо от конкретната ситуация, добитата
чрез атаката информация сама по себе си не е от съществено значение за
сигурността на мрежата, но ако се комбинира с друга такава, придобита
чрез други способи от страна на атакуващия, вече може да се окаже
съществена за идентифициране на страните в комуникационния процес.
1.3. Цели на анализа на трафика
В епохата на Интернет анализът на трафика се прилага за множество
различни цели и от различни хора. Първоначално атаката се е считала за
нарушаване на личната неприкосновеност и е извършвана от хакери,
търсещи различни облаги. Следва период, в който, поради широкото
навлизане на Интернет в живота на хората, някои страни намират в
анализа на трафика инструмент за ограничаване на достъпа до определени
Интернет ресурси. Еволюцията на атака всъщност довежда до нейното
използване от мрежовите специалисти и за добри цели – оптимизиране на
мрежовата топология на организации с различен размер.
На първо място анализът на трафика се извършва като атака
срещу личната неприкосновеност на хората. Най – често цел на
атакуващите е кражбата на самоличност (identity theft), която се счита
за криминална дейност в много държави. Добитата информация в някои
случаи е достатъчна да се изгради профил на някоя от страните в
прихванатата комуникация. Например последните години атакуващите се
съсредоточават само в анализиране на трафика от и към социалните
мрежи, тъй като сами по себе си те предоставят достатъчно информация,
от данни или метаданни, за изграждане на профил на потребителите.
Сравнително ново приложение на атаката за анализ на трафика
е свързана с навлизането на виртуалната децентрализирана
6
The Honeynet Project, Know Your Enemy: Passive Fingerprinting, http://old.honeynet.org/papers/finger
Защита от анализ на трафика чрез технологията Tor
Ангел Иванов Николов, ф.н. 11457 11/33
криптовалута Биткойн в употреба. Псевдоанонимността на валутата и
фактът, че пренасяните съобщения в мрежата не се криптират (Биткойн
протоколът не поддържа криптиране на данните) улесняват атакуващия,
който може да анализира Интернет трафика, да определи кога даден възел
в мрежата е изпратил трансакция, която не е получил предварително. Това
означава, че този възел я е създал, т.е. изразходваните средства в
трансакцията са от локално съхранявания портфейла на Биткойн клиента,
работещ на въпросния възел. По този начин може да се получи
информация за баланса на Биткойн адреси, които се съхраняват локално в
даден портфейл на дадена физическа машина и какъв е IP адресът на тази
машина, а допълнително може да се определи и нейното местоположение.
Добитата от анализа на трафика информация може да се
използва при реализирането на физическа атака – например кражба
на компютър или само на твърд диск, съхраняващ вече известно
количество биткойни на известни адреси. За сравнение при
инициализиране на трансакции през активно Интернет банкиране няма
смисъл да се намери физическото местоположение на компютър чрез IP
адреса, тъй като той не съхранява данни от интерес за атакуващият. При
технологията Биткойн всеки компютър в мрежата, съхранява частен ключ
(private key), който всъщност е 256-битово число, което може да управлява
милиони или дори милиарди парични единици.
Анализът на Интернет трафика се използва в някои страни като
инструмент за налагане на законовите разпоредби. На първо място това
се случва в страни, в които има въведена цензура на Интернет, т.е. забрана
за достъп до определени ресурси от мрежата въз основа на културни или
социални различия. Примери за такива държави, които се считат за
врагове на Интернет, са главно страни от Югоизточна Азия, вкл. Китай.
На второ място анализът на трафика може да се използва от държавите,
които по закон имат право да следят цялата комуникационна дейност за
целите на националната сигурност. Тук няма цензуриране на
Защита от анализ на трафика чрез технологията Tor
Ангел Иванов Николов, ф.н. 11457 12/33
съдържанието на Интернет, а просто следене на трафика, за да може в
случай на хакерски атаки с терористична или не цел (група
"Анонимните"), да се определи техният източник. Пример за такава
държава е САЩ, където закон (Communications Assistance for Law
Enforcement Act7
) задължава доставчиците на телекомуникационни услуги
да инсталират устройства за прихващане на пакетите по мрежата, за да
може при необходимост да се анализира трафика.
Анализът на трафика намира приложение и в електронната
търговия. Много сайтове следят от къде идва трафика и в зависимост от
това определят съдържанието, което да се показва. В комбинация с
използването на бисквитки (cookies) атаката се превръща в мощен
маркетингов инструмент за насочване (таргетиране) на Интернет
рекламата въз основа на изграден уебографски профил8
. Той включва
показатели като продължителност и честота на използване на Интернет,
точка на достъп, скорост и вид на връзката, вид на използвания компютър
или мобилно устройство, използвана операционна система, използван
браузър – показатели, които могат да се добият чрез анализ на трафика.
Теоретично този подход се използва и от други сайтове, например
новинарски, за да определят съдържанието, което да се покаже. Но най –
голяма полза от него имат Интернет търговците, за които е важно да
придобият колкото се може повече информация за потребителите, за да
могат успешно да идентифицират целевата аудитория и евентуални нови
купувачи.
На последно място анализът на трафика може да се използва от
системни администратори и мрежови специалисти за подобряване на
инфраструктурата на Интранет мрежата на различни по размер
предприятия.
7
Wikipedia, Communications Assistance for Law Enforcement Act,
http://en.wikipedia.org/wiki/Communications_Assistance_For_Law_Enforcement_Act
8
Илиев, П. и др. Електронен бизнес – Първа част. Наука и икономика, Варна, 2011.
Защита от анализ на трафика чрез технологията Tor
Ангел Иванов Николов, ф.н. 11457 13/33
Повечето мрежови устройства като рутери и суичове (Cisco, Juniper
и др. производители) имат вградени инструменти за следене и на трафика,
който минава през тях, и предоставят възможност данните за
прихванатият трафик да се екпортират към друго устройство (например
компютър) със специално инсталиран софтуер. Той от своя страна
позволява на следващ етап да се систематизира и анализира трафика, да се
намерят слаби места в преноса на данни и дава предложения за
подобряване на инфраструктурата на мрежата. Възможно е дори да се
извършва извличане на знания от данните (data mining), например за
маркетингови цели. Софтуерът позволява да се води статистика за размера
на пакетите, процент изгубени пакети при пренос, времето за отговор на
заявките, използваните протоколи от по – горен слой, както и информация
за Интернет сокетите (sockets) на изпращач и получател. Пример за такъв
софтуерен продукт е Network Traffic Analyzer на компанията SolarWinds.
При мрежовите устройства се следи информацията за пакетите от
мрежовия слой, т.е. пренасяните единиците от данни се декапсулират до
пакети, прочита се информацията от хедърите на IP пакетите, и се
изпращат на подходящия следващ възел. Тук отново проличава
възможността за анализ на трафика без да се взима в предвид самото
съдържание на съобщенията, което дори може да е криптирано, а само
метаданните за тях.
1.4. Начини за анонимно сърфиране в Интернет
След разгледаните приложения на анализа на Интернет трафика,
следва да обърнем внимание на начините за защита от тази атака. По –
нататък в разработката ще разглеждаме анализа на трафика като атака
срещу личната неприкосновеност или средство за ограничаване на
свободния достъп до цялото съдържание на глобалната мрежа, тъй като
основното приложение на средствата за защита е именно тяхното
предотвратяване. Съществуват два основни начина за защита атаката –
Защита от анализ на трафика чрез технологията Tor
Ангел Иванов Николов, ф.н. 11457 14/33
чрез използването на прокси сървър или маршрутизираща система.
Защитна стена от тип приложен шлюз или прокси сървър (application
gateway или application proxy) представлява сървър, чиято основна
функция е да изпълнява ролята на допълнителен възел в комуникацията в
модела клиент-сървър. Този допълнителен възел се представя за клиент на
сървъра, изпълнява уеб заявките вместо крайните потребители, получава
желаната информацията от сървъра и я предава обратно на клиента, който
я е изисквал. По този начин моделът се превръща в клиент-прокси-сървър
и се предоставя анонимност и защита на клиента. Отдалеченият уеб
сървър получава информация за прокси сървъра и може да анализира
трафика само до него, но не и трафика, който влиза в прокси сървъра от
други възли в мрежата. Съществуват различни видове прокси сървъри в
зависимост от начина на работа – уеб прокси (най – разпространени),
SOCKS, CGI прокси и др. Най – използваните прокси скриптове за уеб
прокси сървъри са PHProxy, CGI Proxy, Glype и др.
Прокси сървърКлиент
HTTP Request
HTTP Response
Уеб сървър
HTTP Request
HTTP Response
Фиг. 2 Клиент-прокси-сървър модел
Проблемът при прокси сървърите е, че голяма част от тях са
платени, и всъщност те самите следят и анализират трафика, който минава
през тях. Често дори прокси сървърите се инсталират именно с цел да
анализират трафика, който минава през тях. Макар и да помагат за достъп
до забранено съдържание в Интернет, то анонимността, която предлагат
може да се класифицира като условна в зависимост от това доколко се
доверяваме на оператора на прокси сървъра.
С оглед на този проблем възниква и най – доброто решение за
анонимно сърфиране в Интернет до момента. За да се затрудни атакуващ
Защита от анализ на трафика чрез технологията Tor
Ангел Иванов Николов, ф.н. 11457 15/33
да анализира трафика от едно прокси, всъщност се създава мрежа от
свързани във верига прокси сървъри, т.е. между изпращачът и получателят
на пакетите се разполагат не един, а множество прокси сървъри – получава
се т.нар. маршрутизираща система. Това значително затруднява
проследяването на Интернет трафика, като е необходимо не само да се
следи един прокси сървър, а всички такива, тъй като един прокси сървър
знае само от къде идват съобщенията и накъде да ги изпрати, но няма
информация за пропътувания път от тях, тъй като самите проксита
действат като шлюзове. Този принцип се имплементира и доразвива чрез
добавянето на криптиране на съобщенията във веригата от технологията
„лукова маршрутизация“ (onion routing). Най – известния имплементация
на луковата маршрутизация е технологията Tor, на която сме обърнали
внимание в следващата точка.
2. Технологията Tor
2.1. Абстрактен поглед и технологични основи
Tor (преди известен като The Onion Router) е лукова
маршрутизираща система, която е най – доброто решение за анонимно
комуникиране и сърфиране в глобалната мрежа Интернет. Tor е името
както на самата маршрутизираща система, така и на технология,
анонимната мрежата от сървъри и софтуерно приложение с отворен код,
написано на езика C, което имплементира технологията. Представена е за
първи път на 13 август 2004 г. от Роджър Дингълдин (Roger Dingledine),
Ник Матюсън (Nick Mathewson) и Пол Сивърсън (Paul Syverson) на 13-тия
Симпозиум по сигурност на асоциацията USENIX (Advanced Computing
Technical Association)9
.
По – конкретно Tor представлява мрежа от свързани на щафетен
9
Dingledine, R., Mathewson, N., Syverson, P. Tor: The Second – Generation Onion Router. The USENIX
Association, 2004. https://www.usenix.org/legacy/events/sec04/tech/full_papers/dingledine/dingledine.pdf
Защита от анализ на трафика чрез технологията Tor
Ангел Иванов Николов, ф.н. 11457 16/33
принцип сървъри, които са разположени на различни физически възли в
глобалната мрежа. Вместо съобщенията да се изпращат директно от
изпращач до получател в мрежата, те преминават през случайно избран
път, наречен верига, от сървъри в мрежата от сървъри на Tor и така
достигат своята дестинация. Допълнително при преминаването от един
сървър на друг в рамките на Tor мрежата, съобщенията се инкапсулират и
криптират многократно. Всеки сървър знае само от кой сървър са дошли
съобщенията и към кой сървър той трябва да ги препрати, но не и целия
техен път в рамките на Tor или извън нея. Следователно никой от тях да
не може да определи кои са и оригиналните изпращач и получател на
съобщенията, т.е. от къде те идват и накъде отиват. Едновременно с това
тази липса на информация не пречи за изпращането на съобщението
(request) през веригата от сървъри на Tor до крайния му получател и
получаване на съобщение в отговор по обратния път (response).
Основният принцип се базира на идеята, че ако някой ни следи, то е
по – добре да не използваме директен път от началната до крайната точка,
а заобиколен, по – труден за проследяване път, като едновременно с това
периодично изтриваме стъпките си и евентуално става невъзможно да се
проследи пътя, по който сме минали. Следвайки тази идея Tor се фокусира
върху предоставянето на потребители на Интернет свободата анонимно да
комуникират помежду си и да преодоляват умишленото цензуриране на
Интернет съдържанието, като прави невъзможно анализирането и
проследяването на техния трафик.
Допълнително атака не може да се извърши нито от външни
единици, които не са част от Tor мрежата (например случайни Интернет
рутери), нито от вътрешни за Tor мрежата единици (например щафетните
сървърите). Комбинирането на множество сървъри, които действат на
принципа на прокси сървърите, изключва възможността един от тях да
извърши анализ на трафика, тъй като, както споменахме, неговите знания
за пътя на съобщенията са ограничени. Именно поради тази причина
Защита от анализ на трафика чрез технологията Tor
Ангел Иванов Николов, ф.н. 11457 17/33
използването на луковите маршрутизиращи системи е по – надеждно от
използването на единствен прокси сървър от гледна точка на
анонимността на Интернет комуникацията.
2.2. Механизъм на работа
2.2.1. Терминология
Преди да обясним механизмът на работа на технологията Tor, е
необходимо да дадем дефиниции на следните важни термини:
Възел (Node) – физическо устройство в мрежата на Tor, на което работи
сървър (прокси). Получава и изпраща клетки към други възли в мрежата
Tor; нарича се още луков рутер (onion router).
Клетка (Cell) – основна единица от данни на мрежата Tor (подобна на
пакетите при IP протокола); трафикът през Tor се пренася във форма на
клетки с фиксирана големина, но различни хедъри и тела.
Tor клиент (Tor client) – приложение, което се инсталира на компютъра
на изпращача. Може да се конфигурира да изпълнява ролята на изходящ,
междинен възел или мост. Нарича се още луково прокси (onion proxy).
Входящ възел, входна точка (Entry node) – възел от мрежата на Tor, от
който трафикът, получен от изпращача, влиза в мрежата.
Изходящ възел, изходна точка (Exit node) – възел от мрежата на Tor, от
който трафика излиза от нея и са изпраща към оригиналния получател.
Междинен възел (Relay node) – всички възли от Tor мрежата, които не са
входящи или изходящи.
Директориен възел (Directory node) – възел от мрежата на Tor, който
предоставя директорийна услуга за цялата Tor мрежа. Съхранява
информация за всички възли в мрежата, без мостовете.
Мост (Bridge) – междинен възел в Tor мрежата, който не присъства в
списъка от възли на директорийния възел.
Верига (Circuit) – случайно избран път от възли през мрежата на Tor.
Поток (Stream) – поток от данни, които се изпраща по Tor мрежата по
предварително определена верига.
Защита от анализ на трафика чрез технологията Tor
Ангел Иванов Николов, ф.н. 11457 18/33
2.2.2. Tor клиентът
За да се използват услугите на Tor мрежата е необходимо от
Интернет да се изтегли и инсталира Tor клиентът10
. Следващата стъпка е
конфигуриране на приложения, които използват Интернет да
осъществяват връзката през Tor клиента. Пример за такива приложения са
чат клиентите, уеб браузъри и др. Конфигурация се състои в въвеждането
на сокет localhost:9050 за SOCKS прокси (виж фиг. 3) на приложенията,
които поддържат връзка през прокси, т.е. Tor клиентът играе ролята на
SOCKS прокси сървър на самия компютър, който инициализира
комуникацията. Затова той се нарича още луково прокси.
Основните функции на Tor клиента са:
 получаване на информация за активни възли в мрежата на Tor от
директорийните възли;
 инициализиране на вериги в Tor мрежата;
 приемане на потоците от данни от локалните приложения и тяхното
изпращане по изградена верига в Tor мрежата и vice versa;
Използването на Tor
задължава приложенията да
поддържат TCP връзка с
Интернет през SOCKS прокси.
Ако не се поддържа SOCKS
прокси, а друг вид е възможно
да се използва друг прокси
сървър в Интернет, които от
своя страна да се свърже с
мрежата на Tor, т.е. ще
опосредстви връзката на
приложенията с Tor мрежата. Приложения, които използват UDP
протокола за пренос на данни в глобалната мрежа не могат да
10
Tor Project: Anonymity Online, https://www.torproject.org
Фиг. 3 Конфигуриране на Skype
за работа през Tor
Защита от анализ на трафика чрез технологията Tor
Ангел Иванов Николов, ф.н. 11457 19/33
използва Tor мрежата. Това е така, тъй като UDP е безсесиен протокол,
т.е. не се установява сесия с между изпращач и получател преди да се
изпратят данните по мрежата и съответно не изпраща данните по вече
отворен поток (за разлика от TCP, където се установява сесия преди
началото на комуникацията, а последната се извършва по т.нар. TCP
потоци).
Ако потребител притежава достатъчно бърза Интернет връзка и
желае да подпомогне работата на мрежата, то той може да превърне
компютъра си в един от сървърите на Tor и да помага при
маршрутизирането на данните като изтегли една от версиите на
приложението Tor в зависимост от това дали иска да функционира като
изходящ, междинен възел или мост. Забележете, че входящите възли за
Tor мрежата са предварително определени и не е възможно произволни
възли в мрежата да изпълняват тази роля, тъй като това би довело до
реконфигуриране на Tor клиента при неговата първоначална връзка с Tor
мрежата. В случай, че потребител желае да използва услугите на Tor
мрежата само за анонимно сърфиране в Интернет, то е възможно да се
изтегли специална версия на Tor клиента, която представлява
конфигуриран и готов за сърфиране Интернет браузър (Tor Browser
Bundle), притежаващ интерфейсът на Mozilla Firefox.
2.2.3. Комуникация и пренос на данни между възлите. Клетки, вериги и
потоци
Основната единица данни за Tor мрежата е клетката (cell). Тя е
подобна на пакетите при IP протокола. Комуникацията между възлите в
Tor мрежата и между Tor клиент и възлите в самата мрежа се осъществява
под формата на пренос на клетки. Всяка клетка е с фиксирана големина от
512 байта и съдържа хедър и тяло (DATA). Най – важната информация за
възлите в мрежата се намира в две полета в хедъра на клетките –
идентификатор на веригата (CircID), който показва на коя верига
принадлежи клетката и команда (CMD), която показва на текущия възел
Защита от анализ на трафика чрез технологията Tor
Ангел Иванов Николов, ф.н. 11457 20/33
какво да прави с получената клетка.
В зависимост от командата клетките биват два вида : Control клетка
и Relay клетка (вж. фиг. 4). Съдържанието на тялото на Control клетките се
интерпретира от получилия ги възел, а relay клетките само се препращат
по веригата, без да се интерпретират. Последните съдържат допълнителни
полета в хедъра, които са криптирани с AES-128. Най – важните от тях са
идентификатор на TCP потока (StreamID) във веригата (CircID), на който
принадлежи клетката, и 48-битова хеш-стойност (Digest) на цялата клетка,
получена след използването на хеш-функцията SHA-1, която се използва
за проверка на интегритета на данните. Ако данните в клетката са
променени умишлено или при загуба по мрежата, то хеш-функцията ще
върне различна хеш-стойност, а ако получат такава възлите автоматично
ще прекъснат веригата.
Фиг. 4 Видове клетки и техните полета
Мрежата на Tor се състои от множество възли, наречени още лукови
рутери. Към момента на изготвяне на настоящата разработка техният брой
е 5290 и продължава да расте11
. Първоначално мрежата е започнала работа
с около 100 възела. Всички възли в мрежата поддържат постоянна
криптирана връзка както помежду си, така и с всички Tor клиенти.
Използва се протокола TLS протокола, наследник на SSL, който криптира
предаваните данните при връзката между възлите в мрежата и прави
невъзможно тяхното разчитане от страна на злонамерен потребител.
Всяка подверига между два възела в мрежата или между възел и Tor
клиент има уникален идентификатор, т.е. той зависи от страните във
11
Tor Network Status, http://torstatus.blutmagie.de
Защита от анализ на трафика чрез технологията Tor
Ангел Иванов Николов, ф.н. 11457 21/33
връзката (connection-specific). Една случайно изградена верига в Tor
мрежата между от възел А, през възел B, до възел С ще има 2 различни
идентификатора (полето CircID от хедъра на клетките), в зависимост от
това при пътуването си дали клетката е между А и В (първа подверига)
или между В и С (втора подверига). Допълнително през TLS връзката
между два възела например А и В могат да преминават много вериги с
различни идентификатори (Верига 1 и Верига 2), т.е. възможно е вериги да
съвпадат в някоя своя част (например верига A->B->C и D->B->C съвпадат
в частта си между възли А и В). Например Tor клиентът на потребител A и
Tor клиентът на потребител могат да използват една и съща верига през
Tor мрежата за съвсем различни и независи помежду си комуникации (вж.
фиг. 5).
Възел А Възел B
TLS връзка
Верига 1
TCP Поток 1
TCP Поток 2
Верига 2
TCP Поток 1
TCP Поток 2
Фиг. 5 TLS връзка с няколко вериги, всяка от които с няколко потока
Важна особеност на веригите е, че през тях могат да се
извършват множество различни трансфери на данни през различни
TCP потоци. Поради тази причина е необходимо в relay клетките да се
пази идентификатор на потока във веригата (вж. фиг. 4). Например уеб
браузър и чат клиент могат да инициализират отделни TCP връзки, които
могат да бъдат маршрутизирани през една и съща верига. Това се прави с
цел ефективност и бързодействие, тъй като инициализирането на нова
верига (вж. т. 2.2.4.) за всяка отделна TCP комуникация може да доведе до
Защита от анализ на трафика чрез технологията Tor
Ангел Иванов Николов, ф.н. 11457 22/33
забавяне на работата на Tor мрежата. Инициализира нова верига се
извършва за около 5 сек. За да се намали опасността от някаква форма на
проследяване (например свързване на различни потоци от данни към една
единствена верига), Tor клиентът е конфигуриран на всеки 10 минути да
получава от мрежата нова верига за извършване на комуникацията.
Според официалните данни Tor притежава 5290 възела, 996 от които
са изходящи – възли, от които трафика излиза от мрежата и се изпраща
към оригиналния получател. Списъкът на възлите е публично достъпен на
адрес http://torstatus.blutmagie.de. Входящите възли са неизвестни, нито
техния брой, нито техните IP адреси, тъй като е възможно доставчиците на
Интернет да блокират достъпа до тях, ако са им известни. Те са известни
само на директорийните възли. По подразбиране всички вериги в
мрежата на Tor включват 3 възела – входящ възел, един междинен
възел и изходящ възел. Макар и изградена от много възли, мрежата не ги
използва всички за една верига, тъй като това би забавило твърде много
трафика. Ако допуснем, че броя на входящите възли е колкото
изходящите, т.е. около 1000, което прави
междинни възли, то след прости изчисления намираме:
 ( ) ( ) ( ) възможни вериги, като
отделни техни подвериги съвпадат (или между входния възел и
междинния или между междинния и изходния);
 ( ) възможни уникални вериги без
повтарящи се подвериги между възлите;
 ( ) възможни уникални вериги, без
повтарящи се възли, т.е. всеки възел участва точно в една верига.
Това доказва, че ако за всеки отделен TCP поток се ползва
отделна верига и ако съществува изискване никаква част от веригите
да не съвпада, то математически мрежата не притежава капацитета да
обслужва голям брой заявки.
Допълнително съществуват т.нар. мостове – специални възли, които
Защита от анализ на трафика чрез технологията Tor
Ангел Иванов Николов, ф.н. 11457 23/33
не са включени в директорията, няма техен публично достъпен списък (за
разлика от останалите възли). Дори и Интернет доставчикът да блокира
достъпа до известни възли от мрежата на Tor (било то междинни или
изходящи), то най – вероятно той няма да може да блокира достъпа до
всички мостовете. Те играят роля на резервни възли и е възможно да се
изгради верига изцяло от мостове, в случай че е блокиран достъпът до
всички известни възли на Tor мрежата. По този начин мрежата се
противопоставя на цензурирането на Интернет, в това число и на
забраната за достъп до подобни услуги за анонимно сърфиране.
2.2.4. Инициализиране на нова верига
Инициализирането на нова верига в мрежата на Tor е най – важната
част от работата на мрежата. Нека е даден примерният сценарии от фиг. 6.
– потребител (клиент) иска да се свърже с уеб сървър (т.е. да изпрати
HTTP request и HTTP response), като целият трафик трябва да минава през
мрежата на Tor, за да се постигне анонимност на потребителя и
невъзможност за реализиране на атаката анализ на трафика.
Tor мрежа
Уеб сървър
Изходящ възелВходящ възел
Междинен възел Неизползван
междинен възел
Неизползван
междинен възел
Клиент
Директориен възел
Фиг. 6 Инициализиране на нова верига
При първоначалното си стартиране Tor клиентът се свързва с
директорийния възел, които му предоставя случайно три възела от Tor
мрежата – един входящ, един междинен и един изходящ възел, които ще
образуват веригата за този клиент. Никой от тези възли, обаче, не знае
Защита от анализ на трафика чрез технологията Tor
Ангел Иванов Николов, ф.н. 11457 24/33
къде във веригата се намира, освен изходящия възел. Той знае, че е
последен, тъй като той изпраща пакетите на техния оригинален
получател, а не на друг възел от Tor мрежата, т.е. той има достъп до
оригиналния, но модифициран, хедър на IP пакета.
Следва създаване на подверига от клиента до входящия възел.
Директорийният възел предоставя както списък на възлите, така и
публичен ключ на всеки от тях (всеки възел има частен и публичен ключ
за асиметрично криптиране). Tor клиентът използва публичния ключ на
първия възел – входящия – за да изпрати към него криптирана клетка.
Използва се асиметрично криптиране, като само входящият възел може да
декриптира клетката, тъй като той притежава съответния частен ключ от
двойката ключове.
Самата клетка, която се изпраща между клиента и входящия възел
съдържа команда create (т.нар. create cell), която означава заявка за
създаването на нова верига, идентификатора на веригата и първата част от
„ръкостискането“ на алгоритъма на Дифи – Хелман12
. Той е подобен на
Three way handshake при TCP, но с цел размяна на обща тайна, общ ключ,
който се използва по – нататък при изпращане и получаване на данни.
Входящият възел отговаря с некриптирана клетка с команда created
и втората част от „ръкостискането“ на Дифи – Хелман, заедно с хеш-
стойност, за да може Tor клиентът да извлече тази обща тайна (общ ключ).
Веднъж извършен този процес означава, че Tor клиентът и входящият
възел вече имат обща тайна, която могат да използват за криптиране на
последваща комуникация помежду си и веригата между тях е създадена.
Тази обща тайна всъщност се нарича сесиен ключ. Забележете, че
установяването на верига става с помощта на асиметрично криптиране,
при което двете страни научават един общ ключ, който по – нататък се
използва за симетрично криптиране при последваща комуникация между
страните.
12
Wikipedia, Diffie–Hellman key exchange, http://en.wikipedia.org/wiki/Diffie-Hellman_key_exchange
Защита от анализ на трафика чрез технологията Tor
Ангел Иванов Николов, ф.н. 11457 25/33
След като е установена верига между Tor клиента и входящия възел
следва тя да се разшири и да включи следващият избран възел –
междинния. Тоr клиентът използва този път публичния ключ на
междинния възел (отново получен от директорийния възел), за да изпрати
криптирана клетка към него, включваща нов идентификаторът на веригата
и първата част от „ръкостискането“ на алгоритъма на Дифи – Хелман, но
различни от предходните. Отново командата е create, но предназначена за
междинния възел. Самата клетка, обаче, за да стигне до междинния възел
трябва да мине през входящия.
Ключово тук е, че криптираната create клетката се инкапсулира в
друга клета с команда relay extend, криптирана с вече обменения сесиен
симетричен ключ и така се праща към входящия възел. Той декриптира
съдържанието вижда, че трябва да препрати (маршрутизира) клетката към
определения междинен възел, а не да я интерпретира и го прави.
Теоретично той не може да я интерпретира, тъй като инкапсулираната
клетка е криптирана с публичния ключ на междинния възел.
Така клетката стига до междинния възел. Той декриптира
съдържанието си със своя частен ключ, и отговаря на входящия възел с
некриптирана клетка с команда created и втората част от
„ръкостискането“ на Дифи – Хелман, заедно с хеш-стойност,
предназначена да обмени общ ключ с Tor клиента. Ключовото за
анонимността е, че междинният възел не може да прецени първата
част от „ръкостискането“ дали е изпратена от предходния възел или
от някой преди него (какъвто е случая).
Входящият възел от своя страна отговаря на Tor клиента с клетка с
команда relay extended, т.е. съобщава му, че веригата е била удължена с
още един възел. Заедно с това му предоставя и отговора на междинния
възел, т.е. Tor клиентът и междинният възел вече имат обща тайна общ
ключ различен от предходния, която могат да използват за криптиране на
последваща комуникация помежду си и веригата между тях е създадена.
Защита от анализ на трафика чрез технологията Tor
Ангел Иванов Николов, ф.н. 11457 26/33
Аналогично се извършва удължаването на веригата и до третия
възел – изходящият. Единствената разлика, че този път клетката
предназначена за третия възел, ще трябва да бъде маршрутизирана както
от входящия, така и от междинния възел. Ще се извършат две симетрични
криптирания с двата вече обменени ключа и едно асиметрично с публични
ключ на третия възел. Забележете, че след установяване на цялата верига,
Tor клиентът ще притежава 3 различни ключа за симетрично криптиране,
първият от тях се притежава също така от входния възел, втория – от
междинния, а третия от изходящия.
Същността на изграждането на верига в мрежата на Tor е Tor
клиентът да размени общи ключове със всеки един възел във
веригата. Теоретично процесът може да продължава до безкрай и да се
създават вериги от много възли, но както казахме в технологията Tor
веригите са ограничени до 3 възела.
2.2.5. Изпращане и получаване на данни по инициализирана верига
След изграждането на веригата и обмяната на симетрични ключове
за криптиране, вече изпращачът може да изпраща данни по веригата
анонимно. Следваща стъпка в разглеждания сценарий, в който потребител
иска да зареди уеб страница от отдалечен уеб сървър, е изготвянето на
HTTP заявка, нейното инкапсулиране по OSI модела, заедно с IP и други
реквизити и изпращане от Интернет браузърът към Tor клиента на същия
компютър, т.е. тя ще мине първо през луковото прокси. Там тя бива
симетрично криптирана три пъти в три различни вложени една в друга
клетки със команди relay data (командата е различна от relay extend).
Първо се криптира с обменения ключ с изходящия възел, след това
получения криптиран текст се криптира още веднъж с обменения ключ на
междинния възел, и най – накрая с този на входящия възел. Така се
получава вложени една в друга клетки, с три слоя на криптиране общо,
предназначени за изпращане и маршрутизиране през Tor мрежата (вж.
фиг. 7). Тялото на всяка клетка представлява друга криптирана клетка,
Защита от анализ на трафика чрез технологията Tor
Ангел Иванов Николов, ф.н. 11457 27/33
като тялото на най – вътрешната е всъщност оригиналната заявка на
клиента. Важно е да се отбележи, че Tor клиентът модифицира HTTP
заявката, така че да не се вижда IP адресът на изпращача, а само на
получателя.
Фиг. 7 Инкапсулирана в три слоя криптиране HTTP заявка
Така образуваната клетка е известна като лук (onion), понеже всяко
криптиране добавя по един слой върху оригиналните данни, в случая
HTTP заявката. Поради това и самите системи, които действат на този
принцип се наричат лукови.
Следва изпращане на така получената лукова клетка в Tor мрежата.
Първата спирка по пътя е входящият възел. Той получава клетката,
декриптира най – външния слой (синия на фиг. 7), прочита командата relay
data, заедно със стойността CircID в клетката и препраща тялото на
клетката към следващия възел (междинния) във веригата. Но той не може
да го прочете, тъй като не притежава симетричния ключ), следователно не
знае кой е крайния получател, нито каква е цялата верига.
При получаването на препратената клетка от входящия възел,
междинният извършва същата поредица от действия, но този път той маха
втория слой от криптирането (зеления на фиг. 7), за което притежава
нужния ключ, отново прочита командата relay data и стойността CircID на
Защита от анализ на трафика чрез технологията Tor
Ангел Иванов Николов, ф.н. 11457 28/33
клетката, и изпраща по съответната верига тялото на клетката към
изходящия възел.
Изходящият възел декриптира последната клетка (червения слой
криптиране на фиг. 7) и прочита вече оригиналния IP пакет, включително
IP адреса на получателя, но не и на изпращача. Възелът знае къде да
изпрати пакета, но не и от къде идва той. Най – накрая HTTP заявката бива
изпратена на крайния получател – уеб сървъра.
В случай, че получателят на данните, изпраща обратно други (както
е в разглеждания сценарий – уеб сървърът ще отговори с HTTP отговор на
браузъра), цялата процедура се повтаря, но в обратен ред. HTTP отговорът
ще мине отново по веригата, но в обратен ред, като на всеки възел ще се
криптира със съответния симетричен ключ. Отново клетката ще се
маршрутизира обратно по веригата до луковото прокси. То ще получи
целия „лук“, и ще приложи три пъти декриптиране със вече известните му
ключове, получени при инициализирането на веригата. Като последна
стъпка, Tor клиента ще изпрати на браузъра на клиента оригиналния HTTP
отговор от уеб сървъра.
Допълнително всеки възел проверява полето Digest на съответната
му relay клетка (вж. фиг. 4). Това е хеш-стойност на цялата клетката. Ако
възелът установи, че тя не съвпада с тази, сметаната от него, то той ще
унищожи цялата клетка и ще разруши веригата. По този начин се постига
интегритет на предаваните данни. Технологията Tor използва
криптографията не само за да осигури конфидентциалност на
предаваните данни, но и да гарантира техния интегритет.
Важното тук е, че вече излизайки от Tor мрежата оригиналната
заявка вече не е криптирана, тя е в суров вид, така както браузърът на
потребителя я е изпратил. От цялата комуникация между възлите, клиента
и уеб сървъра единствено на това място предаваните данни не се
криптират, което може да се определи и като единствения проблем на
технологията (зелената линия на фиг. 6). Изходящите възли са връзката на
Защита от анализ на трафика чрез технологията Tor
Ангел Иванов Николов, ф.н. 11457 29/33
Tor мрежата с останалата отворена част на Интернет. Те виждат
действителния получател на данните и е възможно на тях да се инсталират
приложения за анализ на трафика от недобросъвестни потребители, дори и
да се четат оригиналните данни, ако не са криптирани още при самото си
изпращане от клиента. Тази атака в Tor мрежата е позната като Exit node
sniffing. Въпреки, че такива изходящи възли се управляват от надеждни
доброволци, в миналото са документирани случаи на Exit node sniffing.
Счита се, че Tor мрежата може да се атакува и от други атаки като
Man-in-the-middle, SSL striping, Timing attack и Sniper attack13
(най – скоро
документираната и приложена на практика Denial of Service атака), но
опасността от Exit node sniffing все още е най – сериозна.
С оглед на това е проведено специално проучване в рамките на
няколко месеца (от септември 2013 г. до януари 2014 г.) на трафика
през всичките близо 1000 изходящи възли на Tor мрежата и към
януари 2014 г. 25 от тях са прилагали някакъв вид атака върху
изходящия трафик от Tor мрежата14
. Такива възли биват маркирани в
публичния списък на възлите (http://torstatus.blutmagie.de) и изключени от
директорийните възли. Това е пример как анонимността може да се
компрометира от вътрешна заплаха – някой от самите възли. Tor мрежата
изключително много зависи от това доброволците, които са
конфигурирали компютрите си като междинен, изходящ възел или мост да
не реализират атаки срещу анонимността.
2.3. Приложения на Tor
Първоначално технологията Tor е била проектирана за
Военноморските сили на САЩ, като проект на U.S. Naval Research
Laboratory. Основна цел е била да се запази анонимността на
13
Jansen, R. и др. Sniper Attack: Anonymously Deanonymizing and Disabling the Tor Network, 2014.
http://www.robgjansen.com/publications/sniper-ndss2014.pdf
14
Spoiled Onions, http://www.cs.kau.se/philwint/spoiled_onions
Защита от анализ на трафика чрез технологията Tor
Ангел Иванов Николов, ф.н. 11457 30/33
правителствените комуникации. Днес сферите на използване на Tor са
изключително много и всеки ден много хора (цивилни и военни) я
използва за различни цели във всекидневната си работа15
:
 Военноморските сили на САЩ използват Tor за събиране на данни и
разузнаване. Техен екип дори е използвал технологията при
скорошни операции в Близкия изток;
 Правителствени организации използват Tor за следене и анализ на
трафика на уеб сайтове без да оставят данни за правителствените IP
адреси. Това е пример за използването на технологията за нещо, с
което тя е предназначена да се бори;
 Обикновените потребители използват Tor в Интернет сърфирането
си, за да се предпазят от уеб сайтове, които следят
местоположението им, за връзка с новинарски и други сайтове,
които са забранени от техния Интернет доставчик или по силата на
фирмена политика;
 Журналистите използват Tor, за да могат сигурно и анонимно да
кореспондират с информатори или дисиденти, без да разобличават
тяхната самоличност или местоположение;
 Неправителствени организации, чиито цели са свободен достъп до
Интернет, пропагандират широко Tor като средство за борба с
цензурата на Интернет. Пример е Electronic Frontier Foundation16
;
 Големите корпорации използват Tor, за да защитят предаваната по
електронен път чувствителна информация, т.е. да се защитят от една
от формите на корпоративен шпионаж. Често дори те използват Tor
мрежата и като заместител на традиционните VPN мрежи, при които
е възможно да се извърши анализ на трафика, тъй като те не скриват
размера на пренасяните пакети и времето на пренасяне.
15
Пълен списък на кои социални групи и организации използват Tor и за каква цел може да се намери на
официалния сайт на технологията на адрес https://www.torproject.org/about/torusers.html.en
16
Electronic Frontier Foundation, Defending your rights in the digital world, https://www.eff.org
Защита от анализ на трафика чрез технологията Tor
Ангел Иванов Николов, ф.н. 11457 31/33
ЗАКЛЮЧЕНИЕ
Днес динамичните промени в законодателствата и технологиите
заплашват анонимността на потребители повече от всякога. Потиска се
нашата възможност за комуникираме свободно онлайн, да достъпваме
различни ресурси онлайн. Тази негативна тенденция също подлага
правителствените и корпоративните комуникации под опасност от анализ
на Интернет трафика, което в някои случаи може да има последици върху
националната сигурност.
Не случайно технологията Tor е измислена именно за защита на
правителствената комуникация. Но тя се превърна в един изключително
полезен инструмент, който обаче се нуждае от помощта на обикновените
потребители, за да продължи да контролира сигурността на Интернет
комуникациите.
Технологията Tor използва уникални механизми за предоставяне на
анонимност и свобода при използването на Интернет. Не трябва да се
забравя, че в днешни дни поддръжката на такава разпределена мрежа от
сървъри продължителен процес. За да се поддържа и разраства мрежата са
необходими доброволци, които да включат компютрите си в Tor и да ги
конфигурират като междинни, изходящи възли или мостове.
Увеличаването на броя сървъри в мрежата на Tor, ще повиши
нейната използваемост и ефикасност. Тя ще привлича все повече
потребители. Това от своя страна ще повиши броя на възможни изпращачи
и получатели, чиято комуникация бива маршрутизирана през Tor мрежата,
което ще увеличи и общата сигурността на всички в мрежата.
Като заключение ще изкажем молба към потребителите да станат
част от Tor мрежата, да я поддържат и използват, да ѝ помагат, за да може
и тя да ни помага.
Защита от анализ на трафика чрез технологията Tor
Ангел Иванов Николов, ф.н. 11457 32/33
ИЗПОЛЗВАНА ЛИТЕРАТУРА
1. Илиев, П. и др. Електронен бизнес – Първа част. Наука и икономика,
Варна, 2011.
2. Монтегю, Ю. Воюващият покойник. Държавно военно издателство,
София, 1963.
3. Schneier, B. Applied Cryptography: Protocols, Algorithms, and Source
Code in C. John Wiley & Sons, Second Edition, 1996.
4. Winterbotham, F. The Ultra secret: the inside story of Operation Ultra,
Bletchley Park and Enigma. Orion Books Ltd, London. 2000.
5. Dingledine, R., Mathewson, N., Syverson, P. Tor: The Second –
Generation Onion Router. The USENIX Association, 2004.
https://www.usenix.org/legacy/events/sec04/tech/full_papers/dingledine/d
ingledine.pdf , достъпен на 18.03.2014 г.
6. Electronic Frontier Foundation, Defending your rights in the digital
world, https://www.eff.org , достъпен на 22.03.2014 г.
7. Jansen, R. и др. Sniper Attack: Anonymously Deanonymizing and
Disabling the Tor Network, 2014.
http://www.robgjansen.com/publications/sniper-ndss2014.pdf , достъпен
на 22.03.2014 г.
8. RFC 791, Internet protocol specification,
http://www.ietf.org/rfc/rfc791.txt, достъпен на 16.03. 2014 г.
9. RFC 793, Transmission Control Protocol specification,
http://www.ietf.org/rfc/rfc793.txt , достъпен на 16.03.2014 г.
10.SANS Technology Institute, Traffic Analysis,
http://www.sans.edu/research/security-laboratory/article/traffic-analysist ,
достъпен на 16.03.2014 г.
11.Song, D., Wagner, D., Tian., X. Timing Analysis of Keystrokes and
Timing Attacks on SSH, http://www.cs.berkeley.edu/~daw/papers/ssh-
use01.pdf , достъпен на 16.03.2014 г.
Защита от анализ на трафика чрез технологията Tor
Ангел Иванов Николов, ф.н. 11457 33/33
12.Spoiled Onions, http://www.cs.kau.se/philwint/spoiled_onions ,
достъпен на 22.03.2014 г.
13.The Honeynet Project, Know Your Enemy: Passive Fingerprinting,
http://old.honeynet.org/papers/finger , достъпен на 16.03.2014 г.
14.Tor Network Status, http://torstatus.blutmagie.de , достъпен на
18.03.2014 г.
15.Tor Project: Anonymity Online, https://www.torproject.org , достъпен на
18.03.2014 г.
16.Tor Project: Anonymity Online, Who uses Tor?,
https://www.torproject.org/about/torusers.html.en , достъпен на
21.03.2014 г.
17.Wikipedia, Communications Assistance for Law Enforcement Act,
http://en.wikipedia.org/wiki/Communications_Assistance_For_Law_Enfo
rcement_Act , достъпен на 17.03.2014 г.
18.Wikipedia, Data Encryption Standard,
http://en.wikipedia.org/wiki/Data_Encryption_Standard , достъпен на
16.03.2014 г.
19.Wikipedia, Diffie–Hellman key exchange,
http://en.wikipedia.org/wiki/Diffie-Hellman_key_exchange , достъпен
на 19.03.2014 г.
20.Wikipedia, Traffic analysis, http://en.wikipedia.org/wiki/Traffic_analysis,
достъпен на 16.03.2014 г.
Ангел Николов

Contenu connexe

Tendances

Сравненителна характеристика на криптографски алгоритми
Сравненителна характеристика на криптографски алгоритмиСравненителна характеристика на криптографски алгоритми
Сравненителна характеристика на криптографски алгоритмиВаня Иванова
 
Симетрични и асиметрични алгоритми за криптиране на информация
Симетрични и асиметрични алгоритми за криптиране на информацияСиметрични и асиметрични алгоритми за криптиране на информация
Симетрични и асиметрични алгоритми за криптиране на информацияKaloyan Kosev
 
Методи за криптиране и декриптиране на данни
Методи за криптиране и декриптиране на данниМетоди за криптиране и декриптиране на данни
Методи за криптиране и декриптиране на данниpinf_117075
 
Методи за криптиране и декриптиране
Методи за криптиране и декриптиранеМетоди за криптиране и декриптиране
Методи за криптиране и декриптиранеAngel Blagyov
 
Методи за криптиране и декриптиране на данни
Методи за криптиране и декриптиране на данниМетоди за криптиране и декриптиране на данни
Методи за криптиране и декриптиране на данниd_e_n_i_8_7
 
Безопасност и защита на VPN мрежи
Безопасност и защита на VPN мрежиБезопасност и защита на VPN мрежи
Безопасност и защита на VPN мрежиVqra Velinova
 
Методи и средства за филтриране на трафика в Lan мрежи
Методи и средства за филтриране на трафика в Lan мрежиМетоди и средства за филтриране на трафика в Lan мрежи
Методи и средства за филтриране на трафика в Lan мрежиDido Viktorov
 
Сравнителна характеристика на криптографски алгоритми
Сравнителна характеристика на криптографски алгоритмиСравнителна характеристика на криптографски алгоритми
Сравнителна характеристика на криптографски алгоритмиВаня Иванова
 
Безопасност и защита на VPN мрежи
Безопасност и защита на  VPN мрежиБезопасност и защита на  VPN мрежи
Безопасност и защита на VPN мрежиmApTu
 
Безопасност и защита на VPN мрежи
Безопасност и защита на VPN мрежиБезопасност и защита на VPN мрежи
Безопасност и защита на VPN мрежиVqra Velinova
 
Особености на sniffing атаките и как да се предпазим от тях
Особености на sniffing атаките и как да се предпазим от тяхОсобености на sniffing атаките и как да се предпазим от тях
Особености на sniffing атаките и как да се предпазим от тяхUniversity of Economics - Varna
 
Безопасност и защита на VPN
Безопасност и защита на VPNБезопасност и защита на VPN
Безопасност и защита на VPNEma Angelova
 
Spam определение, класификация и защита от spam
Spam   определение, класификация и защита от spamSpam   определение, класификация и защита от spam
Spam определение, класификация и защита от spamcshtereva
 

Tendances (16)

Сравненителна характеристика на криптографски алгоритми
Сравненителна характеристика на криптографски алгоритмиСравненителна характеристика на криптографски алгоритми
Сравненителна характеристика на криптографски алгоритми
 
Симетрични и асиметрични алгоритми за криптиране на информация
Симетрични и асиметрични алгоритми за криптиране на информацияСиметрични и асиметрични алгоритми за криптиране на информация
Симетрични и асиметрични алгоритми за криптиране на информация
 
Методи за криптиране и декриптиране на данни
Методи за криптиране и декриптиране на данниМетоди за криптиране и декриптиране на данни
Методи за криптиране и декриптиране на данни
 
Методи за криптиране и декриптиране
Методи за криптиране и декриптиранеМетоди за криптиране и декриптиране
Методи за криптиране и декриптиране
 
Методи за криптиране и декриптиране на данни
Методи за криптиране и декриптиране на данниМетоди за криптиране и декриптиране на данни
Методи за криптиране и декриптиране на данни
 
Безопасност и защита на VPN мрежи
Безопасност и защита на VPN мрежиБезопасност и защита на VPN мрежи
Безопасност и защита на VPN мрежи
 
Методи и средства за филтриране на трафика в Lan мрежи
Методи и средства за филтриране на трафика в Lan мрежиМетоди и средства за филтриране на трафика в Lan мрежи
Методи и средства за филтриране на трафика в Lan мрежи
 
Сравнителна характеристика на криптографски алгоритми
Сравнителна характеристика на криптографски алгоритмиСравнителна характеристика на криптографски алгоритми
Сравнителна характеристика на криптографски алгоритми
 
Безопасност и защита на VPN мрежи
Безопасност и защита на  VPN мрежиБезопасност и защита на  VPN мрежи
Безопасност и защита на VPN мрежи
 
Безопасност и защита на VPN мрежи
Безопасност и защита на VPN мрежиБезопасност и защита на VPN мрежи
Безопасност и защита на VPN мрежи
 
Особености на sniffing атаките и как да се предпазим от тях
Особености на sniffing атаките и как да се предпазим от тяхОсобености на sniffing атаките и как да се предпазим от тях
Особености на sniffing атаките и как да се предпазим от тях
 
Презентация - sniffing атаки
Презентация - sniffing атакиПрезентация - sniffing атаки
Презентация - sniffing атаки
 
Безопасност и защита на VPN
Безопасност и защита на VPNБезопасност и защита на VPN
Безопасност и защита на VPN
 
10724 vpn
10724 vpn10724 vpn
10724 vpn
 
Spam определение, класификация и защита от spam
Spam   определение, класификация и защита от spamSpam   определение, класификация и защита от spam
Spam определение, класификация и защита от spam
 
VPN Security
VPN SecurityVPN Security
VPN Security
 

Similaire à Tor

Kурсова работа БЗКСП ралица христова
Kурсова работа БЗКСП ралица христоваKурсова работа БЗКСП ралица христова
Kурсова работа БЗКСП ралица христоваRalica Hristova
 
боряна грудова цифровият подпис - теория и практика
боряна грудова цифровият подпис - теория и практикаборяна грудова цифровият подпис - теория и практика
боряна грудова цифровият подпис - теория и практикаBorqna Grudova
 
Fn11791 svetoslavvasilev signed
Fn11791 svetoslavvasilev signedFn11791 svetoslavvasilev signed
Fn11791 svetoslavvasilev signednameee9
 
Атака от тип DoS
Атака от тип DoSАтака от тип DoS
Атака от тип DoSKrasen Hristov
 
компютърна защита
компютърна защитакомпютърна защита
компютърна защитаmarin georgiev
 
Cybersecurity organisations teodora_stoikova_500113
Cybersecurity organisations teodora_stoikova_500113Cybersecurity organisations teodora_stoikova_500113
Cybersecurity organisations teodora_stoikova_500113teodora_stoikova91
 
Европейски и международни организации по кибер - безопасност
Европейски и международни организации по кибер - безопасностЕвропейски и международни организации по кибер - безопасност
Европейски и международни организации по кибер - безопасностnpetrov
 
Man-in-the-middle атаки
Man-in-the-middle атакиMan-in-the-middle атаки
Man-in-the-middle атакиBoris Bankov
 
Цифровият подпис-теория и практика
Цифровият подпис-теория и практикаЦифровият подпис-теория и практика
Цифровият подпис-теория и практикаe_ivanova
 
интернет Yordan
интернет Yordanинтернет Yordan
интернет Yordanvyapova
 
Европейски и международни организации по кибер - безопасност
Европейски и международни организации по кибер - безопасностЕвропейски и международни организации по кибер - безопасност
Европейски и международни организации по кибер - безопасностnpetrov
 
курсова 91582
курсова 91582курсова 91582
курсова 91582ailiev
 
Presentation cybersecurity organsation_teodora_stoikova_500113
Presentation cybersecurity organsation_teodora_stoikova_500113Presentation cybersecurity organsation_teodora_stoikova_500113
Presentation cybersecurity organsation_teodora_stoikova_500113teodora_stoikova91
 
Network Security and Network Attacks
Network Security and Network AttacksNetwork Security and Network Attacks
Network Security and Network AttacksSvetlin Nakov
 
Cyberreferat2006
Cyberreferat2006Cyberreferat2006
Cyberreferat2006fermaxx
 

Similaire à Tor (20)

Kурсова работа БЗКСП ралица христова
Kурсова работа БЗКСП ралица христоваKурсова работа БЗКСП ралица христова
Kурсова работа БЗКСП ралица христова
 
боряна грудова цифровият подпис - теория и практика
боряна грудова цифровият подпис - теория и практикаборяна грудова цифровият подпис - теория и практика
боряна грудова цифровият подпис - теория и практика
 
Fn11791 svetoslavvasilev signed
Fn11791 svetoslavvasilev signedFn11791 svetoslavvasilev signed
Fn11791 svetoslavvasilev signed
 
Атака от тип DoS
Атака от тип DoSАтака от тип DoS
Атака от тип DoS
 
Vpn mreji 105227
Vpn mreji 105227Vpn mreji 105227
Vpn mreji 105227
 
компютърна защита
компютърна защитакомпютърна защита
компютърна защита
 
Cybersecurity organisations teodora_stoikova_500113
Cybersecurity organisations teodora_stoikova_500113Cybersecurity organisations teodora_stoikova_500113
Cybersecurity organisations teodora_stoikova_500113
 
Европейски и международни организации по кибер - безопасност
Европейски и международни организации по кибер - безопасностЕвропейски и международни организации по кибер - безопасност
Европейски и международни организации по кибер - безопасност
 
Man-in-the-middle атаки
Man-in-the-middle атакиMan-in-the-middle атаки
Man-in-the-middle атаки
 
Цифровият подпис-теория и практика
Цифровият подпис-теория и практикаЦифровият подпис-теория и практика
Цифровият подпис-теория и практика
 
интернет Yordan
интернет Yordanинтернет Yordan
интернет Yordan
 
DoS атаки
DoS атакиDoS атаки
DoS атаки
 
Европейски и международни организации по кибер - безопасност
Европейски и международни организации по кибер - безопасностЕвропейски и международни организации по кибер - безопасност
Европейски и международни организации по кибер - безопасност
 
курсова 91582
курсова 91582курсова 91582
курсова 91582
 
Web Security Intro
Web Security IntroWeb Security Intro
Web Security Intro
 
Nadezhda Stavreva
Nadezhda StavrevaNadezhda Stavreva
Nadezhda Stavreva
 
Vpn mreji 105227
Vpn mreji 105227Vpn mreji 105227
Vpn mreji 105227
 
Presentation cybersecurity organsation_teodora_stoikova_500113
Presentation cybersecurity organsation_teodora_stoikova_500113Presentation cybersecurity organsation_teodora_stoikova_500113
Presentation cybersecurity organsation_teodora_stoikova_500113
 
Network Security and Network Attacks
Network Security and Network AttacksNetwork Security and Network Attacks
Network Security and Network Attacks
 
Cyberreferat2006
Cyberreferat2006Cyberreferat2006
Cyberreferat2006
 

Tor

  • 1. ИКОНОМИЧЕСКИ УНИВЕРСИТЕТ – ГР. ВАРНА ФАКУЛТЕТ „ИНФОРМАТИКА“ КАТЕДРА „ИНФОРМАТИКА“ ЦЕНТЪР „МАГИСТЪРСКО ОБУЧЕНИЕ“ ПО ДИСЦИПЛИНАТА „Безопасност и защита” НА ТЕМА „Защита от анализ на трафика чрез технологията Tor” Изготвил: Ангел Иванов Николов ф.н. 11457, гр. 61, курс 5, спец. Информатика Проверили: Ас. Радка Начева Доц. д-р Стефан Дражев Варна 2014
  • 2. Защита от анализ на трафика чрез технологията Tor Ангел Иванов Николов, ф.н. 11457 2/33 СЪДЪРЖАНИЕ ВЪВЕДЕНИЕ ............................................................................................................................................4 1. Анализ на трафика ............................................................................................................................5 1.1. Същност и история на възникване на атаката .........................................................................5 1.2. Анализ на трафика в епохата на Интернет...............................................................................7 1.3. Цели на анализа на трафика ...................................................................................................10 1.4. Начини за анонимно сърфиране в Интернет.........................................................................13 2. Технологията Tor .............................................................................................................................15 2.1. Абстрактен поглед и технологични основи ...........................................................................15 2.2. Механизъм на работа..............................................................................................................17 2.2.1. Терминология....................................................................................................................17 2.2.2. Tor клиентът.......................................................................................................................18 2.2.3. Комуникация и пренос на данни между възлите. Клетки, вериги и потоци...............19 2.2.4. Инициализиране на нова верига.....................................................................................23 2.2.5. Изпращане и получаване на данни по инициализирана верига..................................26 2.3. Приложения на Tor ..................................................................................................................29 ЗАКЛЮЧЕНИЕ.......................................................................................................................................31 ИЗПОЛЗВАНА ЛИТЕРАТУРА.................................................................................................................32
  • 3. Защита от анализ на трафика чрез технологията Tor Ангел Иванов Николов, ф.н. 11457 3/33 Traffic analysis, not cryptanalysis, is the backbone of communications intelligence. Susan Landau and Whitfield Diffie
  • 4. Защита от анализ на трафика чрез технологията Tor Ангел Иванов Николов, ф.н. 11457 4/33 ВЪВЕДЕНИЕ Анализът на трафика е специализирана атака, чиято цел е прихващане и изследване на съобщенията в процеса на комуникация без знанието на участващите страни. В съвременното информационно общество тази атака се прилага за множество различни цели и от различни хора. Първоначално атаката се е считала за нарушаване на личната неприкосновеност и е извършвана от хакери, търсещи различни облаги. Следва период, в който, поради широкото навлизане на Интернет в живота на хората, някои страни намират в анализа на трафика инструмент за ограничаване на достъпа до определени Интернет ресурси. Анализът на трафика се счита за сериозен проблем в съвременната Интернет комуникация, което изключително много повдига стандартите за сигурност на предаваните по електронен път данни. Потребителите се стремят все повече към запазване на своята анонимност при използването на Интернет, както и на упражняване на правото си за свободен достъп до негово съдържание. Възникват и все по – изтънчени имплементации на атаката, което от своя страна води до създаването на различни механизми за защита, всеки от които предоставя различно ниво на анонимност. Към настоящия момент най – сигурният начин за защита от анализа на трафика е технологията Tor, базирана на принципите на „луковата маршрутизация“. Тор е мрежа от свързани помежду си сървъри. Вместо съобщенията да се изпращат директно от изпращач до получател в Интернет, те преминават през случайно избран път от сървъри в мрежата на Tor, криптират се многократно и така достигат своята дестинацията. По този начин технологията Tor предоставя изключително високи нива на анонимност и защита от анализ на трафика. Чрез нейното използване потребителите гарантират своята анонимност при използването на глобалната мрежа, а заедно с това успешно се противопоставят и на цензурирането на Интернет.
  • 5. Защита от анализ на трафика чрез технологията Tor Ангел Иванов Николов, ф.н. 11457 5/33 1. Анализ на трафика 1.1. Същност и история на възникване на атаката Анализът на трафика (Traffic Analysis) е процес на прихващане и изследване на съобщенията в процеса на комуникация без знанието на участващите страни – изпращач и получател. Днешно време такъв вид атака се използва както срещу комуникацията в световната мрежа – Интернет, така и срещу комуникацията в Интранет мрежи, макар исторически първо да възниква много преди появата на съвременните компютри и мрежи. Информацията за това кой с кого комуникира, кога се извършва комуникацията и за колко дълго време, големината и съдържанието на предаваните съобщения (ако не са криптирани или е възможно да се разбие използваният криптографски алгоритъм) може да помогне на атакуващия да придобие знания за страните в комуникацията, а в най – добрия случай да ги идентифицира без тяхното знание. Исторически анализът на трафика възниква първо във военното разузнаване и контраразузнаване, като основната цел е била добиването на ценна информация за поведението или в най – добрия случай съставянето на модел на поведението на някоя от двете страни (изпращач или получател) в противниковата комуникацията, въз основа на намерени зависимости в прихванатите съобщения. По този начин е било възможно да се предвидят техните планове за действие, а в резултат да се предприемат и съответните превантивни военни действия. Историята познава случаи от времето на Първата и Втората световни войни, когато са се анализирали главно изпращаните по радио вълни съобщения. Появата на тази интерференция по времето на военни действия води до две основни направления в развитието на комуникацията, второто от които е основна част от комуникацията ни в Интернет в днешни дни:  използване на фалшиви съобщения с цел дезинформация на
  • 6. Защита от анализ на трафика чрез технологията Tor Ангел Иванов Николов, ф.н. 11457 6/33 противника;  криптиране на предаваните съобщения. Дезинформирането на противника има основна заслуга в много военни действия отново главно през Втората световна война. Счита се, че дезинформацията на противника не помага толкова за спечелването на дадена битка, колкото за намаляване на броя на жертвите. Пример тук са операцията „Хъски“ за удара на Съюзническите войски на остров Сицилия и операцията „Минсмит“ за дезинформация относно мястото на удара1 . Анализът на трафика на съобщенията води до широко използване на криптографската наука при комуникацията от една страна, а от друга до използването на криптоанализа върху прихванатите съобщения. Счита се, че анализът на трафика е пряко свързан с криптоанализа, тъй като най – често се цели да се разчетат прихванатите съобщения. По време на войните се използват различни криптографски алгоритми за криптиране на предаваните съобщения, така че дори и да се прихванат, то да е невъзможно да се декриптират без знанието за използвания ключ. Появяват се машини, улесняващи криптирането – например роторната криптираща машина „Енигма“ (вж. фиг. 1) използваща субституционен многоазбучен шифър. Според главнокомандващият на Съюзническите сили Дуайт Айзенхауер, разбиването на нейния код спомага за цялостната победа над Хитлеристка Германия2 . 1 Монтегю, Ю. Воюващият покойник. Държавно военно издателство, София, 1963. 2 Winterbotham, F. The Ultra secret: the inside story of Operation Ultra, Bletchley Park and Enigma. Orion Books Ltd, London. 2000. Фиг. 1 Машината „Енигма“
  • 7. Защита от анализ на трафика чрез технологията Tor Ангел Иванов Николов, ф.н. 11457 7/33 1.2. Анализ на трафика в епохата на Интернет В днешно време писмената, радио- и дори лице в лице комуникацията е заместена от такава в Интернет пространството. Широкото навлизане на Интернет в ежедневието на хората и в частност обмяната на чувствителна информация – например за извършени банкови трансакции или информация от социалните мрежи – увеличават възможността за атака чрез анализ на Интернет трафика, опасността от която често се подценява. При комуникацията в Интернет обменяните между компютрите (например между клиент и сървър) съобщенията се организират в множество единици от данни, наречени сегменти (segments) или датаграми (datagrams) в зависимост от използвания протокол на транспортния слой в OSI модела (съответно TCP или UDP – двата най – използвани протокола). След това тези единици от данни заедно с метаданните за тях се инкапсулират в други такива на мрежовия слой – пакети (packets) при използването на протокола IP. Чрез използването на специални хардуерни устройства (packet capture appliance) и специален софтуер за атакуващият е лесно да пресече пътя на пакетите в мрежата и да достъпи информацията за изпращач и получател от хедърите на TCP сегментите или UDP датаграмите, а и за самото съдържание на обменяното съобщение, ако то не е криптирано. Дори и при използването на протоколи от приложния слой, предоставящи криптиране и автентикация (например SSH), е възможно да се намерят зависимости в предаваните съобщения, чрез анализ на единиците от данни от по – долен слой и в частност кога са пратени (т.нар. Timing attack)3 . Теоретично за извършването на анализ на трафика не е задължително да се знае съдържанието на обменяните съобщения, т.е. 3 Song, D., Wagner, D., Tian., X. Timing Analysis of Keystrokes and Timing Attacks on SSH. http://www.cs.berkeley.edu/~daw/papers/ssh-use01.pdf
  • 8. Защита от анализ на трафика чрез технологията Tor Ангел Иванов Николов, ф.н. 11457 8/33 съобщенията могат да бъдат криптирани. Това може да стане с неизвестен ключ или с криптографски алгоритми, които не използват ключ, но се пазят в тайна. Според известния криптограф и криптоаналитик Брус Шнайер (Bruce Schneier)4 , такива алгоритми, наречени ограничени алгоритми (restricted algorithms), все още се използват в практиката. Достатъчно информация за страните в комуникацията може да се получи само като се анализира честотата на изпращане на съобщенията (брой изпратени съобщения за единица време), точното време на тяхното изпращане, техния размер, изпращач и получател или други характеристики, които не се криптират и са достъпни от хедърите на единиците данни при транспортните или мрежовите протоколите. Метаданните за данните сами по себе си са достатъчни за осъществяването на атаката. Сигурността на криптографските алгоритми зависи от дължината на използвания ключ, независимо дали става въпрос за симетрично или асиметрично криптиране (познато още като криптиране с публичен ключ) и се измерва в битове. Тя трябва да е по – къса от дължина на ключа, тъй като всеки алгоритъм може да бъде компрометиран (разбит) чрез последователна проверка с всички възможни ключове (т.нар. brute force атака). Освен атаката с груба сила (brute force attack), която изисква операции за n-битов ключ, е възможно да се открият други атаки с по – малко операции – т. нар. пробиви (breaks). За разлика от периода на Втората световна война, когато кодът на машината „Енигма“ е разбит, днес е малко вероятно да се разбие някои от съвременните криптографски алгоритми. Повечето от тях използват ключове с дължина 128 бита или по – голяма. Например AES предлага симетрично криптиране с 128, 192 или 256 битов ключ, а ECDSA, който предлага асиметрично криптиране, работи с няколко различни ключа с 4 Schneier, B. Applied Cryptography: Protocols, Algorithms, and Source Code in C. John Wiley & Sons, Second Edition, 1996.
  • 9. Защита от анализ на трафика чрез технологията Tor Ангел Иванов Николов, ф.н. 11457 9/33 дължина от 112 до 521 бита. Счита се, че brute force атака е практически невъзможно да се извърши върху алгоритми със 128-битов или по – дълъг ключ (забележете, че 56-битовият ключ на DES беше разбит през чрез успешна brute force атака за малко над 2 дни през 1998 г.5 , което и наложи неговото заместване от усъвършенствания алгоритъм AES през 2001 г.). Въпреки това криптоаналитиците продължават да анализират алгоритмите и да откриват нови теоретични атаки – първо върху алгоритми с по – къси ключове или върху такива с намален брой на трансформациите на изходния в криптиран текст. Така евентуално се стига до реализацията на пробиви (каквито за момента не съществуват за пълните версии нито на AES, нито DSA) или, съгласно Закона на Мур, развитието на изчислителната техника позволява извършването на практика на brute force атака. Поради тази причина анализът на трафика в днешни дни е съсредоточен върху анализиране на метаданните за съобщенията, а не върху тяхното съдържание, като често тази атака се използва в комбинация с друга. А компютърна сигурност все повече се фокусира върху използването на криптографията за осигуряване на конфиденциалност, интегритет на данните, автентикация на записите и доказателство за произход и често опасността от анализа на трафика и метаданните за съобщенията неправилно бива подценявана. Възможен сценарий за анализ на трафика са изпращането на множество малки по размер пакети, което може да означава, че при тази комуникация всяко съобщение отговаря на отделен натиснат бутон. Такъв е принципът на работа на SSH при предаването на паролите. Тук броят на пакетите всъщност определя дължината на паролата. Друг възможен сценарий е прихващането на големи по размер пакети, чието изпращане отнема значително време. Това може да индикира трансфер на файлове между компютри, например в peer-to-peer мрежа (P2P). Трети сценарий 5 Wikipedia, Data Encryption Standard, http://en.wikipedia.org/wiki/Data_Encryption_Standard
  • 10. Защита от анализ на трафика чрез технологията Tor Ангел Иванов Николов, ф.н. 11457 10/33 доказва възможността от определяне на спецификациите на операционната система на изпращач чрез анализ на хедърите от протоколния стек TCP/IP6 . Независимо от конкретната ситуация, добитата чрез атаката информация сама по себе си не е от съществено значение за сигурността на мрежата, но ако се комбинира с друга такава, придобита чрез други способи от страна на атакуващия, вече може да се окаже съществена за идентифициране на страните в комуникационния процес. 1.3. Цели на анализа на трафика В епохата на Интернет анализът на трафика се прилага за множество различни цели и от различни хора. Първоначално атаката се е считала за нарушаване на личната неприкосновеност и е извършвана от хакери, търсещи различни облаги. Следва период, в който, поради широкото навлизане на Интернет в живота на хората, някои страни намират в анализа на трафика инструмент за ограничаване на достъпа до определени Интернет ресурси. Еволюцията на атака всъщност довежда до нейното използване от мрежовите специалисти и за добри цели – оптимизиране на мрежовата топология на организации с различен размер. На първо място анализът на трафика се извършва като атака срещу личната неприкосновеност на хората. Най – често цел на атакуващите е кражбата на самоличност (identity theft), която се счита за криминална дейност в много държави. Добитата информация в някои случаи е достатъчна да се изгради профил на някоя от страните в прихванатата комуникация. Например последните години атакуващите се съсредоточават само в анализиране на трафика от и към социалните мрежи, тъй като сами по себе си те предоставят достатъчно информация, от данни или метаданни, за изграждане на профил на потребителите. Сравнително ново приложение на атаката за анализ на трафика е свързана с навлизането на виртуалната децентрализирана 6 The Honeynet Project, Know Your Enemy: Passive Fingerprinting, http://old.honeynet.org/papers/finger
  • 11. Защита от анализ на трафика чрез технологията Tor Ангел Иванов Николов, ф.н. 11457 11/33 криптовалута Биткойн в употреба. Псевдоанонимността на валутата и фактът, че пренасяните съобщения в мрежата не се криптират (Биткойн протоколът не поддържа криптиране на данните) улесняват атакуващия, който може да анализира Интернет трафика, да определи кога даден възел в мрежата е изпратил трансакция, която не е получил предварително. Това означава, че този възел я е създал, т.е. изразходваните средства в трансакцията са от локално съхранявания портфейла на Биткойн клиента, работещ на въпросния възел. По този начин може да се получи информация за баланса на Биткойн адреси, които се съхраняват локално в даден портфейл на дадена физическа машина и какъв е IP адресът на тази машина, а допълнително може да се определи и нейното местоположение. Добитата от анализа на трафика информация може да се използва при реализирането на физическа атака – например кражба на компютър или само на твърд диск, съхраняващ вече известно количество биткойни на известни адреси. За сравнение при инициализиране на трансакции през активно Интернет банкиране няма смисъл да се намери физическото местоположение на компютър чрез IP адреса, тъй като той не съхранява данни от интерес за атакуващият. При технологията Биткойн всеки компютър в мрежата, съхранява частен ключ (private key), който всъщност е 256-битово число, което може да управлява милиони или дори милиарди парични единици. Анализът на Интернет трафика се използва в някои страни като инструмент за налагане на законовите разпоредби. На първо място това се случва в страни, в които има въведена цензура на Интернет, т.е. забрана за достъп до определени ресурси от мрежата въз основа на културни или социални различия. Примери за такива държави, които се считат за врагове на Интернет, са главно страни от Югоизточна Азия, вкл. Китай. На второ място анализът на трафика може да се използва от държавите, които по закон имат право да следят цялата комуникационна дейност за целите на националната сигурност. Тук няма цензуриране на
  • 12. Защита от анализ на трафика чрез технологията Tor Ангел Иванов Николов, ф.н. 11457 12/33 съдържанието на Интернет, а просто следене на трафика, за да може в случай на хакерски атаки с терористична или не цел (група "Анонимните"), да се определи техният източник. Пример за такава държава е САЩ, където закон (Communications Assistance for Law Enforcement Act7 ) задължава доставчиците на телекомуникационни услуги да инсталират устройства за прихващане на пакетите по мрежата, за да може при необходимост да се анализира трафика. Анализът на трафика намира приложение и в електронната търговия. Много сайтове следят от къде идва трафика и в зависимост от това определят съдържанието, което да се показва. В комбинация с използването на бисквитки (cookies) атаката се превръща в мощен маркетингов инструмент за насочване (таргетиране) на Интернет рекламата въз основа на изграден уебографски профил8 . Той включва показатели като продължителност и честота на използване на Интернет, точка на достъп, скорост и вид на връзката, вид на използвания компютър или мобилно устройство, използвана операционна система, използван браузър – показатели, които могат да се добият чрез анализ на трафика. Теоретично този подход се използва и от други сайтове, например новинарски, за да определят съдържанието, което да се покаже. Но най – голяма полза от него имат Интернет търговците, за които е важно да придобият колкото се може повече информация за потребителите, за да могат успешно да идентифицират целевата аудитория и евентуални нови купувачи. На последно място анализът на трафика може да се използва от системни администратори и мрежови специалисти за подобряване на инфраструктурата на Интранет мрежата на различни по размер предприятия. 7 Wikipedia, Communications Assistance for Law Enforcement Act, http://en.wikipedia.org/wiki/Communications_Assistance_For_Law_Enforcement_Act 8 Илиев, П. и др. Електронен бизнес – Първа част. Наука и икономика, Варна, 2011.
  • 13. Защита от анализ на трафика чрез технологията Tor Ангел Иванов Николов, ф.н. 11457 13/33 Повечето мрежови устройства като рутери и суичове (Cisco, Juniper и др. производители) имат вградени инструменти за следене и на трафика, който минава през тях, и предоставят възможност данните за прихванатият трафик да се екпортират към друго устройство (например компютър) със специално инсталиран софтуер. Той от своя страна позволява на следващ етап да се систематизира и анализира трафика, да се намерят слаби места в преноса на данни и дава предложения за подобряване на инфраструктурата на мрежата. Възможно е дори да се извършва извличане на знания от данните (data mining), например за маркетингови цели. Софтуерът позволява да се води статистика за размера на пакетите, процент изгубени пакети при пренос, времето за отговор на заявките, използваните протоколи от по – горен слой, както и информация за Интернет сокетите (sockets) на изпращач и получател. Пример за такъв софтуерен продукт е Network Traffic Analyzer на компанията SolarWinds. При мрежовите устройства се следи информацията за пакетите от мрежовия слой, т.е. пренасяните единиците от данни се декапсулират до пакети, прочита се информацията от хедърите на IP пакетите, и се изпращат на подходящия следващ възел. Тук отново проличава възможността за анализ на трафика без да се взима в предвид самото съдържание на съобщенията, което дори може да е криптирано, а само метаданните за тях. 1.4. Начини за анонимно сърфиране в Интернет След разгледаните приложения на анализа на Интернет трафика, следва да обърнем внимание на начините за защита от тази атака. По – нататък в разработката ще разглеждаме анализа на трафика като атака срещу личната неприкосновеност или средство за ограничаване на свободния достъп до цялото съдържание на глобалната мрежа, тъй като основното приложение на средствата за защита е именно тяхното предотвратяване. Съществуват два основни начина за защита атаката –
  • 14. Защита от анализ на трафика чрез технологията Tor Ангел Иванов Николов, ф.н. 11457 14/33 чрез използването на прокси сървър или маршрутизираща система. Защитна стена от тип приложен шлюз или прокси сървър (application gateway или application proxy) представлява сървър, чиято основна функция е да изпълнява ролята на допълнителен възел в комуникацията в модела клиент-сървър. Този допълнителен възел се представя за клиент на сървъра, изпълнява уеб заявките вместо крайните потребители, получава желаната информацията от сървъра и я предава обратно на клиента, който я е изисквал. По този начин моделът се превръща в клиент-прокси-сървър и се предоставя анонимност и защита на клиента. Отдалеченият уеб сървър получава информация за прокси сървъра и може да анализира трафика само до него, но не и трафика, който влиза в прокси сървъра от други възли в мрежата. Съществуват различни видове прокси сървъри в зависимост от начина на работа – уеб прокси (най – разпространени), SOCKS, CGI прокси и др. Най – използваните прокси скриптове за уеб прокси сървъри са PHProxy, CGI Proxy, Glype и др. Прокси сървърКлиент HTTP Request HTTP Response Уеб сървър HTTP Request HTTP Response Фиг. 2 Клиент-прокси-сървър модел Проблемът при прокси сървърите е, че голяма част от тях са платени, и всъщност те самите следят и анализират трафика, който минава през тях. Често дори прокси сървърите се инсталират именно с цел да анализират трафика, който минава през тях. Макар и да помагат за достъп до забранено съдържание в Интернет, то анонимността, която предлагат може да се класифицира като условна в зависимост от това доколко се доверяваме на оператора на прокси сървъра. С оглед на този проблем възниква и най – доброто решение за анонимно сърфиране в Интернет до момента. За да се затрудни атакуващ
  • 15. Защита от анализ на трафика чрез технологията Tor Ангел Иванов Николов, ф.н. 11457 15/33 да анализира трафика от едно прокси, всъщност се създава мрежа от свързани във верига прокси сървъри, т.е. между изпращачът и получателят на пакетите се разполагат не един, а множество прокси сървъри – получава се т.нар. маршрутизираща система. Това значително затруднява проследяването на Интернет трафика, като е необходимо не само да се следи един прокси сървър, а всички такива, тъй като един прокси сървър знае само от къде идват съобщенията и накъде да ги изпрати, но няма информация за пропътувания път от тях, тъй като самите проксита действат като шлюзове. Този принцип се имплементира и доразвива чрез добавянето на криптиране на съобщенията във веригата от технологията „лукова маршрутизация“ (onion routing). Най – известния имплементация на луковата маршрутизация е технологията Tor, на която сме обърнали внимание в следващата точка. 2. Технологията Tor 2.1. Абстрактен поглед и технологични основи Tor (преди известен като The Onion Router) е лукова маршрутизираща система, която е най – доброто решение за анонимно комуникиране и сърфиране в глобалната мрежа Интернет. Tor е името както на самата маршрутизираща система, така и на технология, анонимната мрежата от сървъри и софтуерно приложение с отворен код, написано на езика C, което имплементира технологията. Представена е за първи път на 13 август 2004 г. от Роджър Дингълдин (Roger Dingledine), Ник Матюсън (Nick Mathewson) и Пол Сивърсън (Paul Syverson) на 13-тия Симпозиум по сигурност на асоциацията USENIX (Advanced Computing Technical Association)9 . По – конкретно Tor представлява мрежа от свързани на щафетен 9 Dingledine, R., Mathewson, N., Syverson, P. Tor: The Second – Generation Onion Router. The USENIX Association, 2004. https://www.usenix.org/legacy/events/sec04/tech/full_papers/dingledine/dingledine.pdf
  • 16. Защита от анализ на трафика чрез технологията Tor Ангел Иванов Николов, ф.н. 11457 16/33 принцип сървъри, които са разположени на различни физически възли в глобалната мрежа. Вместо съобщенията да се изпращат директно от изпращач до получател в мрежата, те преминават през случайно избран път, наречен верига, от сървъри в мрежата от сървъри на Tor и така достигат своята дестинация. Допълнително при преминаването от един сървър на друг в рамките на Tor мрежата, съобщенията се инкапсулират и криптират многократно. Всеки сървър знае само от кой сървър са дошли съобщенията и към кой сървър той трябва да ги препрати, но не и целия техен път в рамките на Tor или извън нея. Следователно никой от тях да не може да определи кои са и оригиналните изпращач и получател на съобщенията, т.е. от къде те идват и накъде отиват. Едновременно с това тази липса на информация не пречи за изпращането на съобщението (request) през веригата от сървъри на Tor до крайния му получател и получаване на съобщение в отговор по обратния път (response). Основният принцип се базира на идеята, че ако някой ни следи, то е по – добре да не използваме директен път от началната до крайната точка, а заобиколен, по – труден за проследяване път, като едновременно с това периодично изтриваме стъпките си и евентуално става невъзможно да се проследи пътя, по който сме минали. Следвайки тази идея Tor се фокусира върху предоставянето на потребители на Интернет свободата анонимно да комуникират помежду си и да преодоляват умишленото цензуриране на Интернет съдържанието, като прави невъзможно анализирането и проследяването на техния трафик. Допълнително атака не може да се извърши нито от външни единици, които не са част от Tor мрежата (например случайни Интернет рутери), нито от вътрешни за Tor мрежата единици (например щафетните сървърите). Комбинирането на множество сървъри, които действат на принципа на прокси сървърите, изключва възможността един от тях да извърши анализ на трафика, тъй като, както споменахме, неговите знания за пътя на съобщенията са ограничени. Именно поради тази причина
  • 17. Защита от анализ на трафика чрез технологията Tor Ангел Иванов Николов, ф.н. 11457 17/33 използването на луковите маршрутизиращи системи е по – надеждно от използването на единствен прокси сървър от гледна точка на анонимността на Интернет комуникацията. 2.2. Механизъм на работа 2.2.1. Терминология Преди да обясним механизмът на работа на технологията Tor, е необходимо да дадем дефиниции на следните важни термини: Възел (Node) – физическо устройство в мрежата на Tor, на което работи сървър (прокси). Получава и изпраща клетки към други възли в мрежата Tor; нарича се още луков рутер (onion router). Клетка (Cell) – основна единица от данни на мрежата Tor (подобна на пакетите при IP протокола); трафикът през Tor се пренася във форма на клетки с фиксирана големина, но различни хедъри и тела. Tor клиент (Tor client) – приложение, което се инсталира на компютъра на изпращача. Може да се конфигурира да изпълнява ролята на изходящ, междинен възел или мост. Нарича се още луково прокси (onion proxy). Входящ възел, входна точка (Entry node) – възел от мрежата на Tor, от който трафикът, получен от изпращача, влиза в мрежата. Изходящ възел, изходна точка (Exit node) – възел от мрежата на Tor, от който трафика излиза от нея и са изпраща към оригиналния получател. Междинен възел (Relay node) – всички възли от Tor мрежата, които не са входящи или изходящи. Директориен възел (Directory node) – възел от мрежата на Tor, който предоставя директорийна услуга за цялата Tor мрежа. Съхранява информация за всички възли в мрежата, без мостовете. Мост (Bridge) – междинен възел в Tor мрежата, който не присъства в списъка от възли на директорийния възел. Верига (Circuit) – случайно избран път от възли през мрежата на Tor. Поток (Stream) – поток от данни, които се изпраща по Tor мрежата по предварително определена верига.
  • 18. Защита от анализ на трафика чрез технологията Tor Ангел Иванов Николов, ф.н. 11457 18/33 2.2.2. Tor клиентът За да се използват услугите на Tor мрежата е необходимо от Интернет да се изтегли и инсталира Tor клиентът10 . Следващата стъпка е конфигуриране на приложения, които използват Интернет да осъществяват връзката през Tor клиента. Пример за такива приложения са чат клиентите, уеб браузъри и др. Конфигурация се състои в въвеждането на сокет localhost:9050 за SOCKS прокси (виж фиг. 3) на приложенията, които поддържат връзка през прокси, т.е. Tor клиентът играе ролята на SOCKS прокси сървър на самия компютър, който инициализира комуникацията. Затова той се нарича още луково прокси. Основните функции на Tor клиента са:  получаване на информация за активни възли в мрежата на Tor от директорийните възли;  инициализиране на вериги в Tor мрежата;  приемане на потоците от данни от локалните приложения и тяхното изпращане по изградена верига в Tor мрежата и vice versa; Използването на Tor задължава приложенията да поддържат TCP връзка с Интернет през SOCKS прокси. Ако не се поддържа SOCKS прокси, а друг вид е възможно да се използва друг прокси сървър в Интернет, които от своя страна да се свърже с мрежата на Tor, т.е. ще опосредстви връзката на приложенията с Tor мрежата. Приложения, които използват UDP протокола за пренос на данни в глобалната мрежа не могат да 10 Tor Project: Anonymity Online, https://www.torproject.org Фиг. 3 Конфигуриране на Skype за работа през Tor
  • 19. Защита от анализ на трафика чрез технологията Tor Ангел Иванов Николов, ф.н. 11457 19/33 използва Tor мрежата. Това е така, тъй като UDP е безсесиен протокол, т.е. не се установява сесия с между изпращач и получател преди да се изпратят данните по мрежата и съответно не изпраща данните по вече отворен поток (за разлика от TCP, където се установява сесия преди началото на комуникацията, а последната се извършва по т.нар. TCP потоци). Ако потребител притежава достатъчно бърза Интернет връзка и желае да подпомогне работата на мрежата, то той може да превърне компютъра си в един от сървърите на Tor и да помага при маршрутизирането на данните като изтегли една от версиите на приложението Tor в зависимост от това дали иска да функционира като изходящ, междинен възел или мост. Забележете, че входящите възли за Tor мрежата са предварително определени и не е възможно произволни възли в мрежата да изпълняват тази роля, тъй като това би довело до реконфигуриране на Tor клиента при неговата първоначална връзка с Tor мрежата. В случай, че потребител желае да използва услугите на Tor мрежата само за анонимно сърфиране в Интернет, то е възможно да се изтегли специална версия на Tor клиента, която представлява конфигуриран и готов за сърфиране Интернет браузър (Tor Browser Bundle), притежаващ интерфейсът на Mozilla Firefox. 2.2.3. Комуникация и пренос на данни между възлите. Клетки, вериги и потоци Основната единица данни за Tor мрежата е клетката (cell). Тя е подобна на пакетите при IP протокола. Комуникацията между възлите в Tor мрежата и между Tor клиент и възлите в самата мрежа се осъществява под формата на пренос на клетки. Всяка клетка е с фиксирана големина от 512 байта и съдържа хедър и тяло (DATA). Най – важната информация за възлите в мрежата се намира в две полета в хедъра на клетките – идентификатор на веригата (CircID), който показва на коя верига принадлежи клетката и команда (CMD), която показва на текущия възел
  • 20. Защита от анализ на трафика чрез технологията Tor Ангел Иванов Николов, ф.н. 11457 20/33 какво да прави с получената клетка. В зависимост от командата клетките биват два вида : Control клетка и Relay клетка (вж. фиг. 4). Съдържанието на тялото на Control клетките се интерпретира от получилия ги възел, а relay клетките само се препращат по веригата, без да се интерпретират. Последните съдържат допълнителни полета в хедъра, които са криптирани с AES-128. Най – важните от тях са идентификатор на TCP потока (StreamID) във веригата (CircID), на който принадлежи клетката, и 48-битова хеш-стойност (Digest) на цялата клетка, получена след използването на хеш-функцията SHA-1, която се използва за проверка на интегритета на данните. Ако данните в клетката са променени умишлено или при загуба по мрежата, то хеш-функцията ще върне различна хеш-стойност, а ако получат такава възлите автоматично ще прекъснат веригата. Фиг. 4 Видове клетки и техните полета Мрежата на Tor се състои от множество възли, наречени още лукови рутери. Към момента на изготвяне на настоящата разработка техният брой е 5290 и продължава да расте11 . Първоначално мрежата е започнала работа с около 100 възела. Всички възли в мрежата поддържат постоянна криптирана връзка както помежду си, така и с всички Tor клиенти. Използва се протокола TLS протокола, наследник на SSL, който криптира предаваните данните при връзката между възлите в мрежата и прави невъзможно тяхното разчитане от страна на злонамерен потребител. Всяка подверига между два възела в мрежата или между възел и Tor клиент има уникален идентификатор, т.е. той зависи от страните във 11 Tor Network Status, http://torstatus.blutmagie.de
  • 21. Защита от анализ на трафика чрез технологията Tor Ангел Иванов Николов, ф.н. 11457 21/33 връзката (connection-specific). Една случайно изградена верига в Tor мрежата между от възел А, през възел B, до възел С ще има 2 различни идентификатора (полето CircID от хедъра на клетките), в зависимост от това при пътуването си дали клетката е между А и В (първа подверига) или между В и С (втора подверига). Допълнително през TLS връзката между два възела например А и В могат да преминават много вериги с различни идентификатори (Верига 1 и Верига 2), т.е. възможно е вериги да съвпадат в някоя своя част (например верига A->B->C и D->B->C съвпадат в частта си между възли А и В). Например Tor клиентът на потребител A и Tor клиентът на потребител могат да използват една и съща верига през Tor мрежата за съвсем различни и независи помежду си комуникации (вж. фиг. 5). Възел А Възел B TLS връзка Верига 1 TCP Поток 1 TCP Поток 2 Верига 2 TCP Поток 1 TCP Поток 2 Фиг. 5 TLS връзка с няколко вериги, всяка от които с няколко потока Важна особеност на веригите е, че през тях могат да се извършват множество различни трансфери на данни през различни TCP потоци. Поради тази причина е необходимо в relay клетките да се пази идентификатор на потока във веригата (вж. фиг. 4). Например уеб браузър и чат клиент могат да инициализират отделни TCP връзки, които могат да бъдат маршрутизирани през една и съща верига. Това се прави с цел ефективност и бързодействие, тъй като инициализирането на нова верига (вж. т. 2.2.4.) за всяка отделна TCP комуникация може да доведе до
  • 22. Защита от анализ на трафика чрез технологията Tor Ангел Иванов Николов, ф.н. 11457 22/33 забавяне на работата на Tor мрежата. Инициализира нова верига се извършва за около 5 сек. За да се намали опасността от някаква форма на проследяване (например свързване на различни потоци от данни към една единствена верига), Tor клиентът е конфигуриран на всеки 10 минути да получава от мрежата нова верига за извършване на комуникацията. Според официалните данни Tor притежава 5290 възела, 996 от които са изходящи – възли, от които трафика излиза от мрежата и се изпраща към оригиналния получател. Списъкът на възлите е публично достъпен на адрес http://torstatus.blutmagie.de. Входящите възли са неизвестни, нито техния брой, нито техните IP адреси, тъй като е възможно доставчиците на Интернет да блокират достъпа до тях, ако са им известни. Те са известни само на директорийните възли. По подразбиране всички вериги в мрежата на Tor включват 3 възела – входящ възел, един междинен възел и изходящ възел. Макар и изградена от много възли, мрежата не ги използва всички за една верига, тъй като това би забавило твърде много трафика. Ако допуснем, че броя на входящите възли е колкото изходящите, т.е. около 1000, което прави междинни възли, то след прости изчисления намираме:  ( ) ( ) ( ) възможни вериги, като отделни техни подвериги съвпадат (или между входния възел и междинния или между междинния и изходния);  ( ) възможни уникални вериги без повтарящи се подвериги между възлите;  ( ) възможни уникални вериги, без повтарящи се възли, т.е. всеки възел участва точно в една верига. Това доказва, че ако за всеки отделен TCP поток се ползва отделна верига и ако съществува изискване никаква част от веригите да не съвпада, то математически мрежата не притежава капацитета да обслужва голям брой заявки. Допълнително съществуват т.нар. мостове – специални възли, които
  • 23. Защита от анализ на трафика чрез технологията Tor Ангел Иванов Николов, ф.н. 11457 23/33 не са включени в директорията, няма техен публично достъпен списък (за разлика от останалите възли). Дори и Интернет доставчикът да блокира достъпа до известни възли от мрежата на Tor (било то междинни или изходящи), то най – вероятно той няма да може да блокира достъпа до всички мостовете. Те играят роля на резервни възли и е възможно да се изгради верига изцяло от мостове, в случай че е блокиран достъпът до всички известни възли на Tor мрежата. По този начин мрежата се противопоставя на цензурирането на Интернет, в това число и на забраната за достъп до подобни услуги за анонимно сърфиране. 2.2.4. Инициализиране на нова верига Инициализирането на нова верига в мрежата на Tor е най – важната част от работата на мрежата. Нека е даден примерният сценарии от фиг. 6. – потребител (клиент) иска да се свърже с уеб сървър (т.е. да изпрати HTTP request и HTTP response), като целият трафик трябва да минава през мрежата на Tor, за да се постигне анонимност на потребителя и невъзможност за реализиране на атаката анализ на трафика. Tor мрежа Уеб сървър Изходящ възелВходящ възел Междинен възел Неизползван междинен възел Неизползван междинен възел Клиент Директориен възел Фиг. 6 Инициализиране на нова верига При първоначалното си стартиране Tor клиентът се свързва с директорийния възел, които му предоставя случайно три възела от Tor мрежата – един входящ, един междинен и един изходящ възел, които ще образуват веригата за този клиент. Никой от тези възли, обаче, не знае
  • 24. Защита от анализ на трафика чрез технологията Tor Ангел Иванов Николов, ф.н. 11457 24/33 къде във веригата се намира, освен изходящия възел. Той знае, че е последен, тъй като той изпраща пакетите на техния оригинален получател, а не на друг възел от Tor мрежата, т.е. той има достъп до оригиналния, но модифициран, хедър на IP пакета. Следва създаване на подверига от клиента до входящия възел. Директорийният възел предоставя както списък на възлите, така и публичен ключ на всеки от тях (всеки възел има частен и публичен ключ за асиметрично криптиране). Tor клиентът използва публичния ключ на първия възел – входящия – за да изпрати към него криптирана клетка. Използва се асиметрично криптиране, като само входящият възел може да декриптира клетката, тъй като той притежава съответния частен ключ от двойката ключове. Самата клетка, която се изпраща между клиента и входящия възел съдържа команда create (т.нар. create cell), която означава заявка за създаването на нова верига, идентификатора на веригата и първата част от „ръкостискането“ на алгоритъма на Дифи – Хелман12 . Той е подобен на Three way handshake при TCP, но с цел размяна на обща тайна, общ ключ, който се използва по – нататък при изпращане и получаване на данни. Входящият възел отговаря с некриптирана клетка с команда created и втората част от „ръкостискането“ на Дифи – Хелман, заедно с хеш- стойност, за да може Tor клиентът да извлече тази обща тайна (общ ключ). Веднъж извършен този процес означава, че Tor клиентът и входящият възел вече имат обща тайна, която могат да използват за криптиране на последваща комуникация помежду си и веригата между тях е създадена. Тази обща тайна всъщност се нарича сесиен ключ. Забележете, че установяването на верига става с помощта на асиметрично криптиране, при което двете страни научават един общ ключ, който по – нататък се използва за симетрично криптиране при последваща комуникация между страните. 12 Wikipedia, Diffie–Hellman key exchange, http://en.wikipedia.org/wiki/Diffie-Hellman_key_exchange
  • 25. Защита от анализ на трафика чрез технологията Tor Ангел Иванов Николов, ф.н. 11457 25/33 След като е установена верига между Tor клиента и входящия възел следва тя да се разшири и да включи следващият избран възел – междинния. Тоr клиентът използва този път публичния ключ на междинния възел (отново получен от директорийния възел), за да изпрати криптирана клетка към него, включваща нов идентификаторът на веригата и първата част от „ръкостискането“ на алгоритъма на Дифи – Хелман, но различни от предходните. Отново командата е create, но предназначена за междинния възел. Самата клетка, обаче, за да стигне до междинния възел трябва да мине през входящия. Ключово тук е, че криптираната create клетката се инкапсулира в друга клета с команда relay extend, криптирана с вече обменения сесиен симетричен ключ и така се праща към входящия възел. Той декриптира съдържанието вижда, че трябва да препрати (маршрутизира) клетката към определения междинен възел, а не да я интерпретира и го прави. Теоретично той не може да я интерпретира, тъй като инкапсулираната клетка е криптирана с публичния ключ на междинния възел. Така клетката стига до междинния възел. Той декриптира съдържанието си със своя частен ключ, и отговаря на входящия възел с некриптирана клетка с команда created и втората част от „ръкостискането“ на Дифи – Хелман, заедно с хеш-стойност, предназначена да обмени общ ключ с Tor клиента. Ключовото за анонимността е, че междинният възел не може да прецени първата част от „ръкостискането“ дали е изпратена от предходния възел или от някой преди него (какъвто е случая). Входящият възел от своя страна отговаря на Tor клиента с клетка с команда relay extended, т.е. съобщава му, че веригата е била удължена с още един възел. Заедно с това му предоставя и отговора на междинния възел, т.е. Tor клиентът и междинният възел вече имат обща тайна общ ключ различен от предходния, която могат да използват за криптиране на последваща комуникация помежду си и веригата между тях е създадена.
  • 26. Защита от анализ на трафика чрез технологията Tor Ангел Иванов Николов, ф.н. 11457 26/33 Аналогично се извършва удължаването на веригата и до третия възел – изходящият. Единствената разлика, че този път клетката предназначена за третия възел, ще трябва да бъде маршрутизирана както от входящия, така и от междинния възел. Ще се извършат две симетрични криптирания с двата вече обменени ключа и едно асиметрично с публични ключ на третия възел. Забележете, че след установяване на цялата верига, Tor клиентът ще притежава 3 различни ключа за симетрично криптиране, първият от тях се притежава също така от входния възел, втория – от междинния, а третия от изходящия. Същността на изграждането на верига в мрежата на Tor е Tor клиентът да размени общи ключове със всеки един възел във веригата. Теоретично процесът може да продължава до безкрай и да се създават вериги от много възли, но както казахме в технологията Tor веригите са ограничени до 3 възела. 2.2.5. Изпращане и получаване на данни по инициализирана верига След изграждането на веригата и обмяната на симетрични ключове за криптиране, вече изпращачът може да изпраща данни по веригата анонимно. Следваща стъпка в разглеждания сценарий, в който потребител иска да зареди уеб страница от отдалечен уеб сървър, е изготвянето на HTTP заявка, нейното инкапсулиране по OSI модела, заедно с IP и други реквизити и изпращане от Интернет браузърът към Tor клиента на същия компютър, т.е. тя ще мине първо през луковото прокси. Там тя бива симетрично криптирана три пъти в три различни вложени една в друга клетки със команди relay data (командата е различна от relay extend). Първо се криптира с обменения ключ с изходящия възел, след това получения криптиран текст се криптира още веднъж с обменения ключ на междинния възел, и най – накрая с този на входящия възел. Така се получава вложени една в друга клетки, с три слоя на криптиране общо, предназначени за изпращане и маршрутизиране през Tor мрежата (вж. фиг. 7). Тялото на всяка клетка представлява друга криптирана клетка,
  • 27. Защита от анализ на трафика чрез технологията Tor Ангел Иванов Николов, ф.н. 11457 27/33 като тялото на най – вътрешната е всъщност оригиналната заявка на клиента. Важно е да се отбележи, че Tor клиентът модифицира HTTP заявката, така че да не се вижда IP адресът на изпращача, а само на получателя. Фиг. 7 Инкапсулирана в три слоя криптиране HTTP заявка Така образуваната клетка е известна като лук (onion), понеже всяко криптиране добавя по един слой върху оригиналните данни, в случая HTTP заявката. Поради това и самите системи, които действат на този принцип се наричат лукови. Следва изпращане на така получената лукова клетка в Tor мрежата. Първата спирка по пътя е входящият възел. Той получава клетката, декриптира най – външния слой (синия на фиг. 7), прочита командата relay data, заедно със стойността CircID в клетката и препраща тялото на клетката към следващия възел (междинния) във веригата. Но той не може да го прочете, тъй като не притежава симетричния ключ), следователно не знае кой е крайния получател, нито каква е цялата верига. При получаването на препратената клетка от входящия възел, междинният извършва същата поредица от действия, но този път той маха втория слой от криптирането (зеления на фиг. 7), за което притежава нужния ключ, отново прочита командата relay data и стойността CircID на
  • 28. Защита от анализ на трафика чрез технологията Tor Ангел Иванов Николов, ф.н. 11457 28/33 клетката, и изпраща по съответната верига тялото на клетката към изходящия възел. Изходящият възел декриптира последната клетка (червения слой криптиране на фиг. 7) и прочита вече оригиналния IP пакет, включително IP адреса на получателя, но не и на изпращача. Възелът знае къде да изпрати пакета, но не и от къде идва той. Най – накрая HTTP заявката бива изпратена на крайния получател – уеб сървъра. В случай, че получателят на данните, изпраща обратно други (както е в разглеждания сценарий – уеб сървърът ще отговори с HTTP отговор на браузъра), цялата процедура се повтаря, но в обратен ред. HTTP отговорът ще мине отново по веригата, но в обратен ред, като на всеки възел ще се криптира със съответния симетричен ключ. Отново клетката ще се маршрутизира обратно по веригата до луковото прокси. То ще получи целия „лук“, и ще приложи три пъти декриптиране със вече известните му ключове, получени при инициализирането на веригата. Като последна стъпка, Tor клиента ще изпрати на браузъра на клиента оригиналния HTTP отговор от уеб сървъра. Допълнително всеки възел проверява полето Digest на съответната му relay клетка (вж. фиг. 4). Това е хеш-стойност на цялата клетката. Ако възелът установи, че тя не съвпада с тази, сметаната от него, то той ще унищожи цялата клетка и ще разруши веригата. По този начин се постига интегритет на предаваните данни. Технологията Tor използва криптографията не само за да осигури конфидентциалност на предаваните данни, но и да гарантира техния интегритет. Важното тук е, че вече излизайки от Tor мрежата оригиналната заявка вече не е криптирана, тя е в суров вид, така както браузърът на потребителя я е изпратил. От цялата комуникация между възлите, клиента и уеб сървъра единствено на това място предаваните данни не се криптират, което може да се определи и като единствения проблем на технологията (зелената линия на фиг. 6). Изходящите възли са връзката на
  • 29. Защита от анализ на трафика чрез технологията Tor Ангел Иванов Николов, ф.н. 11457 29/33 Tor мрежата с останалата отворена част на Интернет. Те виждат действителния получател на данните и е възможно на тях да се инсталират приложения за анализ на трафика от недобросъвестни потребители, дори и да се четат оригиналните данни, ако не са криптирани още при самото си изпращане от клиента. Тази атака в Tor мрежата е позната като Exit node sniffing. Въпреки, че такива изходящи възли се управляват от надеждни доброволци, в миналото са документирани случаи на Exit node sniffing. Счита се, че Tor мрежата може да се атакува и от други атаки като Man-in-the-middle, SSL striping, Timing attack и Sniper attack13 (най – скоро документираната и приложена на практика Denial of Service атака), но опасността от Exit node sniffing все още е най – сериозна. С оглед на това е проведено специално проучване в рамките на няколко месеца (от септември 2013 г. до януари 2014 г.) на трафика през всичките близо 1000 изходящи възли на Tor мрежата и към януари 2014 г. 25 от тях са прилагали някакъв вид атака върху изходящия трафик от Tor мрежата14 . Такива възли биват маркирани в публичния списък на възлите (http://torstatus.blutmagie.de) и изключени от директорийните възли. Това е пример как анонимността може да се компрометира от вътрешна заплаха – някой от самите възли. Tor мрежата изключително много зависи от това доброволците, които са конфигурирали компютрите си като междинен, изходящ възел или мост да не реализират атаки срещу анонимността. 2.3. Приложения на Tor Първоначално технологията Tor е била проектирана за Военноморските сили на САЩ, като проект на U.S. Naval Research Laboratory. Основна цел е била да се запази анонимността на 13 Jansen, R. и др. Sniper Attack: Anonymously Deanonymizing and Disabling the Tor Network, 2014. http://www.robgjansen.com/publications/sniper-ndss2014.pdf 14 Spoiled Onions, http://www.cs.kau.se/philwint/spoiled_onions
  • 30. Защита от анализ на трафика чрез технологията Tor Ангел Иванов Николов, ф.н. 11457 30/33 правителствените комуникации. Днес сферите на използване на Tor са изключително много и всеки ден много хора (цивилни и военни) я използва за различни цели във всекидневната си работа15 :  Военноморските сили на САЩ използват Tor за събиране на данни и разузнаване. Техен екип дори е използвал технологията при скорошни операции в Близкия изток;  Правителствени организации използват Tor за следене и анализ на трафика на уеб сайтове без да оставят данни за правителствените IP адреси. Това е пример за използването на технологията за нещо, с което тя е предназначена да се бори;  Обикновените потребители използват Tor в Интернет сърфирането си, за да се предпазят от уеб сайтове, които следят местоположението им, за връзка с новинарски и други сайтове, които са забранени от техния Интернет доставчик или по силата на фирмена политика;  Журналистите използват Tor, за да могат сигурно и анонимно да кореспондират с информатори или дисиденти, без да разобличават тяхната самоличност или местоположение;  Неправителствени организации, чиито цели са свободен достъп до Интернет, пропагандират широко Tor като средство за борба с цензурата на Интернет. Пример е Electronic Frontier Foundation16 ;  Големите корпорации използват Tor, за да защитят предаваната по електронен път чувствителна информация, т.е. да се защитят от една от формите на корпоративен шпионаж. Често дори те използват Tor мрежата и като заместител на традиционните VPN мрежи, при които е възможно да се извърши анализ на трафика, тъй като те не скриват размера на пренасяните пакети и времето на пренасяне. 15 Пълен списък на кои социални групи и организации използват Tor и за каква цел може да се намери на официалния сайт на технологията на адрес https://www.torproject.org/about/torusers.html.en 16 Electronic Frontier Foundation, Defending your rights in the digital world, https://www.eff.org
  • 31. Защита от анализ на трафика чрез технологията Tor Ангел Иванов Николов, ф.н. 11457 31/33 ЗАКЛЮЧЕНИЕ Днес динамичните промени в законодателствата и технологиите заплашват анонимността на потребители повече от всякога. Потиска се нашата възможност за комуникираме свободно онлайн, да достъпваме различни ресурси онлайн. Тази негативна тенденция също подлага правителствените и корпоративните комуникации под опасност от анализ на Интернет трафика, което в някои случаи може да има последици върху националната сигурност. Не случайно технологията Tor е измислена именно за защита на правителствената комуникация. Но тя се превърна в един изключително полезен инструмент, който обаче се нуждае от помощта на обикновените потребители, за да продължи да контролира сигурността на Интернет комуникациите. Технологията Tor използва уникални механизми за предоставяне на анонимност и свобода при използването на Интернет. Не трябва да се забравя, че в днешни дни поддръжката на такава разпределена мрежа от сървъри продължителен процес. За да се поддържа и разраства мрежата са необходими доброволци, които да включат компютрите си в Tor и да ги конфигурират като междинни, изходящи възли или мостове. Увеличаването на броя сървъри в мрежата на Tor, ще повиши нейната използваемост и ефикасност. Тя ще привлича все повече потребители. Това от своя страна ще повиши броя на възможни изпращачи и получатели, чиято комуникация бива маршрутизирана през Tor мрежата, което ще увеличи и общата сигурността на всички в мрежата. Като заключение ще изкажем молба към потребителите да станат част от Tor мрежата, да я поддържат и използват, да ѝ помагат, за да може и тя да ни помага.
  • 32. Защита от анализ на трафика чрез технологията Tor Ангел Иванов Николов, ф.н. 11457 32/33 ИЗПОЛЗВАНА ЛИТЕРАТУРА 1. Илиев, П. и др. Електронен бизнес – Първа част. Наука и икономика, Варна, 2011. 2. Монтегю, Ю. Воюващият покойник. Държавно военно издателство, София, 1963. 3. Schneier, B. Applied Cryptography: Protocols, Algorithms, and Source Code in C. John Wiley & Sons, Second Edition, 1996. 4. Winterbotham, F. The Ultra secret: the inside story of Operation Ultra, Bletchley Park and Enigma. Orion Books Ltd, London. 2000. 5. Dingledine, R., Mathewson, N., Syverson, P. Tor: The Second – Generation Onion Router. The USENIX Association, 2004. https://www.usenix.org/legacy/events/sec04/tech/full_papers/dingledine/d ingledine.pdf , достъпен на 18.03.2014 г. 6. Electronic Frontier Foundation, Defending your rights in the digital world, https://www.eff.org , достъпен на 22.03.2014 г. 7. Jansen, R. и др. Sniper Attack: Anonymously Deanonymizing and Disabling the Tor Network, 2014. http://www.robgjansen.com/publications/sniper-ndss2014.pdf , достъпен на 22.03.2014 г. 8. RFC 791, Internet protocol specification, http://www.ietf.org/rfc/rfc791.txt, достъпен на 16.03. 2014 г. 9. RFC 793, Transmission Control Protocol specification, http://www.ietf.org/rfc/rfc793.txt , достъпен на 16.03.2014 г. 10.SANS Technology Institute, Traffic Analysis, http://www.sans.edu/research/security-laboratory/article/traffic-analysist , достъпен на 16.03.2014 г. 11.Song, D., Wagner, D., Tian., X. Timing Analysis of Keystrokes and Timing Attacks on SSH, http://www.cs.berkeley.edu/~daw/papers/ssh- use01.pdf , достъпен на 16.03.2014 г.
  • 33. Защита от анализ на трафика чрез технологията Tor Ангел Иванов Николов, ф.н. 11457 33/33 12.Spoiled Onions, http://www.cs.kau.se/philwint/spoiled_onions , достъпен на 22.03.2014 г. 13.The Honeynet Project, Know Your Enemy: Passive Fingerprinting, http://old.honeynet.org/papers/finger , достъпен на 16.03.2014 г. 14.Tor Network Status, http://torstatus.blutmagie.de , достъпен на 18.03.2014 г. 15.Tor Project: Anonymity Online, https://www.torproject.org , достъпен на 18.03.2014 г. 16.Tor Project: Anonymity Online, Who uses Tor?, https://www.torproject.org/about/torusers.html.en , достъпен на 21.03.2014 г. 17.Wikipedia, Communications Assistance for Law Enforcement Act, http://en.wikipedia.org/wiki/Communications_Assistance_For_Law_Enfo rcement_Act , достъпен на 17.03.2014 г. 18.Wikipedia, Data Encryption Standard, http://en.wikipedia.org/wiki/Data_Encryption_Standard , достъпен на 16.03.2014 г. 19.Wikipedia, Diffie–Hellman key exchange, http://en.wikipedia.org/wiki/Diffie-Hellman_key_exchange , достъпен на 19.03.2014 г. 20.Wikipedia, Traffic analysis, http://en.wikipedia.org/wiki/Traffic_analysis, достъпен на 16.03.2014 г. Ангел Николов