Надеюсь это было самое стабильное обновление p2pwn ибо хочу переключится на другие проекты и дать бедным работникам Dahua сделать защиту от школьников
❤1
Telegram радует нас разработками олимпиадников
Представляю вам новую разработку: lottie-инатор
Крашит rlottie (C++) движок
Telegram Desktop, ExteraGram (и подобные)
Integer Overflow > OOM Abort
Эксплуатирует формат
(максимально представимый порядок для 32-битного float)
Преобразование такого float в 32-битный int приводит либо к значению INT_MIN / INT_MAX (
При попытке умножить количество точек движком, происходит переполнение
При выделении памяти запрашивается буфер размером ~2 млрд *
Оператор выбрасывает исключение
Крашит tlottie (Rust) движок
Telegram Android, Telegram iOS, Telegram Desktop 7.2.7+ и новые клиенты
Кривая Безье > Взрыв алгоритма Dasher в Rust > OOM Abort / 100% CPU Freeze
Эксплуатирует вырожденную кривую Безье с нулевой хордой
Ставит начальную и конечную точки сегмента в одни координаты
Из-за этого валидатор Telegram и парсер tlottie слепнут (видят длину 0 и габариты в одну точку)
Рендер пытается нарезать реальную петлю длиной 294 000 px штрихом 0.005, порождая 1.3 миллиарда кусочков и вызывая OOM/фриз и вылет клиента
В видео показаны примеры работы крашей на Android, Extera и Desktop Windows (обрезано)
На Desktop клиенте достаточно отправить ссылку на стикерпак - клиент упадет от рендера обложки
Web-версию вешать не должно, там используется другой lottie движок
Так же я приложил архив с самими .tgs для изучения
Представляю вам новую разработку: lottie-инатор
⭐️ polystar.tgs:
Крашит rlottie (C++) движок
Telegram Desktop, ExteraGram (и подобные)
Integer Overflow > OOM Abort
Эксплуатирует формат
"ty": "sr" polystar устанавливая количество "pt" (вершин) на 1e+38(максимально представимый порядок для 32-битного float)
Преобразование такого float в 32-битный int приводит либо к значению INT_MIN / INT_MAX (
0x7FFFFFFF), либо к отрицательному числуПри попытке умножить количество точек движком, происходит переполнение
При выделении памяти запрашивается буфер размером ~2 млрд *
sizeof(VPoint) = 32-64 гбОператор выбрасывает исключение
std::bad_alloc. Поскольку парсер в native C++ не перехватывает его локально, вызывается std::terminate() и процесс Telegram мгновенно аварийно завершается📦 bbox.tgs:
Крашит tlottie (Rust) движок
Telegram Android, Telegram iOS, Telegram Desktop 7.2.7+ и новые клиенты
Кривая Безье > Взрыв алгоритма Dasher в Rust > OOM Abort / 100% CPU Freeze
Эксплуатирует вырожденную кривую Безье с нулевой хордой
Ставит начальную и конечную точки сегмента в одни координаты
[256, 256], а тангенсы вытягивает на 140000Из-за этого валидатор Telegram и парсер tlottie слепнут (видят длину 0 и габариты в одну точку)
Рендер пытается нарезать реальную петлю длиной 294 000 px штрихом 0.005, порождая 1.3 миллиарда кусочков и вызывая OOM/фриз и вылет клиента
Детали:
В видео показаны примеры работы крашей на Android, Extera и Desktop Windows (обрезано)
На Desktop клиенте достаточно отправить ссылку на стикерпак - клиент упадет от рендера обложки
Web-версию вешать не должно, там используется другой lottie движок
Так же я приложил архив с самими .tgs для изучения
😁4
Всем ExteraGram/AyuGram юзерам рекомендуется к прочтению:
https://saberpedia.no/ExteraGram
https://saberpedia.no/ExteraGram
saberpedia.no
ExteraGram — Сейберпедия
👀1
Но появилась другая проблема...
Теперь можно создать унифицированный .tgs для всех платформ🤓
Теперь можно создать унифицированный .tgs для всех платформ🤓
> 2 147 483 647
bbox.tgs:
Заставляет Desktop сначала жрать всю доступную ОЗУ а затем вылетать
Обновил паки (изменил порядок, заменил обложки)
Стало еще хуже, краш не мгновенный а долгий и мучительный. Достаточно увидеть стикер один раз и он начнет преследовать тебя до самого краша. На мобильной версии раскаляет аппарат и ест всю доступную ОЗУ. На десктопе сьедает всю ОЗУ до степени краша самого клиента и зависания других процессов
P.S. Пока я пытался обновить пак с компьютера он довел его до черного экрана. Пришлось делать форс ребут😭
Стало еще хуже, краш не мгновенный а долгий и мучительный. Достаточно увидеть стикер один раз и он начнет преследовать тебя до самого краша. На мобильной версии раскаляет аппарат и ест всю доступную ОЗУ. На десктопе сьедает всю ОЗУ до степени краша самого клиента и зависания других процессов
> 2 147 483 647
Telegram радует нас разработками олимпиадников Представляю вам новую разработку: lottie-инатор ⭐️ polystar.tgs: Крашит rlottie (C++) движок Telegram Desktop, ExteraGram (и подобные) Integer Overflow > OOM Abort Эксплуатирует формат "ty": "sr" polystar устанавливая…
This media is not supported in your browser
VIEW IN TELEGRAM
Краш-тест iOS прошел успешно
> 2 147 483 647
Напоминаю, "Аполитические взгляды" Спасибо гошаzłotу за видеофиксацию
Еще одно опровержение так называемой "аполитичности" разработчиков
🔥1
> 2 147 483 647
Всем ExteraGram/AyuGram юзерам рекомендуется к прочтению: https://saberpedia.no/ExteraGram
Авторитетное мнение ИИ агентов:
> 2 147 483 647
Telegram радует нас разработками олимпиадников Представляю вам новую разработку: lottie-инатор ⭐️ polystar.tgs: Крашит rlottie (C++) движок Telegram Desktop, ExteraGram (и подобные) Integer Overflow > OOM Abort Эксплуатирует формат "ty": "sr" polystar устанавливая…
В ближайшее время стоит ожидать фиксы на всех клиентах, автор движка tlottie уже добавил коммиты с проверками
❤1😭1
> 2 147 483 647
https://github.com/thebadinteger/exteraGram #stopextera
Позже доведу код до 100% работоспособности
❤1👀1