Jabber

9 травня 2023 1 хвилина

Jabber messenger

У цій статті ви отримаєте знання з анонімності, зокрема дізнаєтеся, що таке Jabber. Jabber є аліасом для XMPP – протоколу миттєвої передачі повідомлення. На основі нього побудовано багато клієнтів, серед яких великою популярністю користуються Psi та Pidgin. У кожного з останніх є свої переваги та недоліки, але за своєю суттю обидва – абсолютно ідентичні. Як правило, плагіні PGP йдуть встановленими і не потребують додаткових дій для налаштування. Як і PGP, протокол OTR (off-the-record) дозволяє обмінюватися зашифрованими повідомленнями, але має додаткові характеристики.

Jabber є аліасом для XMPP – протоколу миттєвої передачі повідомлення. На основі нього побудовано багато клієнтів, серед яких великою популярністю користуються Psi та Pidgin. У кожного з останніх є свої переваги та недоліки, але за своєю суттю обидва – абсолютно ідентичні.
За роки свого існування XMPP зазнав якісних змін, а клієнти обросли безліччю плагінів, за рахунок яких може конкурувати з більш сучасними програмами для обміну повідомленнями. З погляду безпеки, лідерами серед них залишаються розширення OTR та PGP.Що пропонує OTR? OTR пропонує – PFS (perfect forward secrecy) навіть якщо кореневий ключ буде скомпрометовано, сесійні ключі (як і дані, зашифровані ними) не будуть скомпрометовані та неможливо встановити автора повідомлення після закінчення сесії. У статті розглянемо встановлення клієнта та налаштування PGP та OTR. В залежності від конкретного клієнта порядок дій може відрізнятися. Наприклад, у списку плагінів Psi вже встановлено OTR і все, що потрібно зробити – активувати його і налаштувати. Вибір клієнта повністю лежить на користувачеві і при коректному налаштуванні ніяк не впливає на безпеку обміну даними. Для демонстрації було вибрано Pidgin. По-перше, VPN чи PROXY навіть для реєстрації на сервері. Серверів, на яких можлива реєстрація – безліч, і у кожного з них своя політика як щодо фіксації IP, так і зберігання повідомлень користувачів. Тому як при реєстрації, так і за включеного клієнта необхідно потурбуватися про власну анонімність.

Встановлення клієнта та налаштування PGP та OTR

Це означає, що навіть якщо третя особа отримає вміст повідомлень (деякі сервери зберігають листування користувачів), то довести їхнє авторство вже не буде можливим. Так цей протокол не має такого поширення як PGP, подробиці його пристрою в рамках даного курсу наводитися не будуть. Короткий огляд механізму протоколу можна знайти у статті: https://invisibleuser.com/guide/how-otr-messaging-works

Підготовка

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

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

 

Залежно від конкретного клієнта порядок дій може відрізнятися. Наприклад, у списку плагінів Psi вже встановлено OTR і все, що потрібно зробити – активувати його і налаштувати Тоді як Pidgin передбачає, що всі потрібні плагіни будуть доставлені в систему вручну. Вибір клієнта повністю лежить на користувачеві і при коректному налаштуванні ніяк не впливає на безпеку обміну даними. Для демонстрації було обрано Pidgin.

PGP

Про Pretty Good Privacy написано досить багато у розділі вище. У контексті Джаббера варто вказати, що більшість клієнтів підтримують власну генерацію ключів, проте, як і раніше, рекомендується всі ключі тримати при собі і генерувати їх локально, якщо це можливо.
Як правило, плагіни PGP йдуть встановленими і не потребують додаткових дій для налаштування.

OTR

Як і PGP, протокол OTR (off-the-record) дозволяє обмінюватися зашифрованими повідомленнями, але має додаткові характеристики. Так, крім можливості шифрування повідомлень та аутентифікації співрозмовника, OTR пропонує:

  • PFS (perfect forward secrecy) навіть якщо кореневий ключ буде скомпрометовано, сесійні ключі (як і дані, зашифровані ними) не будуть скомпрометовані.
  • неможливість встановити автора повідомлення після закінчення сесії.


Окремі клієнти типу Psi запропонують зареєструватися при першому запуску та самі нададуть список серверів. Допустимо скористатися одним із них, проте перед цим рекомендується вивчити інформацію про нього або хоча б вибирати сервери не зі США чи Європи.

Встановлення клієнта

  1. Щоб встановити xmpp-клієнт використовувати команду:

sudo apt install pidgin

Після цього при запуску програми користувачеві буде запропоновано додати обліковий запис.

Скріншот 1. Вікно Accounts.

Скріншот 2. Приклад заповненної форми.

2. Також, для більшої безпеки можна пустити Jabber через проксі – всі необхідні налаштування можна знайти докладніше про проксі нижче .

Коли всі налаштування задані, можна натиснути Add і обліковий запис автоматично активізується.

!!! Якщо обліковий запис не був попередньо зареєстрований через сайт, потрібно обов’язково поставити галочку напроти Create this new account on the server!!!
(за бажанням можна заповнити поле Resource: воно потрібно, щоб співрозмовник знав, з якого ресурсу зараз з ним спілкуються)

Proxy

1, Як додатковий захист можна використовувати вже наявний та працюючий Tor. Важливо, що Тор має працювати протягом усього використання месенджера. Для цього запускаємо і коннектим Тор. Повертаємось у месенджер, у вкладці Tools вибираємо Preferences -> Proxy. Тут 9150 – порт, на якому крутиться Тор по дефолту.

Після цього месенджер потрібно перезапустити.

OTP Plugin

1. Тепер, коли обліковий запис заведено, можна подбати про безпеку обміну повідомленнями. Для початку потрібно встановити та активувати OTP модуль.
Щоб встановити потрібний плагін, достатньо використовувати команду:

sudo apt install pidgin-otr

Після того, як плагін успішно встановлений, потрібно в головному вікні месенджера перейти Tools -> Plugins і серед представлених плагінів вибрати потрібний, натиснути на Configure Plugin. Залежно від того, чи налаштовано OTP у співрозмовника чи ні, сценарій поведінки месенджера може змінюватися. Однак, якщо у останнього OTR активовано, то при отриманні повідомлення можна буде побачити наступну картину.

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

2. Оскільки на даний момент співрозмовник лише стверджує, що є певним користувачем, його статус визначається як Unverified. Щоб переконатися в особистості того, хто написав, потрібно натиснути на OTR або Unverified і в меню вибрати пункт authenticate.
На цьому етапі користувачеві буде запропоновано три варіанти автентичності особистості:

  • питання-відповідь: користувач задає питання, відповідь на яке може знати лише конкретна особа

  • секретне слово: зазвичай узгоджується заздалегідь через інші захищені канали зв’язку

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

3. Ми використовуваємо перший варіант , де буде запропоновано заповнити такі поля:


Скріншот 3. Вікно з полями автентифікації

4. Як тільки питання та відповідь введені, потрібно натиснути Authenticate і у співрозмовника по той бік екрана з’явиться запит:

5. Якщо відповідь була введена правильно, користувач побачить:

Скріншот 5. Відповідне повідомлення.

6. А статус співрозмовника змінитиметься з Unverified на Private.

Скріншот 6. Приклад.

7. Аналогічну процедуру має зробити стосовно користувача та його співрозмовник – нагадування про це буде показано після першої аутентифікації.

Скріншот 7. Нагадування.

8. Інакше той вважатиметься неверицифованим.

9. Щоб зберегти контакт співрозмовника, потрібно натиснути на COnversation -> Add, доповнити за необхідності дані, після чого зберегти обліковий запис.

Скріншот 9.Збереження облікового запису.

10. Після цього співрозмовник відображатиметься у аркуші контактів. Якщо його не видно, швидше за все співрозмовник пішов у офлайн. Щоб переглядати всі контакти незалежно від того, активні вони чи ні, у вікні Buddy List потрібно перейти Buddies -> Show і позначити галочкою чекбокс Offline Buddies.

Скріншот 10. Приклад співрозмовника у контактах.
Інші статті по темі
Знайшли помилку?
Якщо ви знайшли помилку, зробіть скріншот і надішліть його боту.