SOC Prime Bias: 높음

15 Jun 2026 05:49 UTC

[작전 보고서] SSA 피싱에서 AdaptixC2까지: 다중 RAT 침해

Author Photo
SOC Prime Team linkedin icon 팔로우
[작전 보고서] SSA 피싱에서 AdaptixC2까지: 다중 RAT 침해
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

요약

위협 행위자가 미국 사회보장국을 주제로 한 피싱 이메일로 시작하여 계층화된 상품 침입을 수행했습니다. 이 작전은 주된 명령 및 제어 프레임워크로 AdaptixC2에 의존하였고, XWorm을 보조 액세스 채널 및 Telegram 기반 탈취용으로 사용했으며, ScreenConnect를 배포하여 직접 액티비티를 지원했습니다. 이 캠페인은 RTLO 파일명 속임수와 부분적인 복구에도 생존하기 위한 여러 지속 경로를 사용하여 강력한 운영 훈련도 보여주었습니다.

조사

조사는 deception.pro 환경의 기만 워크스테이션에서 이루어졌습니다. TLS 검사 기능이 활성화되어 있었기 때문에, 연구원들은 평문의 비콘 트래픽, 페이로드 다운로드 URL 및 ScreenConnect 릴레이 핸드셰이크를 복구할 수 있었습니다. 이러한 가시성 덕분에 행위는 행동이나 지문 기반 가정에만 의존하지 않고 특정 프레임워크로 침입을 고신뢰로 귀속시킬 수 있었습니다.

완화

조직은 암호화 명령 및 제어 트래픽에 대한 TLS 검사를 활성화하고, EDR을 배포하여 탐지할 수 있도록 하여 위험을 줄여야 합니다. certutil– 기반 스테이징과 의심스러운 PowerShell 실행을 탐지 가능하게 하고, RTLO 기반 파일명 속임수를 약화시키기 위해 파일 확장자 가시성을 강제해야 합니다. 공공 또는 사용자 쓰기 가능 위치에 대한 레지스트리 실행 키 쓰기도 면밀히 모니터링해야 합니다. 팀은 또한 ScreenConnect와 같은 원격 관리 도구의 무단 사용을 인벤토리하고 경고해야 하며, 특히 msiexec.

응답

이 활동이 탐지되면 SAMR 또는 LSAD 열거를 통한 추가 횡적 이동을 방지하고 명령 및 제어 트래픽을 차단하기 위해 영향을 받은 엔드포인트를 즉시 격리시키십시오. 공용 폴더 및 기타 공통 스테이징 경로에서 XWorm DLL 및 AdaptixC2 아티팩트를 위한 포렌식 스윕을 완전히 수행하십시오. 조사관은 또한 Telegram 관련 탈취 패턴을 검토하고 합법적인 업데이터 이름을 모방하는 레지스트리 지속성 키를 감사해야 합니다.

graph TB %% 클래스 정의 섹션 classDef action fill:#99ccff classDef tool fill:#cccccc classDef malware fill:#ff9999 classDef discovery fill:#ccffcc %% 노드 정의 %% 초기 접근 및 실행 action_phishing[“<b>행위</b> – <b>T1566.002 피싱: 스피어피싱 링크</b><br/>피해자는 SSA를 사칭한 위조 이메일을 수신하며,<br/>RAR 아카이브로 연결되는 링크가 포함되어 있다.”] class action_phishing action action_masquerade[“<b>행위</b> – <b>T1036.008 가장: 파일 형식 위장</b><br/>공격자는 RTLO 기법을 사용하여 PE32 실행 파일을<br/>PDF 파일(.fdp.exe)로 위장한다.”] class action_masquerade action action_user_exec[“<b>행위</b> – <b>T1204.002 사용자 실행: 악성 파일</b><br/>사용자가 위장된<br/>악성 파일과 상호작용한다.”] class action_user_exec action %% 도구 전송 및 지속성 확보 tool_certutil[“<b>도구</b> – <b>이름: certutil.exe</b><br/><b>설명:</b> AdaptixC2 페이로드를 다운로드하는 데 사용되는<br/>Windows 기본 유틸리티.”] class tool_certutil tool action_ingress[“<b>행위</b> – <b>T1105 도구 반입 전송</b><br/>페이로드가<br/>cloudpre-005[.]online에서 다운로드된다.”] class action_ingress action action_persistence[“<b>행위</b> – <b>T1547.001 부팅 또는 로그온 자동 시작 실행:<br/>레지스트리 Run 키 / 시작 프로그램 폴더</b><br/>C:\Users\Public\에 PayloadService,<br/>JavaUpdater 및 Updater와 같은 레지스트리 키를 생성한다.”] class action_persistence action %% C2 및 원격 접근 malware_adaptix[“<b>악성코드</b> – <b>이름: AdaptixC2</b><br/><b>설명:</b> 명령 및 제어(C2) 작업에 사용되는<br/>비콘 에이전트.”] class malware_adaptix malware action_c2_web[“<b>행위</b> – <b>T1071.001 애플리케이션 계층 프로토콜:<br/>웹 프로토콜</b><br/>AdaptixC2는 특정 웹 URL과<br/>비콘 통신을 수행한다.”] class action_c2_web action tool_screenconnect[“<b>도구</b> – <b>이름: ScreenConnect</b><br/><b>설명:</b> 대화형 제어를 위해 배포된<br/>원격 접근 도구.”] class tool_screenconnect tool action_remote_access[“<b>행위</b> – <b>T1219 원격 접근 도구</b><br/>대화형 접근을 유지하기 위해<br/>두 개의 독립적인 클라이언트를 배포한다.”] class action_remote_access action %% 정보 유출 및 탐색 malware_xworm[“<b>악성코드</b> – <b>이름: XWorm</b><br/><b>설명:</b> Telegram을 통해 탈취된 데이터를<br/>전달하는 데 사용되는 악성코드.”] class malware_xworm malware action_exfil[“<b>행위</b> – <b>T1567 웹 서비스를 통한 정보 유출</b><br/>데이터는<br/>Telegram Bot API를 사용하여 유출된다.”] class action_exfil action action_discovery[“<b>행위</b> – <b>T1069.002 권한 그룹 탐색:<br/>도메인 그룹</b><br/>SAMR 및 LSAD RPC를 통해<br/>도메인 환경을 열거한다.”] class action_discovery discovery %% 연결 action_phishing –>|이어짐| action_masquerade action_masquerade –>|이어짐| action_user_exec action_user_exec –>|트리거함| tool_certutil tool_certutil –>|실행함| action_ingress action_ingress –>|설치함| malware_adaptix malware_adaptix –>|구축함| action_persistence malware_adaptix –>|사용함| action_c2_web action_remote_access –>|활용함| tool_screenconnect malware_adaptix –>|배포함| action_remote_access malware_adaptix –>|운용함| malware_xworm malware_xworm –>|수행함| action_exfil malware_adaptix –>|수행함| action_discovery

공격 흐름

탐지

가능한 지속성 지점 [ASEPs – Software/NTUSER Hive] (registry_event 통해)

SOC 프라임 팀
2026년 6월 12일

데이터 인코딩 및 인증서 작업을 위한 Certutil 사용 (cmdline 통해)

SOC 프라임 팀
2026년 6월 12일

공용 사용자 프로필에서의 의심스러운 실행 (process_creation 통해)

SOC 프라임 팀
2026년 6월 12일

대체 원격 액세스/관리 소프트웨어 (process_creation 통해)

SOC 프라임 팀
2026년 6월 12일

Powershell을 사용하여 의심스러운 디렉토리에 압축 파일이 추출되었습니다 (powershell 통해)

SOC 프라임 팀
2026년 6월 12일

공용 사용자 프로필의 의심스러운 파일 (file_event 통해)

SOC 프라임 팀
2026년 6월 12일

IP 조회 도메인 통신이 시도되었습니다 (dns 통해)

SOC 프라임 팀
2026년 6월 12일

동적 DNS 서비스에 접속 시도가 있었습니다 (dns 통해)

SOC 프라임 팀
2026년 6월 12일

탐지할 IOCs (HashSha256): [Op Report] SSA 피싱에서 AdaptixC2로: 다중 RAT 침입

SOC 프라임 AI 규칙
2026년 6월 12일

탐지할 IOCs (HashMd5): [Op Report] SSA 피싱에서 AdaptixC2로: 다중 RAT 침입

SOC 프라임 AI 규칙
2026년 6월 12일

탐지할 IOCs (SourceIP): [Op Report] SSA 피싱에서 AdaptixC2로: 다중 RAT 침입

SOC 프라임 AI 규칙
2026년 6월 12일

탐지할 IOCs (DestinationIP): [Op Report] SSA 피싱에서 AdaptixC2로: 다중 RAT 침입

SOC 프라임 AI 규칙
2026년 6월 12일

AdaptixC2 명령 및 제어 통신 탐지 [Windows 네트워크 연결]

SOC 프라임 AI 규칙
2026년 6월 12일

Certutil 및 Msiexec를 통한 AdaptixC2 및 ScreenConnect 배포 탐지 [Windows 프로세스 생성]

SOC 프라임 AI 규칙
2026년 6월 12일

시뮬레이션 실행

필수 조건: 텔레메트리 및 기준 사전 점검을 통과해야 합니다.

이유: 이 섹션은 탐지 규칙을 트리거하기 위해 설계된 적군 기법(TTP)의 정밀한 실행을 상세히 설명합니다. 명령 및 설명은 반드시 식별된 TTP를 직접 반영하고 탐지 논리에 의해 예상되는 정확한 텔레메트리를 생성하는 것을 목표로 해야 합니다.

  • 공격 서사 및 명령: 적군은 스피어 피싱 링크를 통해 대상 기기에 발판을 성공적으로 세웠습니다. 통제 유지를 위해 AdaptixC2 에이전트는 명령 및 제어 서버와 “체크인”을 시도합니다. 에이전트는 하드코딩된 URI98.81.111.167/updates/check.php“) 또는 대체 IP23.20.229.225“) 포트 443을 통해 접근하도록 프로그램되어 있습니다. 이러한 정확한 연결 시도를 시뮬레이션함으로써 방화벽/네트워크 탐지 규칙이 이 알려진 악의적 패턴을 정확히 식별하는지 확인합니다.

  • 회귀 테스트 스크립트: 이 스크립트는 PowerShell을 사용하여 특정 URL을 대상으로 한 연결 시도와 특정 IP 주소를 대상으로 한 두 가지 서로 다른 연결 시도를 시뮬레이션합니다.

    # AdaptixC2 C2 통신 시뮬레이션
    Write-Host "[+] AdaptixC2 시뮬레이션 시작..." -ForegroundColor Cyan
    
    # 시나리오 1: 특정 악성 URL 패턴으로 연결
    Write-Host "[+] 악성 URL로 연결 시도: 98.81.111.167/updates/check.php" -ForegroundColor Yellow
    try {
        # IP가 해결되지 않거나 응답하지 않을 가능성이 크므로 -ErrorAction SilentlyContinue 사용,
        # 그러나 자체 연결 시도가 텔레메트리를 생성합니다.
        Invoke-WebRequest -Uri "http://98.81.111.167/updates/check.php" -Method Get -ErrorAction SilentlyContinue
    } catch {
        Write-Host "[!] 연결 실패 (예상됨), 하지만 텔레메트리가 생성되어야 합니다." -ForegroundColor Gray
    }
    
    # 시나리오 2: 포트 443의 특정 악성 IP로 연결
    Write-Host "[+] 포트 443에서 특정 악성 IP로 연결 시도: 23.20.229.225" -ForegroundColor Yellow
    try {
        $tcpClient = New-Object System.Net.Sockets.TcpClient
        $connection = $tcpClient.BeginConnect("23.20.229.225", 443, $null, $null)
        $success = $connection.AsyncWaitHandle.WaitOne(5000, $false)
        if ($success) {
            Write-Host "[+] 연결 성공적 (실제 테스트에서 희박)." -ForegroundColor Green
        } else {
            Write-Host "[!] 연결 시간 초과 (예상됨), 그러나 텔레메트리가 생성되어야 합니다." -ForegroundColor Gray
        }
        $tcpClient.Close()
    } catch {
        Write-Host "[!] TCP 연결 시도 동안 오류 발생." -ForegroundColor Red
    }
    
    Write-Host "[+] 시뮬레이션 완료." -ForegroundColor Cyan
  • 정리 명령어:

    # 이 시뮬레이션은 네트워크 트래픽만 생성하여 지속적 아티팩트를 만들지 않습니다.
    Write-Host "[+] 정리 불필요. 네트워크 연결은 일시적이었습니다." -ForegroundColor Green