Telegram Desktop 링크 한 번 클릭으로 사용자 파일이 유출되고 계정까지 탈취될 수 있던 취약점
- CVE-2026-107181로 등록된 Telegram Desktop 7.2.8 이하 취약점은 클릭 한 번으로 임의 로컬 파일 읽기와 계정 탈취가 가능하며 CVSS 8.1 등급이고 7.2.9에서 수정됨
- 원인은 실행 중인 인스턴스와 로컬 소켓으로 주고받는 명령 형식에서 세미콜론을 이스케이프하지 않아, 링크 안의 세미콜론이 별도 명령으로 쪼개지는 IPC 주입임
- 주입된 OPEN 명령은 URL 스킴을 검사하지 않아서 Telegram 내부 전용 interpret: 스킴을 호출할 수 있고, 그 스킴으로 지정한 파일을 공격자 채팅방에 보낼 수 있음
- interpret: 스킴은 Telegram이 릴리스 빌드 아카이브를 채널에 올리려고 만든 내부 도구로, 파일 전송 시 사용자 확인을 받지 않음
Hacker News opinions
이 링크 이미 HN에 올라왔는데 제목이 계정 탈취만 강조하고 파일 유출은 빠져 있어서 다시 올린 거 같음. 내부 URI 스킴을 릴리스 배포용으로 만들어 놓은 게 진짜 어이없음.
그냥 스크립트로 채널에 올리면 되는 걸 굳이 임의 파일 업로드 기능을 내부에 넣은 거 보면 설계 자체가 문제임.
텔레그램 보안 이슈는 10년 전부터 말 많았음. 이번 건은 그중에서도 파일 유출이라 꽤 심각한 편임.
이건 텔레그램만 문제라기보다 데스크톱 OS 전체가 사용자 프로세스에 파일 접근을 너무 열어준 탓이라고 봄.
OpenBSD는 unveil으로 이미 그거 막고 있음. 그리고 맥 앱스토어 버전은 샌드박스라 같은 방식으로는 안 뚫린다고 들었음.
OS 탓으로 넘기기는 어렵지. 텔레그램이 취약하게 만든 게 핵심이고, OS는 샌드박스 옵션을 앱이 쓰게 해주는 역할만 하는 거임.
전화번호 기반 서비스는 원래 번호 주인이 바뀌면 계정 접근 문제가 생길 수 있음. 2FA 안 걸면 계정 삭제까지 가능하다는 것도 황당함.
로그인하면 기존 세션에 알림 뜨고 로그아웃 시킬 수 있음. 새 로그인은 일정 시간 기능이 막혀서 계정 삭제는 못 함. 그래도 채팅 내용은 다 보일 수 있으니 비밀번호 설정은 필수임.
나는 리눅스에서 Firefox를 firejail로 돌려서 다운로드 폴더만 접근하게 해둠. 파일은 오래 안 둬서 피해는 적을 듯함.
Firefox도 single instance 기능을 끌 방법이 없어서 같은 류 공격 가능성이 있다고 들었음. --noremote 옵션도 점점 없애는 중이라더라.