О мессенджере MAX и блокировках
• #max #vk #mail.ru #odnoklassniki #интернет #iptables
Рассуждения о будущем интернета и один из методов блокировки сервисов VK на транзитном сервере
Намедни в сети вспыла занятная история вокруг месседжера MAX. Слухи, ходят с самого начала года: приложение от лица своих юзверей (тобишь с клиентского IP) направляет какие-то странные запросы в зарубежные сервисы “определителей IP-адресов” (и не только).
Источники:
- https://habr.com/ru/articles/1006394/
- https://habr.com/ru/articles/1006666/
- https://habr.com/ru/articles/1006394/
- https://appleinsider.ru/sudy-i-skandaly/pravda-li-chto-max-sledit-za-vpn-my-proverili.html
Казалось бы - и что с того: По технологии WebRTC, водится, что IP-адрес клиента нужен для работы звонков (для соединения клиента к клиенту напрямую). Однако ж тут возникает небольшой нюанс: IT-гигант VK, к которому сей мессенджер имеет самое непосредственное отношения, давно обладает своими средствами для достоверного определения адреса клиента.
Но дальше начинается самое интересное.
Оказалось, что запросы направлялсь не только на безобидные сервисы-определители IP. В списках также фигурировали и заблокированные домены Telegram, Whatsapp (экстремисты). Вот это уж любопытно.
Дело в том, что направление таких запросов с IP-адреса клиента на заблокированные домены может служить своеобразным тестом: а способен ли человек посещать сайты, которые должны быть недоступны простым смертным. Даже если у Вас на роутере или на устройстве настроена раздельная маршрутизация (это когда устройство по заданным правилам определяется куда обращаться и с какой сети), подобные запросы позволяют это выявить.
Если собрать все IP пользователя, а затем сравнить, картина складывается довольно ясная. Видно, где основной трафик, а где пользователь немного хитрит.
И тут, собственно говоря, нет никакой мистики. Борьбу со всякими изощрениями с трафиком государство ведет активно. Пресс-служба MAX, кстати, на эти публикации отреагировала вполне предсказуемо и дежурно заявила “вывсеврёти1”, а затем, говорят, запилили обновление, где такие запросы частично пропали.
Кстати, если любопытно, можете помониторить трафик приложений на своем айфоне. Посмотреть историю обращений можете в “Отчете о конфиденциальности приложений” в настройках iOS.
Если смотреть шире, вся это история напоминает систему “Ревизор”. Она ставится на оборудование всех провайдеров и периодически дергает запрещенные ресурсы. Если что-то хорошо дергается, то оператору прилетает бодрый штраф. Нынче эта система, скорее всего, уступит место более серьезным иструментам, которые централизованно фильтруют весь трафик.
В целом идея создания ревизора в кармане, надо сказать, довольно изящная, но исполнение - несколько топорное. Прошаренные пользаки такие вещи палят довольно быстро. Тем более прошаренных нынче становится все больше.
Меж тем Интернет вообще переживает занятный период, он активно дробится на национальньные экосистемы. На этом фоне идея обзавестись государственным мессенджером выглядит здравой. Причем основная идея не в защите от скамеров. В интернете уже дециллион раз разбирали структуру и исходный код Макса. Приложение запрашивает такие же права как и вацап, телеграм и другие писалки, а в самом приложении не нашли критических уязвимостей. Тем не менее, сквозное шифрование в MAX не предусматривает, что, как ни крути, доверия людям не добавляет. Желательно, конечно, фичей такой обзавестись, на каком нибудь ГОСТовском алгоритме :)
Вообще любой мессенджер с более-менее активной аудиторией это неплохой поток информации, и как водится, интересантов туда заглянуть достаточно, поэтому все стараются переманить пользователей в свои подконтрольные каналы связи. Сторонники сквозного шифрования часто апеллируют к его непробиваемости. Есть деталь: оно защищает само содержание сообщений, однако не затрагивает метаданные: кто писал и кому, сколько времени разговаривали, частота звонков, время общения, IP-адреса, геолокацию, “наполненность сообщения” (картинки, файлы и т.д.), ваши контакты на телефоне (доступ к которым вы сами выдаете), устройство и так далее и тому подобное. Для обычных пользователей эта информация неинтересна, а для спецслужб вполне. Поэтому интересанты в поливании мессенджера MAX известной субстанцией есть.
В 2014 году бывший директор АНБ и ЦРУ США сказал довольно откровенную вещь “We kill people based on metadata” - дословно “Мы убиваем людей на основе метаданных”. Тут как грится, комментарии излишни. С тридваN-сервисам ситуация примерно такая же. Сервер, который помогает вам скроллить рилсы, по сути, становится “хабом” всего вашего трафика. Даже если никто не знает, какие страницы вы открывали, анализ закономертностей в трафике, т.н. “Correlation-based Traffic-analysis Attack”, может многое рассказать о пользователе. Такими методами, между прочим, не раз деанонили пользаков TOR.
Кто-то скажет “да кому я нужен”, и будет, отчасти, прав. Отдельный человек редко представляет интерес, однако из данных тысяч таких пользователей можно сложить довольно точную картину общественных настроений, что вполне себе ценный ресурс. Зарубежные алгоритмы, основывая на этих данных, формируют определенным группам населения нужную повестку, пусть даже необоснованную и бредовую. Тут к месту теория Bullshit asimmetry - “асимметричной чуши”: затраты на опровержение чуши на порядок больше, чем её производство.
Нам, обычным работягам с завода, впрочем, вовсе не обязательно превращаться в цифрового шпиона. Достаточно соблюдать элементарную цифровую гигиену: меньше сервисов, меньше регистраций и меньше лишней информации. Как правило, этого достаточно.
Что касается Макса - без сомнений со временем он будет отнесен к числу госсистем, к которым со стороны ФСБ и ФСТЭК предъявляются серьезные требования по защите данных. Макс наверняка будет подпитываться госконтрактами, поэтому ресурса продвижения у него кроме оного нет, оно сильно заметно. Рунет, скорее всего, поделится на сегменты - одни будут сидеть на сервисах ВК и Яндекса, а другие продолжат пользоваться всякими способам обхода. Кстати, занятно, что на сайте службы внешней разведки размещен вполне себе туториал как анонимно сообщить инфу нашим разведчикам через сеть TOR.
В общем и целом даже т.н. “чебурнет” не лишит возможности найти способ как попасть в другую зону интернета. Таких практик уже достаточно. Понимаю, что эти ежедневные новости о блокировках, запретах уже изрядно поднадоели. Мир сейчас действительно выглядит немного нервным. Но история человечества всегда была такой: холодные войны, железные занавесы, запрет технологий, и каждый раз людям казалось, что все становится только хуже. Однако технологии продолжали развиваться, интернет стал глобальным, а знания стали доступными. В общем и целом наше поколение имеет больше возможностей, чем когда либо. Поэтому сейчас самое разумное - не паниковать. В долгосрочной перспективе все обязательно будет хорошо.
И да, собственно говоря, ради чего всё это обсуждение затевалось. Хотел добавить заметку о том, как ограничить доступ к сервисоам VK и Mail на уровне сети. Не панацея, но лучше чем ничего, возможно продлит жизнь self-hosted. Блокируются, правда, только IPv4-адреса. Если сервер имеет IPv6, обход теоретически возможен. Да и iptables нынче многие считают архаикой. Но, как водится, старые инструменты иногда работают вполне исправно.
- Устанавливаем зависимости
apt update
apt install -y ipset iptables-persistent whois
- Создаем словарь правил для блокировок
ipset destroy vk_block 2>/dev/null
ipset create vk_block hash:net family inet
- Создаем bash скрипт для автоматизации получения подсетей VK, OK, Mail, MAX в /root/updatevkblock.sh
#!/bin/bash
PATH=/usr/sbin:/usr/bin:/sbin:/bin
IPSET="vk_block"
# список ASN VK / Mail / OK
ASNS=(
AS47541
AS47542
AS62243
AS207581
AS47764
AS60476
AS61178
AS205830
AS57973
AS12695
)
ipset flush $IPSET
for ASN in "${ASNS[@]}"; do
echo "Loading $ASN"
whois -h whois.radb.net -- "-i origin $ASN" \
| grep ^route: \
| awk '{print $2}' \
| grep -Ev '^(0\.|10\.|127\.|192\.168\.|172\.16\.|169\.254\.)' \
| grep -Ev '/([0-7])$' \
| grep -v '^0.0.0.0' \
| grep -v '/0' \
| while read NET; do
ipset add $IPSET $NET -exist
done
done
- Делаем файл исполняемым и запускаем
chmod +x /root/updatevkblock.sh
/root/updatevkblock.sh
- Добавлять правила iptables и сохраняем на постоянку
iptables -I FORWARD -m set --match-set vk_block dst -j REJECT
iptables -I FORWARD -m set --match-set vk_block src -j REJECT
netfilter-persistent save
ipset save > /etc/ipset.conf
- Делаем демон для поднятия ipset после перезагрузки в/etc/systemd/system/ipset-restore.service
[Unit]
Description=Restore ipset rules
Before=netfilter-persistent.service
[Service]
Type=oneshot
ExecStart=/sbin/ipset restore -f /etc/ipset.conf
RemainAfterExit=yes
[Install]
WantedBy=multi-user.target
systemctl daemon-reload
systemctl enable ipset-restore
Ну, собственно, и всё.
Интернет штука упрямая. Его можно ограничивать, сегментировать, пытаться контролировать - но он всё равно будет искать обходные пути. И, надо признать, пока у него это получается довольно неплохо.