Про безпеку в мережі

Про безпеку в мережі

Ця стаття була написана кілька років тому, коли блокування месенджера Telegram активно обговорювалася спільнотою і містить мої думки щодо цього. І хоча сьогодні ця тема вже майже забута, я сподіваюся, що, можливо, це все ще буде комусь цікаво.

Цей текст з'явився внаслідок моїх роздумів на тему цифрової безпеки, і я довго сумнівався, чи варто його публікувати. Благо існує величезна кількість фахівців, які правильно розуміють всю проблематику, і їм нічого нового я повідомити не можу. Однак, крім них, існує ще величезна кількість публіцистів та інших блогерів, які не тільки помиляються самі, а й своїми статтями породжують величезну кількість міфів.

Ні для кого не секрет, що останнім часом на цифровому театрі бойових дій вирують неабиякі пристрасті. Ми, звичайно, маємо на увазі одну з тем російської сучасності, що найбільш обговорюються, а саме блокування месенджера Telegram.

Противниками блокування це подається як протистояння людини та держави, свободи слова та тотального контролю над особистістю. Прихильники, навпаки, керуються міркуваннями громадської безпеки та боротьби з кримінальними та терористичними структурами.

Для початку уявімо, як саме працює месенджер Telegram. Можемо зайти на їхню головну сторінку та прочитати про те, як вони самі себе позиціонують. Однією з головних переваг використання саме цього рішення буде вказаний безкомпромісний акцент у безпеці кінцевого користувача. Але що саме мається на увазі під цим?

Як і в багатьох інших публічних сервісах, ваші дані передаються в зашифрованому вигляді, але тільки до центральних серверів, де вони лежать у цілком відкритому вигляді і будь-який адмін, якщо сильно захоче, легко побачить все ваше листування. Сумніваєтесь? Тоді подумайте, як реалізовано функцію синхронізації між пристроями. Якщо дані секретні, яким чином вони потрапляють на третій пристрій? Адже ніяких спеціальних ключів клієнтів ви не надаєте для розшифровки.

Наприклад, як це зроблено в поштовому сервісі ProtonMail, де для роботи з сервісом вам необхідно надати ключ, який зберігається на вашій локальній машині і який використовується браузером для розшифровування повідомлень у поштовій скриньці.

Але не все так просто. Окрім звичайних чатів, є ще й секретні. Тут листування справді ведеться лише між двома пристроями і ні про яку синхронізацію не йдеться. Ця функція доступна лише на мобільних клієнтах, причому скріншоти чату заблоковані на рівні програми, а чат знищується через заданий час. З технічного боку потік даних все ще йде через центральні сервери, проте там не зберігається. Причому саме збереження безглуздо, оскільки ключі дешифрування мають лише клієнти, а зашифрований трафік особливої ​​цінності не становить.

Ця схема буде працювати, поки клієнти та сервер її чесно реалізують і поки на пристрої немає різного роду програм, які без вашого відома відправляють знімки вашого екрану до третіх осіб. То може причину такої не любові до Telegram із боку правоохоронних органів варто шукати у секретних чатах? Саме в цьому, як на мене, криється корінь нерозуміння основної маси людей. І ми до кінця не зможемо розібратися з причиною цього нерозуміння, поки не розберемося, що таке шифрування взагалі і від кого воно покликане захищати ваші дані.

Припустимо, що якийсь зловмисник хоче передати секретне повідомлення своїм друзям. Настільки важливе, що варто заморочитися, і перестрахуватися. Чи є Telegram таким уже вдалим вибором з погляду фахівця з інформаційної безпеки? Ні не є. Я стверджую, що використовувати для цього будь-який з популярних месенджерів – це найгірший варіант, який можна вибрати.

Основною проблемою є використання системи повідомлень, де ваше листування шукатимуть насамперед. І навіть якщо вона захищена досить добре, сам факт її наявності може скомпрометувати вас. Нагадаємо, що з'єднання клієнтів відбувається все ще через центральні сервери і щонайменше факт відправки повідомлення між двома користувачами все ще може бути доведений. Тому безглуздо користуватися електронною поштою, соціальними мережами та будь-якими іншими публічними сервісами.

Як тоді організувати листування, яке задовольняє всім вимогам безпеки? В рамках нашого огляду ми свідомо відкинемо всі нелегальні чи спірні методи для того, щоб показати, що завдання може бути вирішене виключно в рамках закону. Не потрібно жодного шпигунського, хакерського або малодоступного програмного обладнання.
Практично всі інструменти входять до набору стандартних утиліт, що постачаються з будь-якою операційною системою GNU/Linux, і їхня заборона означатиме заборону комп'ютерів як таких.

Всесвітня мережа інтернет нагадує величезну павутину з серверів, з операційною системою GNU/Linux, що біжить на них, і правилами маршрутизації пакетів між цими серверами. Більшість цих серверів не доступні для прямого підключення, проте, крім них, існують ще мільйони серверів із цілком доступними адресами, які обслуговують усіх нас із вами, пропускаючи через себе величезну кількість трафіку. І ваше листування серед усього цього хаосу ніхто й ніколи не шукатиме, особливо якщо воно на загальному тлі нічим особливим не виділяється.

Ті, хто бажає організувати секретний канал зв'язку, просто куплять VPS (віртуальну машину у хмарі) у одного із сотень гравців, присутніх на ринку. Ціна питання, як не важко переконається, кілька доларів на місяць. Звичайно, анонімно це зробити не вийде, і в будь-якому випадку ця віртуальна машина буде прив'язана до вашого платіжного засобу, а отже, і до вашої особи. Тим не менш, більшість хостерів не хвилює, що ви запускаєте на їхній залозі, поки ви не перевищите їх базові обмеження, як, наприклад, кількість відданого трафіку або з'єднань на 23 порт.

Хоча така можливість і існує, йому просто не вигідно витрачати кілька доларів, що заробив на вас на те, щоб ще й стежити за вами.
А навіть якщо він і захоче або буде змушений це зробити, то спочатку повинен зрозуміти, які програмне забезпечення використовується конкретно вами і, ґрунтуючись на цьому знанні, створити інфраструктуру стеження. У ручну це не складе труднощів, але автоматизувати цей процес буде вкрай складним завданням. З цієї ж причини зберігати весь трафік, що проходить через ваш сервер, буде економічно не вигідно, тільки якщо ви не потрапите в поле зору відповідних структур, які захочуть це зробити.

Наступним етапом буде створення захищеного каналу одним із безлічі існуючих способів.

  • Найпростішим буде створення захищеного ssh з'єднання із сервером. Декілька клієнтів підключаються по OpenSSH і спілкуються, наприклад, використовуючи команду wall. Дешево й сердито.
  • Підняття VPN сервера та підключення кількох клієнтів через центральний сервер. Як варіант шукайте будь-яку програму-чат для локальних мереж і вперед.
  • Проста FreeBSD NetCat раптово має вбудований функціонал для примітивного анонімного чату. Підтримує шифрування за сертифікатами та ще багато чого.

Не слід згадувати, що так само, крім простих текстових повідомлень, можна передавати будь-які файли. Будь-який із цих способів реалізується за 5-10 хвилин і не є технічно складним. Повідомлення будуть виглядати як простий шифрований трафік, якого в інтернеті більшість.

Такий підхід називається стеганографія – ховати повідомлення там, де їх і не подумають шукати. Саме собою це не гарантує безпеку листування, але знижує до нуля ймовірність її виявлення. До того ж, якщо ваш сервер ще й знаходиться в іншій країні, процес вилучення даних може бути неможливий ще й з інших причин. І навіть якщо хтось все ж таки отримає доступ до нього, то ваше листування до цього моменту, швидше за все, не буде скомпрометоване, оскільки воно, на відміну від публічних сервісів, ніде локально не зберігається (це, звичайно, залежить від обраного вами методу комунікації).

Однак мені можуть заперечити, що я шукаю не там, розвідки світу вже давно все продумали і в усіх протоколах шифрування вже є діри для внутрішнього користування. Цілком здорове твердження з огляду на історію питання. Як бути в цьому випадку?

Усі системи шифрування, які лежать в основі сучасної криптографії, мають деяку властивість — криптографічну стійкість. Передбачається, що будь-який шифр можна зламати — це лише питання часу та ресурсів. В ідеалі необхідно досягти того, щоб цей процес був просто невигідний зломщику, незалежно від того, наскільки важливими є дані. Або займав так довго, що в момент злому дані вже втратить свою важливість.

Це твердження не зовсім правильне. Воно коректне, коли йдеться про найпоширеніші протоколи шифрування, які використовуються сьогодні. Однак серед усієї різноманітності шифрів існує один, який є абсолютно стійким до злому і водночас є дуже простим для розуміння. Його теоретично неможливо зламати, якщо дотримано всіх умов.

Ідея, що лежить у Шифрі Вернама, дуже проста — заздалегідь створюються послідовності випадкових ключів, якими шифруватимуться повідомлення. Причому кожен ключ використовується лише один раз для зашифрування та розшифрування одного повідомлення. У найпростішому випадку ми створюємо довгий рядок випадкових байт і кожен байт повідомлення перетворимо через операцію XOR з відповідним йому байтом у ключі і відправляємо далі не зашифрованим каналом. Легко помітити, що шифр симетричний і ключ для шифрування та дешифрування той самий.

У цього способу є недоліки, і він досить рідко використовується, однак перевага, що досягається, полягає в тому, що якщо дві сторони заздалегідь домовляються про ключ і цей ключ не скомпрометований, то можна бути впевненим, що дані не прочитають.

Як це працює? Ключ генерується заздалегідь і передається між усіма учасниками альтернативного каналу. Його можна передати під час особистої зустрічі на нейтральній території, якщо є така можливість, щоб повністю виключити можливий огляд, або просто надіслати USB флешкою ​​поштою. Ми все ще живемо у світі, де немає технічної можливості доглядати всі носії інформації, що перетинають кордони, всі жорсткі диски та телефони.
Після того, як всі учасники листування отримали ключ, може пройти досить багато часу, поки настане безпосередньо сеанс зв'язку, що ще більше ускладнює протидію даній системі.

Один байт у ключі використовується лише один раз для шифрування одного символу секретного послання та його розшифрування іншими учасниками. Відпрацьовані ключі можуть автоматично знищуватись усіма учасниками листування після передачі даних. Один раз обмінявшись секретними ключами, можна передавати повідомлення загальним обсягом, що дорівнює їх довжині. Цей факт зазвичай наводять як недолік даного шифру, куди приємніше, коли ключ має обмежену довжину і залежить від розміру повідомлення. Однак ці люди забувають про прогрес, і якщо за часів Холодної війни це була проблема, то сьогодні не є такою. Якщо виходити з того, що можливість сучасних носіїв практично безмежна і в найскромнішому випадку йдеться про гігабайти, захищений канал зв'язку може діяти необмежено довго.

Історично Шифр ​​Вернама, або шифрування за допомогою одноразових блокнотів, широко використовувався за часів Холодної війни передачі секретних повідомлень. Хоча відомі випадки, коли через неуважність різні повідомлення шифрувалися одними й тими самими ключами, тобто процедуру шифрування було порушено і це дозволило їх розшифрувати.

Чи складно практично використовувати цей метод? Швидше тривіально, і автоматизація цього процесу за допомогою сучасних комп'ютерів під силу початківцю любителю.

То може мета блокування — завдати шкоди конкретному месенджеру Telegram? Якщо так, то знову мимо. Клієнт Telegram із коробки підтримує проксі сервера та протокол SOCKS5, що дає користувачеві можливість працювати через зовнішні сервери з не заблокованими IP адресами. Знайти публічний SOCKS5 сервер для короткої сесії не складно, а підняти такий сервер самому на своїй VPS ще простіше.

Хоча удар по екосистемі месенджера все ж таки відбудеться, тому що для більшості користувачів ці обмеження все одно створять непереборний бар'єр і його популярність серед населення постраждає.

Отже, підіб'ємо підсумок. Весь галас навколо Telegram — це хайп і не більше. Блокувати його з міркувань громадської безпеки це технічно безграмотно і безглуздо. Будь-які структури, життєво зацікавлені в захищеному листуванні, можуть організувати свій канал, використовуючи кілька технік, що доповнюють один одного, і, що найцікавіше, робиться це надзвичайно просто, поки є будь-який доступ в мережу.

Фронт інформаційної безпеки сьогодні проходить не за месенджерами, а скоріше за простими користувачами мережі, навіть якщо вони цього не усвідомлюють. Сучасний інтернет — це реальність, з якою потрібно рахуватися і в якій перестають діяти закони, які ще недавно здаються непорушними. Блокування Telegram є ще одним прикладом воєн за інформаційний ринок. Не першою і вже точно не останньою.

Ще кілька десятків років тому до масового розвитку інтернету ключовою проблемою, що стоїть перед різними агентурними мережами, було налагодження безпечного каналу зв'язку як між собою так і координації своєї роботи з центром. Жорсткий контроль за приватними радіостанціями під час Другої світової війни у ​​всіх країнах-учасницях (реєстрація необхідна і сьогодні), номерні радіостанції Холодної війни (деякі діють і сьогодні), міні плівки в підошві черевика — все це на новому витку розвитку цивілізації виглядає просто смішно. Як і інерція свідомості, що змушує державну машину жорстко блокувати будь-яке не підконтрольне їй явище. Саме тому блокування IP-адрес не повинно розглядатися як прийнятне рішення, і лише показує відсутність компетенції у людей, які приймають такі рішення.

Основною проблемою сучасності є не зберігання чи аналіз даних особистого листування третіми особами (це цілком собі об'єктивна реальність, в якій ми сьогодні живемо), а той факт, що люди самі готові надавати ці дані. Щоразу, коли ви заходите в інтернет зі свого улюбленого браузера, на вас уважно дивляться з десяток скриптів, записуючи, як і куди ви натиснули і на яку сторінку перейшли. Встановлюючи черговий додаток для смартфона, більшість розглядає вікно запиту на надання програмі привілеїв як настирливий бар'єр перед початком її використання. Не помічаючи того факту, що нешкідлива програма лізе до вашого записника і хоче прочитати всі ваші повідомлення. Безпека та конфіденційність охоче розмінюються на зручність використання. І людина сама часто цілком добровільно розлучається зі своєю персональною інформацією, а отже зі своєю свободою, наповнюючи таким чином бази даних світових приватних та державних організацій найціннішою інформацією про своє життя. А ті, безперечно, використовуватимуть цю інформацію у своїх цілях. А так само в гонці за прибутком перепродаватимуть її всім охочим, ігноруючи будь-які морально-етичні норми.

Я сподіваюся, що подана у статті інформація дозволить вам по-новому поглянути на проблему інформаційної безпеки і, можливо, змінити деякі зі своїх звичок під час роботи в мережі. А фахівці суворо посміхнуться та підуть далі.

Мир вашому дому.

Джерело: habr.com

Додати коментар або відгук