В MAX появились секретные чаты с шифрованием Base64

panorama.pub — Разработчики мессенджера MAX объявили, что теперь в нём существуют полноценные секретные чаты – пользователи, желающие сохранить конфиденциальность, могут инициировать защищённый диалог, который не смогут прочитать третьи лица. Как заверили создатели MAX, защита сообщений «надёжно обеспечена ИИ-алгоритмом Base64». В момент, когда зашифрованное сообщение будет доставлено на устройство получателя, искусственный интеллект произведёт его расшифровку обратно в читаемый текст #опережая_события
Новости, Юмор | tonyware 21 день назад
44 комментария | 28 за, 1 против |
#1 | 21 день назад | Кому: Всем
В мессенджере MAX появились секретные чаты: все сообщения шифруются по алгоритму Base64

Разработчики мессенджера MAX объявили, что теперь в нём существуют полноценные секретные чаты – пользователи, желающие сохранить конфиденциальность, могут инициировать защищённый диалог, который не смогут прочитать третьи лица.

Как заверили создатели MAX, защита сообщений «надёжно обеспечена ИИ-алгоритмом Base64».

«К примеру, вы пишете сообщение: «Здравствуй, Сергей Семёнович». Умный алгоритм перед отправкой на сервер превращает этот текст вот в такую, совершенно не читаемую строку: «0J3QtSDQt9GA0Y8g0L/QvtC70LXQtyDQv9C10YDQtdC/0YDQvtCy0LXRgNC40YLRjCwg0LTQsD8=». В результате хакеры и иностранные спецслужбы если даже и перехватят её, то не смогут понять, о чём идёт речь», – говорится в пресс-релизе.

В момент, когда зашифрованное сообщение будет доставлено на устройство получателя, искусственный интеллект произведёт его расшифровку обратно в читаемый текст. Таким образом, шифрование не доставит никаких неудобств для пользователей. Как отмечают разработчики, MAX – первый в мире мессенджер с Base64-шифрованием, что в очередной раз доказывает технологическое лидерство отечественных решений.
#2 | 21 день назад | Кому: Всем
Можно ещё буквы местами менять.
#3 | 21 день назад | Кому: Всем
Когда это пишет "панорама" - это смешно, все смеются. А когда подобное заявляют всякие macOTSOS'ы - все неистово верят и дрочат на безопасность.
#4 | 21 день назад | Кому: Всем
Если вставить "зашифрованное" сообщение в любой онлайн-перекодировщик Base64, можно получить небольшой смешной бонус от авторов новости.
#5 | 21 день назад | Кому: Всем
Умный алгоритм перед отправкой на сервер превращает этот текст вот в такую, совершенно не читаемую строку:
«0JfQtNGA0LDQstGB0YLQstGD0LksINCh0LXRgNCz0LXQuSDQodC10LzRkdC90L7QstC40Yc=»
#6 | 21 день назад | Кому: Strider
> Если вставить "зашифрованное" сообщение в любой онлайн-перекодировщик Base64, можно получить небольшой смешной бонус от авторов новости.

Тут от производителя МАХа более смешная шутка пришла - все картинки, фото - не шифруются и получают постоянную ссылку с прямым доступом кого угодно, и если ты получил хоть один документ от какого-нить пользователя - ты можешь простым перебором получить ВСЕ фото/картинки этого пользователя.
#7 | 21 день назад | Кому: Склеп
> Тут от производителя МАХа более смешная шутка пришла - все картинки, фото - не шифруются и получают постоянную ссылку с прямым доступом кого угодно, и если ты получил хоть один документ от какого-нить пользователя - ты можешь простым перебором получить ВСЕ фото/картинки этого пользователя.

Это называется IDOR, кажется. Очень нелепая дыра.
#8 | 21 день назад | Кому: Freund
> Это называется IDOR, кажется. Очень нелепая дыра.

Любопытно, что это название (IDOR) происходит от эпитета, которым большинство пользователей обзывало разработчика в комментах за криворукость.
#9 | 21 день назад | Кому: baraka16
Новость:
[censored]

Опровержение:
[censored]

Проверить не могу, нет у меня Ма(ха)кса
#10 | 21 день назад | Кому: Comrade9444
> Опровержение:

Другие пользователи могут увидеть фото, только если владелец добровольно поделится ими или ссылкой на них

О чем и речь - достаточно получить одну ссылку, чтоб получить доступ ко всем.
#11 | 21 день назад | Кому: Склеп
> Тут от производителя МАХа более смешная шутка пришла - все картинки, фото - не шифруются и получают постоянную ссылку с прямым доступом кого угодно, и если ты получил хоть один документ от какого-нить пользователя - ты можешь простым перебором получить ВСЕ фото/картинки этого пользователя.

То есть в точности как в Телеге.
#12 | 21 день назад | Кому: Пальтоконь
> То есть в точности как в Телеге.

Нет.
Телега использует сложную систему хранения и доступа к файлам (MTProto + CDN) , там такого быть не должно. Каждый файл (фото, документ, видео) имеет уникальный набор идентификаторов. В приватных чатах, группах и обычных диалогах ссылка всегда привязана к твоей сессии (cookies + file_reference). Посторонний человек (даже если ты ему её отправишь) получит 403 Forbidden. Только если медиа из публичного канала тогда прямой CDN может открыться у кого угодно (но тоже не навсегда).

IDOR уязвимость и вечный хостинг был раньше у VK, сейчас не знаю давно не интересовался.
#13 | 21 день назад | Кому: Склеп
> О чем и речь - достаточно получить одну ссылку, чтоб получить доступ ко всем.

[censored]

Вот одна ссылка, достань остальные мои нюдсы и дикпики)))

> ты можешь простым перебором получить ВСЕ фото/картинки этого


На всего лишь 67^40 = 1*10^73 вариантов перебрать - говно вопрос!
#14 | 21 день назад | Кому: Пальтоконь
> То есть в точности как в Телеге.

В телеге в web-версии ссылка имеет вид: blob:https://web.telegram.org/93d5d8c5-480b-4c72-b3e6-850a102908eb
Открывается только в браузере где выполнен вход, я так понимаю требует авторизационный токен.
В Whatsapp так же.
Почему в макс так не сделали непонятно, но сказать что это прям дыра...
#15 | 21 день назад | Кому: Comrade9444
> Проверить не могу, нет у меня Ма(ха)кса

Проверил. С одной стороны написана правда, с другой как и всегда лучшая ложь это полуправда.
Сказать, что ваши нюдсы в общественном доступе, и забыть сказать что для этого надо знать пароль из 67 символов это как сказать что ваши деньги в онлайн банкинге в открытом доступе, если подобрать пароль.
#16 | 21 день назад | Кому: Ilya.K
Окей, поправлю себя, чтобы никто не упрекнул в неточности.

Вот две мои ссылки:

[censored]
[censored]

Первые 24 символа общие для пользователя. 43 уникальные. Кол-во вариантов для перебора 43^40 = 2*10^65
Задача сильно проще не стала.

P.S. Кстати, хорошая замена idiod'у получается)))

Вотт пропускает: [censored]
#17 | 21 день назад | Кому: baraka16
> Любопытно, что это название (IDOR) происходит от эпитета

Есть альтернативная теория, что это искажённое iDoor, появившаяся ещё в экосистеме Apple десятки лет назад.
#18 | 21 день назад | Кому: Ilya.K
> Задача сильно проще не стала

В сто миллионов раз проще!!!
#19 | 21 день назад | Кому: Ilya.K
> Кстати, хорошая замена idiod'у получается)))
>

Вотт познавательный)
#20 | 21 день назад | Кому: Ilya.K
> Первые 24 символа общие для пользователя. 43 уникальные. Кол-во вариантов для перебора 43^40 = 2*10^65
> Задача сильно проще не стала.

строка не является простым счётчиком. Это почти наверняка криптографическая подпись / HMAC / зашифрованный blob / токен
Если кто-то разошлёт много ссылок из одного чата/пользователя то можно попробовать собрать префикс + несколько суффиксов и попытаться понять паттерн (но скорее всего всё равно не угадать подпись).Что-то может получится если суффикс это последовательный counter + слабая подпись. Или если есть другая уязвимость , например, предсказуемый seed для генерации токена. Тогда да, возможен перебор. Но все это крайне маловероятно.
#21 | 21 день назад | Кому: Comrade9444
> суффикс это последовательный counter + слабая подпись

Обычно без заморочек используют UUID седьмой версии
#22 | 21 день назад | Кому: Ilya.K
>[censored]
>[censored]

> Первые 24 символа общие для пользователя. 43 уникальные. Кол-во вариантов для перебора 43^40 = 2*10^65

> Задача сильно проще не стала.

Префикс
BTE2sh_eZW7g8kugOdIm2Not

Постфикс
RPS78t1fJ0sOGDY-bLWuM


22 уникальные:
UuYlg-Iq7agsz_gp3i-_hy
-pIxtTnoDZD_hTE5kEYg0S
#23 | 21 день назад | Кому: максимум 20 символов
> Обычно без заморочек используют UUID седьмой версии

UUIDv7 не последовательный счет вроде 000001, 000002.
Он примерно монотонный по времени, но внутри значения случайны в большинстве битов. В начале каждой миллисекунды sequence сбрасывается или инициализируется случайным числом. Ты не можешь предсказать, с какого числа начнется счетчик в следующей миллисекунде. В реальной высоконагруженной системе (где много инстансов серверов) у каждого инстанса будет свой счетчик. Предсказать следующий ID системы невозможно, так как это всегда будет микс ID от разных потоков/процессов. Даже если префикс фиксирован (user/chat + timestamp), остаётся 10-12 десятичных порядков случайности. Это 10¹⁸-10²⁰ вариантов на один timestamp.
#24 | 21 день назад | Кому: Склеп
> Постфикс

Спасибо, постфикс я просмотрел.

>22 уникальные


Хорошо, 22^40 = 5×10^53 вариантов
#25 | 21 день назад | Кому: Ilya.K
> Хорошо, 22^40 = 5×10^53 вариантов

Вот, уже лучше!!!
#26 | 21 день назад | Кому: baraka16
> большинство пользователей обзывало разработчика в комментах за криворукость

Скорее не криворукость, а просто похуй. ТЗ формально выполнено - а остальное не ебёт.

Обновление приложения методом полной установки "поверх" - яркое тому подтверждение.
#27 | 21 день назад | Кому: Склеп
> Вот, уже лучше!!!

Но ты другие то мои фотки пришлешь? Я там тебе посхалку оставил!!!
#28 | 21 день назад | Кому: Ilya.K
> Я там тебе посхалку оставил!!!

Вотт теперь точно не буду смотреть!!!
#29 | 21 день назад | Кому: Ilya.K
> Проверил. С одной стороны написана правда, с другой как и всегда лучшая ложь это полуправда.

Ну это "правда" в том же смысле что любой человек может вычислить приватный ключ RSA из публичного ключа, просто быстро подобрав два простых числа из public modulus.
#30 | 19 дней назад | Кому: Склеп
> получают постоянную ссылку с прямым доступом

Это как? Скиньте хоть одну ссылку
#31 | 19 дней назад | Кому: asterroid
> Это как? Скиньте хоть одну ссылку

[censored]
#32 | 19 дней назад | Кому: Ilya.K
А онеме.ру - это домен Макса? Оригинально они придумали...
#33 | 19 дней назад | Кому: максимум 20 символов
> А онеме.ру - это домен Макса? Оригинально они придумали...

Ну хз чей это домен, но ссылки на фото ведут на него:

[censored]
#34 | 18 дней назад | Кому: Ilya.K
> Ну хз чей это домен, но ссылки на фото ведут на него:

я не смог воспроизвести уязвимость. То есть загрузил картинку в "избранное" в MAX, открыл[censored] в коде никаких oneme.ru нет
#35 | 17 дней назад | Кому: asterroid
Странно, у других получается. А что у тебя в коде? Если изображение на странице web-версии отображается, значит откуда-то оно берется. Откуда?
#36 | 17 дней назад | Кому: Ilya.K
> Странно, у других получается. А что у тебя в коде? Если изображение на странице web-версии отображается, значит откуда-то оно берется. Откуда?

Ну может с web.max.ru и берется, но oneme там нет
#37 | 17 дней назад | Кому: asterroid
> Ну может с web.max.ru и берется, но oneme там нет

А что есть? Ты не видишь какой src у html тега с картинкой? Что ты там тогда "возпроизводишь"?)))
#38 | 17 дней назад | Кому: Ilya.K
> Ты не видишь какой src у html тега с картинкой? Что ты там тогда "возпроизводишь"?)))

Я прекрасно все вижу, и домена oneme там в коде страницы нет
#39 | 17 дней назад | Кому: asterroid
> Я прекрасно все вижу, и домена oneme там в коде страницы нет

А что есть?)
#40 | 17 дней назад | Кому: Ilya.K
> А что есть?)

Мне сейчас встать с кровати, включить комп, опять зайти в web.max.ru спустя 2 дня и делать скриншоты? Да и исходный код страницы со своим мессенджером чет как-то не хочется публиковать. Зайди сам в web.max.ru и скопируй сюда исходный код страницы, уверен, там уже не будет ссылок на oneme.ru, как и у меня
#41 | 17 дней назад | Кому: asterroid
> Мне сейчас встать с кровати, включить комп, опять зайти в web.max.ru спустя 2 дня и делать скриншоты?

Ламбада пошла)

> Да и исходный код страницы со своим мессенджером чет как-то не хочется публиковать.


Чего там такого страшного? Боишься, что вычислят по ip?)

> Зайди сам в web.max.ru и скопируй сюда исходный код страницы, уверен, там уже не будет ссылок на oneme.ru, как и у меня


Легко:

<div style="width: 100%; height: 100%; display: inline-block; position: relative;">
<img loading="lazy" decoding="async" class="img image svelte-1aizpza" src="https://i.oneme.ru/i?r=BTE2sh_eZW7g8kugOdIm2NotUuYlg-Iq7agsz_gp3i-_hyRPS78t1fJ0sOGDY-bLWuM" alt="" style="width: 100%; height: 100%; background: none center center / cover; object-fit: cover;">
</div>
#42 | 15 дней назад | Кому: Ilya.K
Вот я зашел на страницу переписки, содержащую изображения, открыл исходный код. Вот весь код страницы:
<!doctype html>
<style>
#app {
max-width: 1280px;
margin: 0 auto;
}
</style>
<html lang="%lang%">
<head>
<meta charset="utf-8" />
<meta name="google" content="notranslate" />
<link rel="icon" href="/favicon.png?v=2026" />
<link rel="preconnect" href="https://fonts.googleapis.com" />
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
<link
href="https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,400..600;1,400..600&display=swap"
rel="stylesheet"
/>
<title>MAX</title>
<meta name="viewport" content="width=device-width, initial-scale=1" />
<link href="/_app/immutable/entry/start.DaCUTPj9.js" rel="modulepreload">
<link href="/_app/immutable/chunks/BXcXfiQ9.js" rel="modulepreload">
<link href="/_app/immutable/chunks/BYCzbCFc.js" rel="modulepreload">
<link href="/_app/immutable/chunks/CgyyBTrG.js" rel="modulepreload">
<link href="/_app/immutable/entry/app.DBEvtvlG.js" rel="modulepreload">
<link href="/_app/immutable/chunks/tQe6Ueys.js" rel="modulepreload">
<link href="/_app/immutable/chunks/DsnmJJEf.js" rel="modulepreload">
<link href="/_app/immutable/chunks/CAj874Lt.js" rel="modulepreload">
<link href="/_app/immutable/chunks/FpUkFsge.js" rel="modulepreload">

</head>
<body data-sveltekit-preload-data="hover">
<div id="app" style="display: contents">
<script>
{
__sveltekit_3hlan = {
base: ""
};

const element = document.currentScript.parentElement;

Promise.all([
import("/_app/immutable/entry/start.DaCUTPj9.js"),
import("/_app/immutable/entry/app.DBEvtvlG.js")
]
).then(([kit, app]) => {
kit.start(app, element);
});
}
</script>
</div>
</body>
</html>
#43 | 15 дней назад | Кому: Ilya.K
а, вотт, сейчас установил расширение allo right click и действительно нашел в коде такую же ссылку:
[censored]

Проверил, открывается в другом браузере, в котором я в MAX не авторизован.

Ок, а как теперь имея эту ссылку с этим токеном найти другие изображения пользователя? Что перебирать? Сдается мне, потребуется брутфорс не меньше чем для подбора пароля к учетке
#44 | 15 дней назад | Кому: asterroid
> Ок, а как теперь имея эту ссылку с этим токеном найти другие изображения пользователя? Что перебирать? Сдается мне, потребуется брутфорс не меньше чем для подбора пароля к учетке

Почитай весь топик сверху вниз внимательно, тут эта тема подробно разобрана) P.S. я как раз еще в 15 сообщении писал, что подобрать ключ для других изображений практически невозможно. Как разобрали потом, это как подобрать пароль из 22 символов.

> сейчас установил расширение allo right click


Пользуйся google chrome, там полноценная панель разработчика из коробки. Не надо никаких разрешений
Сtrl + Shift + I - открывает панель, потом Сtrl + Shift + С - тыкаешь в нужный элемент на странице и смотришь конкретно его код, а не всю страницу целиком. И куча еще других полезных разработчику функций.
Войдите или зарегистрируйтесь чтобы писать комментарии.