Загрузка...

How the Telegram vulnerability worked

Thread in Web vulnerabilities created by Genxus Jun 7, 2024. (bumped Jun 8, 2024) 1057 views

  1. Genxus
    Genxus Topic starter Jun 7, 2024 https://lolz.live/threads/8945240/ <- поиск поставщика симок 1257 Feb 11, 2024
    Я думаю, многие из вас видели посты на разных телеграм каналах про вирус в картинке который автоматически запускал любые программы если просто открыть чат с пользователем, который использовал эту уязвимость.

    Сразу скажу, что эту уязвимость уже пофиксили. Но интересным будет провести анализ этой уязвимости.

    Чем была вызвана уязвимость

    Уязвимость вызвана опечаткой в списке расширений исполняемых файлов, захардкоженном в коде Telegram Desktop. Так, вместо pyzw (файл типа Python Zip Application) в строке с запрещенными расширениями было pywz. Эта ошибка была исправлена в этом PR: https://github.com/telegramdesktop/tdesktop/pull/27737

    [IMG]

    Однако почему Python-файл со специфическим расширением был воспринят Telegram как картинка (если точнее, как GIF-анимация), из-за чего автоматически загружался и исполнялся?
    Дело в том, что Telegram, скорее всего, проверяет тип файла с помощью его Mime-type. Mime-type этого файла - image/gif:

    [IMG]

    Это происходит из-за magic number файла - GIF89A.
    Переходим к самому интересному - к тому, как же выглядел этот файл.

    [IMG]

    При загрузке этого файла через файл-пикер Telegram Desktop он определяется как картинка.

    [IMG]

    А вот так выглядит после отправки.

    [IMG]

    Отдельно хочется сказать пару слов про источник BleepingComputer.
    В нем указывается, что "хакеры использовали бота, чтобы изменить mime-type файла под видео" (в оригинале To masquerade the file, researchers devised using a Telegram bot to send the file with a mime type of 'video/mp4,' causing Telegram to display the file as a shared video). Это, конечно, неправда.
    Mime-type файла определяется по специальному паттерну в самом файле или в крайнем случае по его расширению. Никакой Telegram-бот не может изменить mime-type файла, не внося изменения в сам файл. Также в этом источнике сказано, что проблема возникала с видео (video/mp4). Возможно, данный эксплойт можно было также замаскировать под видео, но оригинальное воспроизведение уязвимости было именно с GIF-файлом. Причем из-за того, что так называемый GIF-файл на самом деле им не являлся (был невалидным), Telegram отображал его как черный прямоугольник, что хорошо видно на видео выше, которое было широко распространено в СМИ. Из-за этого утверждение BleepingComputer про то, что хакеры якобы могли сделать файл со встроенной миниатюрой тоже довольно сомнительно.
     
  2. 924527
    задавайте вопросы
     
    1. Genxus Topic starter
      culse, ряльна мямуямумяу?
    2. culse
    3. Genxus Topic starter
      culse, ахуеть, ммямяумяумяум <3333 <333
  3. Bredman
    Bredman Jun 7, 2024 2070 Oct 9, 2020
    можешь в конце сокращённую версию в спойлере добавить просто лень читать
     
    1. ЛолиХентай
      Bredman, там типо расширение файла попутали и оно так начало работать
    2. Bredman
  4. ГЛАВАРЬ
    гав
     
  5. Erna
    Erna Jun 7, 2024 :love2: TRX&ENERGY(FROM 100₽/66.000) - lzt.lol/trx :love2: 108,536 May 10, 2019
    Спасибо за пасту+баян
     
Loading...
Top