Konferencja Mega Sekurak Hacking Party w Krakowie – 26-27 października!
Sprytny sposób na poznanie adresu IP użytkownika Telegrama
W komunikatorze Telegram znaleziono sposób na uzyskanie adresu IP innego użytkownika, po kliknięciu przez niego w odpowiednio spreparowany link. Choć nie pozwala to na przejęcie dostępu do konta ani urządzenia, takie działanie jest problematyczne w kontekście prywatności użytkowników.
Telegram reklamuje się jako dbający o prywatność i bezpieczny komunikator. Użycie tych słów może trochę dziwić, zwłaszcza że wiadomości domyślnie nie są szyfrowane end-to-end (choć szyfrowanie można włączyć indywidualnie dla każdej konwersacji). Faktem jest jednak, że znajdziemy w nim różne dodatkowe (i wygodne w użyciu) funkcje.
TLDR:
- Telegram umożliwia konfigurację proxy poprzez specjalne linki.
- W aplikacjach mobilnych (Android/iOS) kliknięcie takiego linku powoduje testowe połączenie z serwerem jeszcze przed zatwierdzeniem konfiguracji.
- Właściciel serwera proxy może w ten sposób poznać adres IP użytkownika, który kliknie w link. Link można dodatkowo ukryć pod niegroźnym tytułem – użytkownik nie będzie od razu widział, w co klika.
- Nie prowadzi to do przejęcia konta ani dostępu do wiadomości – jest to problem prywatności, nie klasyczna luka bezpieczeństwa.
- Telegram zapowiedział wprowadzenie dodatkowych ostrzeżeń przy klikaniu linków do konfiguracji proxy.

Jedną z takich funkcji jest proxy, umożliwiające korzystanie z Telegrama np. w sieciach (lub krajach), gdzie ruch do jego serwerów jest blokowany. Umożliwia to również ukrycie, że korzystamy właśnie z tej aplikacji. Wszystko odbywa się wewnątrz komunikatora, więc nie musimy instalować osobnego klienta np. VPN i przepuszczać całego ruchu sieciowego przez taką usługę.
A żeby było łatwo i wygodnie, Telegram pozwala skonfigurować takie proxy poprzez link. Nie trzeba przeklejać poświadczeń i adresów w ustawieniach, a wystarczy kliknąć w adres zbudowany np. tak:
- tg://proxy?server=<ADRES>&port=<PORT>&secret=<KLUCZ>
- hxxps://t[.]me/proxy?server=<ADRES>&port=<PORT>&secret=<KLUCZ>

Jeśli postawimy własny serwer do tego celu, możemy łatwo podzielić się konfiguracją ze znajomymi. Pozwala to też w kilku kliknięciach skonfigurować takie rozwiązanie u osób nietechnicznych. Jest jednak jeden haczyk. Kliknięcie w taki link oczywiście wyświetla podgląd konfiguracji, którą musimy dodatkowo zatwierdzić przed jej aktywacją. Nie ma więc raczej mowy o przypadkowym uruchomieniu proxy (no chyba, że nie czytamy komunikatów, które akceptujemy ;-).

Jednak jeśli korzystamy z aplikacji mobilnej Telegrama (Android/iOS), od razu po kliknięciu w taki link nasze urządzenie łączy się z wskazanym serwerem, aby sprawdzić czy jest on dostępny. Status tego sprawdzenia wyświetla się w podglądzie. Oznacza to, że właściciel serwera może poznać adres IP każdego użytkownika, który kliknie w link do proxy na swoim smartfonie. Zachowanie to zauważył i postanowił wykorzystać badacz 0x6rss.
Przykładowy PoC takiego ataku został opublikowany na GitHubie. Przetestowaliśmy go na Androidowej wersji (v12.3.1) Telegrama i faktycznie – połączenie z serwerem jest nawiązywane przed zatwierdzeniem konfiguracji:

Pokazana implementacja nie pozwoliła uzyskać prawdziwego adresu IP, ponieważ serwer był uruchomiony lokalnie, a ruch tunelowany przez usługę Cloudflare Tunnel. Przy bezpośrednim połączeniu do serwera (np. VPS) źródłem byłby faktyczny adres IP użytkownika.
No dobrze, ale kto kliknąłby w taki dziwny link? Rzecz w tym, że wcale nie musi być dziwny. Telegram – jak już wspomnieliśmy – ma wiele dodatkowych funkcji. Oprócz formatowania samego tekstu, pozwala też tworzyć linki z ustawionym przez użytkownika tytułem – i to tytuł wyświetla się w aplikacji.
Można więc dowolny link opisać @wzmianką, tak by wyglądał on jak oznaczenie innego użytkownika. Standardowo powoduje ono podgląd profilu (w ramach aplikacji Telegram), więc wiele osób może bez obaw w niego kliknąć. Twórcy wiedzą, jakie ryzyka to niesie, więc przed otwarciem zewnętrznego adresu pokazują komunikat z prośbą o potwierdzenie:

Rzecz w tym, że linki do proxy są obsługiwane inaczej niż “zwykłe” adresy, więc taki komunikat w ogóle nie zostaje pokazany. Od razu pojawia się okno konfiguracji proxy (rys. 3) i następuje testowe połączenie ze zdalnym serwerem.
Użytkownik może więc kliknąć w niewinnie wyglądający link, a atakujący od razu pozna jego adres IP. Nie jest to stricte zagrożenie dla bezpieczeństwa konta (tzn. sam adres IP nie umożliwia dostępu do wiadomości, kontaktów itp.), ale “bezpieczny” i “prywatny” komunikator nie powinien w naszej ocenie umożliwiać takiego dostępu.
Telegram publicznie odniósł się do problemu na X:

Pierwszą część odpowiedzi – zważywszy na fakt, że Telegram promuje się jako “prywatny” i “bezpieczny” komunikator – zdaje się lekceważyć problem. Owszem, każda odwiedzona strona może gromadzić adresy IP swoich użytkowników, ale użytkownik może nie spodziewać się takiego działania po (spreparowanym) wewnętrznym linku w komunikatorze, który zawsze ostrzegał przed wejściem na zewnętrzną stronę. W dalszej części zapowiedziano jednak wprowadzenie dodatkowych ostrzeżeń przy klikaniu adresów do konfiguracji proxy, co powinno zapobiec skutkom wykorzystania takich linków przez potencjalnych atakujących.
Choć problem ten nie wymaga natychmiastowej reakcji, polecamy rozważyć kilka kroków, które podniosą bezpieczeństwo i prywatność naszej komunikacji (niekoniecznie pod kątem tego konkretnie mechanizmu i nie tylko na Telegramie):
- stosowanie dwuetapowego uwierzytelniania / PIN-u zabezpieczającego (nazwy tej opcji różnią się w poszczególnych komunikatorach) – aby do aktywacji konta nie wystarczył sam kod z SMS,
- ukrywanie numeru telefonu i innych informacji profilowych dla osób spoza kontaktów,
- wyłączenie możliwości dodawania do grup przez osoby spoza kontaktów,
- używanie szyfrowanego komunikatora, np. Signal (pełne szyfrowanie end-to-end), ew. WhatsApp (również szyfrowany, ale zbiera dużo metadanych) – to ogólna porada, bo pokazany mechanizm nie ma wpływu na same wiadomości.
Jeżeli chcesz zostać ekspertem śledztw OSINT – zapraszamy Cię na serię szkoleń Narzędziownik OSINT, startujemy już 25 lutego 2026
Zapisy tutaj: https://osint.sekurak.pl
Źródła:
~Tymoteusz Jóźwiak
