SHEET#CREEP 분석: 새로운 구성 난독화와 함께 돌아온 악성코드
Detection stack
- AIDR
- Alert
- ETL
- Query
요약
SHEETCREEP로 알려진 활성 스파이 작전은 Google Sheets API를 명령 및 제어에 사용하는 C# 원격 접근 트로이 목마에 의존합니다. 공격자는 외교 테마의 ISO 피싱 미끼를 통해 악성코드를 전달한 후, 해당 RAT는 지속성을 확보하고 프로세스 내 PowerShell 실행 공간을 통해 명령을 실행합니다. 최근 샘플은 운영자가 XOR 기반 암호화를 통해 구성 데이터를 강화한 것을 보여줍니다.
조사
Securonix 위협 연구팀은 RAT 바이너리에서 임베디드 Google Cloud 서비스 계정 자격증명을 추출하여 캠페인을 밝혀냈습니다. 라이브 명령 및 제어 스프레드시트에 인증한 후, 연구원들은 파키스탄에 위치한 고확률의 피해자 1명을 포함하여 91개의 활성 피해자 탭을 확인했습니다. 그들의 분석은 또한 악성코드의 구성 보호가 업데이트된 암호화 접근 방식을 통해 진화했음을 보여줍니다.
완화 조치
조직은 요청하지 않은 첨부 파일, 특히 LNK 바로 가기 파일을 포함하는 ISO 파일을 열지 말아야 합니다. 방어자는 %LOCALAPPDATA%MicrosoftVault 디렉토리를 의심스러운 실행 파일에 대해 모니터링하고, 오도되거나 예상치 못한 항목에 대해 예약된 작업을 검토해야 합니다. Sysmon 및 AMSI와 같은 도구를 통한 강력한 엔드포인트 가시성은 이 악성코드와 관련된 프로세스 내 PowerShell 활동 탐지에 도움을 줄 수 있습니다.
대응
비-브라우저 프로세스에서 Google API 서비스로의 비정상적 HTTPS 트래픽이 관찰되면, 영향을 받은 시스템을 즉시 격리해야 합니다. 보안 팀은 WindowsVaultSyncService와 같은 허가되지 않은 항목에 대해 예약된 작업을 검사해야 합니다. %LOCALAPPDATA%MicrosoftVault 은닉되거나 시스템 속성의 바이너리를 식별하기 위해 포렌식 검토를 수행해야 합니다.
graph TB %% 클래스 정의 섹션 classDef initial_access fill:#f96,stroke:#333,stroke-width:2px classDef execution fill:#3498db,stroke:#333,stroke-width:2px classDef persistence fill:#2ecc71,stroke:#333,stroke-width:2px classDef evasion fill:#9b59b6,stroke:#333,stroke-width:2px classDef command_control fill:#e74c3c,stroke:#333,stroke-width:2px classDef malware fill:#ecf0f1,stroke:#333,stroke-width:2px %% 초기 접근 노드 node_iso[“<b>파일</b>: UAE-India_Strategic_Partnership_Week.iso<br/><b>행위</b>: ISO 마운트<br/><b>컨텍스트</b>: 소셜 엔지니어링에 사용된 외교 테마”] class node_iso initial_access node_lnk[“<b>파일</b>: 악성 LNK 바로가기<br/><b>기술</b>: T1027.012 – 난독화된 파일 또는 정보: LNK 아이콘 스머글링<br/><b>설명</b>: 사용자를 속이기 위해 PDF 아이콘으로 위장한 LNK 파일”] class node_lnk initial_access %% 실행 및 드로퍼 노드 node_user_exec[“<b>행위</b>: T1204.002 – 사용자 실행: 악성 파일<br/><b>설명</b>: 피해자가 악성 LNK 파일과 상호작용”] class node_user_exec execution node_dropper[“<b>악성코드</b>: C# Dropper<br/><b>파일</b>: Document_11052026-03578240540350-93.exe<br/><b>기능</b>: 미끼 PDF 추출 및 RAT 페이로드 배포”] class node_dropper execution %% 지속성 및 회피 노드 node_rat[“<b>악성코드</b>: SHEETCREEP RAT<br/><b>프로세스</b>: vaultsvc.exe<br/><b>위치</b>: %LOCALAPPDATA%\\Microsoft\\Vault\\vaultsvc.exe”] class node_rat malware node_attr_evasion[“<b>행위</b>: T1027.008 – 난독화된 파일 또는 정보: 제거된 페이로드<br/><b>설명</b>: RAT 파일 속성을 숨김 및 시스템으로 설정”] class node_attr_evasion evasion node_persistence[“<b>행위</b>: T1137 – Office 애플리케이션 시작<br/><b>방법</b>: COM API를 통한 예약 작업<br/><b>작업 이름</b>: WindowsVaultSyncService”] class node_persistence persistence node_melt[“<b>행위</b>: T1070.004 – 지표 제거: 파일 삭제<br/><b>설명</b>: Melt 루틴이 드로퍼를 삭제하고 정상 PDF로 대체”] class node_melt evasion %% C2 및 고급 회피 노드 node_c2_api[“<b>기술</b>: T1102.002 – 웹 서비스: 양방향 통신<br/><b>채널</b>: Google Sheets API<br/><b>인증</b>: GCP 서비스 계정 및 RSA-2048 키”] class node_c2_api command_control node_xor_cfg[“<b>기술</b>: T1573.002 – 암호화 채널<br/><b>설명</b>: Spreadsheet ID를 위한 ‘discrete’ 키 기반 XOR 암호화 구성”] class node_xor_cfg command_control node_powershell_evasion[“<b>기술</b>: T1036.011 – 위장: 프로세스 인자 덮어쓰기<br/><b>설명</b>: EDR 회피를 위해 프로세스 내부 PowerShell runspace를 사용하여 명령 실행”] class node_powershell_evasion evasion %% 연결 흐름 node_iso –>|포함| node_lnk node_lnk –>|실행_유발| node_user_exec node_user_exec –>|실행| node_dropper node_dropper –>|배포| node_rat node_dropper –>|속성_적용| node_attr_evasion node_dropper –>|지속성_설정| node_persistence node_dropper –>|수행| node_melt node_rat –>|통신| node_c2_api node_rat –>|사용| node_xor_cfg node_rat –>|명령_실행| node_powershell_evasion
공격 흐름
탐지
지연 실행을 위한 가능한 선택 사용 (cmdline 사용)
보기
VHDMP 광디스크 이미지가 마운트되었습니다 (VHDMP 통해)
보기
의심스러운 예약된 작업 (감사를 통해)
보기
가능한 Google 명령 및 제어 유틸리티 활동 (프록시 사용)
보기
IOC (HashSha256)을 탐지하기 위해: SHEET#CREEP 분석: SHEETCREEP는 다른 구성 난독화로 다시 나타났습니다
보기
IOC (SourceIP)을 탐지하기 위해: SHEET#CREEP 분석: SHEETCREEP는 다른 구성 난독화로 다시 나타났습니다
보기
IOC (DestinationIP)을 탐지하기 위해: SHEET#CREEP 분석: SHEETCREEP는 다른 구성 난독화로 다시 나타났습니다
보기
Google Sheets API를 통한 Sheet#CREEP C2 커뮤니케이션 탐지 [파이어월]
보기
SHEET#CREEP 악성코드 뮤텍스 사용 탐지 [Windows Sysmon]
보기
SHEETCREEP 지속 및 실행 패턴 탐지 [Windows 프로세스 생성]
보기
시뮬레이션 실행
전제 조건: 원격 측정 및 기준 사전 검사 통과해야 합니다.
이유: 이 섹션은 탐지 규칙을 트리거하도록 설계된 적 기술(TTP)의 구체적인 실행을 자세히 설명합니다. 명령과 서사는 식별된 TTP를 직접 반영하고 탐지 로직에 예상되는 정확한 원격 측정을 생성하려고 해야 합니다. 추상적이거나 관련 없는 예제는 오진을 초래할 수 있습니다.
-
공격 서사 및 명령: 공격자는 SHEETCREEP 기법을 사용하여 지속성을 확보하고 원격 접근 트로이 목마(RAT)를 실행하는 것을 목표로 합니다. 먼저, 그들은
cmd.exe특정 의심스러운 실행 파일을 시작하는 명령으로 악성 LNK 파일을 통해 초기 실행을 시뮬레이트합니다. 다음으로, 시스템 업데이트와 어울리도록 변장한 설명과 함께 예약된 작업을 생성하여 지속성을 확보합니다. 마지막으로 페이로드WindowsVaultSyncServicewith a deceptive description to blend in with system updates. Finally, they deploy the payloadvaultsvc.exe를C:Users디렉토리에 배포하고 실행하여 탐지 논리의 마지막 부분을 트리거합니다.AppDataLocalMicrosoftVault -
회귀 테스트 스크립트:
# SHEETCREEP 시뮬레이션 스크립트 # 주의: 예약 작업을 생성하려면 관리 권한으로 이 스크립트를 실행해야 합니다. $targetDir = "$env:LOCALAPPDATAMicrosoftVault" $payloadName = "vaultsvc.exe" $payloadPath = "$targetDir$payloadName" $taskName = "WindowsVaultSyncService" $taskDesc = "Windows Edge Core Update Task Machine Discord Update" Write-Host "[+] SHEETCREEP 시뮬레이션 시작 중..." -ForegroundColor Cyan # 1. 선택지 1 시뮬레이션: CMD 실행 특정 문자열과 함께 Write-Host "[+] 선택지 1 시뮬레이션: CMD 명령 패턴..." -ForegroundColor Yellow Start-Process cmd.exe -ArgumentList '/c start "" "Document_11052026-03578240540350-93.exe"' -WindowStyle Hidden # 2. 선택지 2 시뮬레이션: 예약 작업 생성 Write-Host "[+] 선택지 2 시뮬레이션: 예약 작업 생성..." -ForegroundColor Yellow $action = New-ScheduledTaskAction -Execute "cmd.exe" -Argument "/c echo Persistence Established" $trigger = New-ScheduledTaskTrigger -AtLogOn Register-ScheduledTask -Action $action -Trigger $trigger -TaskName $taskName -Description $taskDesc -Force # 3. 선택지 3 시뮬레이션: 페이로드 배치 및 실행 Write-Host "[+] 선택지 3 시뮬레이션: 페이로드 배치 및 실행..." -ForegroundColor Yellow if (!(Test-Path $targetDir)) { New-Item -Path $targetDir -ItemType Directory -Force | Out-Null } # RAT을 모방한 더미 이진 파일 생성 New-Item -Path $payloadPath -ItemType File -Force | Out-Null # 더미 페이로드 실행 Start-Process -FilePath $payloadPath -WindowStyle Hidden -ErrorAction SilentlyContinue Write-Host "[+] 시뮬레이션 명령 보냈습니다. SIEM에서 알림을 확인하십시오." -ForegroundColor Green -
정리 명령:
# 시뮬레이션 정리 $targetDir = "$env:LOCALAPPDATAMicrosoftVault" $payloadPath = "$targetDirvaultsvc.exe" $taskName = "WindowsVaultSyncService" Write-Host "[+] 시뮬레이션 아티팩트 정리 중..." -ForegroundColor Cyan # 예약 작업 제거 Unregister-ScheduledTask -TaskName $taskName -Confirm:$false -ErrorAction SilentlyContinue # 페이로드 및 디렉토리 제거 if (Test-Path $payloadPath) { Remove-Item $payloadPath -Force } if (Test-Path $targetDir) { Remove-Item $targetDir -Recurse -Force } Write-Host "[+] 정리 완료." -ForegroundColor Green