SOC Prime Bias: Critical

10 Jun 2026 20:31 UTC

PoisonX 드라이버 기반 공격 캠페인이 일본 조직을 겨냥하다

Author Photo
SOC Prime Team linkedin icon 팔로우
PoisonX 드라이버 기반 공격 캠페인이 일본 조직을 겨냥하다
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

요약

2026년 4월에 관찰된 캠페인은 Google Cloud Storage에 호스팅된 악성 LNK 파일 또는 실행 가능 다운로드 파일이 포함된 스피어 피싱 이메일을 사용했습니다. 배달된 페이로드는 PoisonX라는 커널 드라이버와 10FXRAT이라는 모듈식 RAT를 설치했으며, 이로 인해 공격자는 커널 수준의 권한을 획득하고 보안 도구를 비활성화하며 악성 활동을 숨길 수 있었습니다. 이후 변종은 또한 EneIo64.sys and procexp.sys와 같은 정식 서명된 드라이버를 통한 BYOVD 전술을 채택했습니다. 이 활동은 일본과 중국의 조직을 대상으로 하는 것으로 관찰되었습니다.

조사

이 보고서는 LNK 기반 다운로더가 curl.exe를 호출하는 것으로 시작하여 PoisonX 드라이버와 10FXRAT 모듈을 배포하는 PXDropper 구성 요소로 진행되는 전체 실행 체인을 설명합니다. 또한 보안 관련 프로세스를 종료하고 네트워크 트래픽을 숨기기 위해 사용된 드라이버 기반 IOCTL 루틴을 설명합니다. 연구원들은 분석 방지 검사, 레지스트리 수정, 서비스 생성 및 지속성 방법을 문서화하고 운영과 관련된 하드코딩된 명령 및 제어 IP 주소를 나열했습니다.

완화 방안

방어자는 서명되지 않았거나 의심스럽게 서명된 드라이버 설치 활동 및 무작위 HID 스타일 파일명을 가진 서비스 생성 등을 감시해야 합니다. 탐지에는 또한 Microsoft Defender 제외 항목을 추가하거나 Defender 서비스를 비활성화하는 레지스트리 변경도 포함해야 합니다. 식별된 명령 및 제어 IP 범위로의 아웃바운드 트래픽을 차단해야 하며, 네트워크 모니터링은 TCP 페이로드에서 0x58463031 매직 값을 검색해야 합니다.

응답

이 활동이 감지되면 영향을 받은 엔드포인트를 즉시 격리하고 가능하다면 PoisonX 드라이버를 언로드하며 모든 10FXRAT 프로세스를 종료해야 합니다. 변경된 레지스트리 설정을 복원하고 Microsoft Defender 보호를 다시 활성화하며 수정된 파일을 신뢰할 수 있는 출처에서 가져온 깨끗한 버전으로 교체해야 합니다. 그런 다음 식별된 지속성 메커니즘을 확인하고 알려진 명령 및 제어 서버로의 트래픽을 검토하기 위한 전체 포렌식 조사가 수행되어야 합니다.

"graph TB %% 클래스 정의 classDef action fill:#ffcc99 classDef tool fill:#99ff99 classDef malware fill:#ff9966 classDef process fill:#ccccff %% 노드 email["<b>도구</b> – <b>이름</b>: 피싱 이메일<br/><b>설명</b>: 악성 Google Cloud Storage 링크가 포함된 대상 이메일"] class email tool initial_access_phishing["<b>액션</b> – <b>T1566.002 스피어 피싱 링크</b><br/>공격자는 악성 LNK 또는 EXE 파일로 연결되는 링크가 포함된 이메일을 보냅니다"] class initial_access_phishing action lNK_file["<b>도구</b> – <b>이름</b>: 악성 LNK 바로가기<br/><b>설명</b>: 드로퍼를 가져오기 위해 curl.exe를 실행하는 바로가기"] class lNK_file tool curl_download["<b>프로세스</b> – <b>이름</b>: curl.exe<br/><b>액션</b>: 원격 서버에서 PXDropper 페이로드를 다운로드합니다"] class curl_download process pxdropper["<b>악성코드</b> – <b>이름</b>: PXDropper<br/><b>설명</b>: 지속성을 설정하고 권한 승격을 준비하는 드로퍼"] class pxdropper malware persistence_service["<b>액션</b> – <b>T1547.009 바로가기 수정</b><br/>자동 시작을 달성하기 위해 바로가기를 생성하거나 수정합니다"] class persistence_service action registry_run["<b>액션</b> – <b>T1547.001 레지스트리 실행 키/시작 폴더</b><br/>자동 실행을 위한 레지스트리 항목을 추가합니다"] class registry_run action service_creation["<b>액션</b> – <b>T1543.003 시스템 프로세스 생성 또는 수정: Windows 서비스</b><br/>시작 시 드로퍼를 실행하기 위한 Windows 서비스를 설치합니다"] class service_creation action priv_esc_exploit["<b>액션</b> – <b>T1068 권한 승격을 위한 취약점 악용</b><br/>서명된 드라이버를 로드하기 위해 취약점을 악용합니다"] class priv_esc_exploit action driver_install["<b>악성코드</b> – <b>이름</b>: PoisonX 드라이버<br/><b>설명</b>: 서비스로 로드되는 서명된 커널 드라이버 (BYOVD)"] class driver_install malware kernel_privilege["<b>액션</b> – <b>T1547.006 부팅 또는 로그인 자동 시작 실행</b><br/>커널 드라이버는 SYSTEM 수준의 권한을 부여합니다"] class kernel_privilege action defense_evasion["<b>액션</b> – <b>T1497.001 가상화/샌드박스 회피</b><br/>분석 환경을 위한 검사를 수행합니다"] class defense_evasion action rootkit["<b>액션</b> – <b>T1014 루트킷</b><br/>프로세스와 네트워크 트래픽을 숨기기 위해 커널 API를 후크합니다"] class rootkit action discovery_process["<b>액션</b> – <b>T1057 프로세스 검색</b><br/>호스트에서 실행 중인 프로세스를 열거합니다"] class discovery_process action discovery_security["<b>액션</b> – <b>T1518.001 보안 소프트웨어 검색</b><br/>설치된 보안 제품을 탐지합니다"] class discovery_security action defense_impair["<b>액션</b> – <b>방어 방해</b><br/>드라이버 IOCTL 명령을 사용하여 보안 제품의 프로세스를 종료합니다"] class defense_impair action c2_ratat["<b>악성코드</b> – <b>이름</b>: 10FXRAT<br/><b>설명</b>: 내부 SOCKS5 프록시를 생성하는 원격 액세스 도구"] class c2_ratat malware c2_communication["<b>액션</b> – <b>T1219 원격 액세스 도구</b><br/>공격자와 암호화된 C2 채널을 설정합니다"] class c2_communication action proxy_setup["<b>액션</b> – <b>T1090 프록시</b><br/>트래픽 포워딩을 위한 내부 SOCKS5 터널을 설정합니다"] class proxy_setup action additional_mods["<b>액션</b> – <b>추가 기능</b><br/>모듈식 플러그인은 키로깅, 자격 증명 도난 및 암호 월렛 수확을 제공합니다"] class additional_mods action %% 공격 흐름을 보여주는 연결 email –>|전달| initial_access_phishing initial_access_phishing –>|제공| lNK_file lNK_file –>|실행| curl_download curl_download –>|다운로드| pxdropper pxdropper –>|생성| persistence_service persistence_service –>|등록| service_creation service_creation –>|실행| pxdropper pxdropper –>|추가| registry_run pxdropper –>|사용| priv_esc_exploit priv_esc_exploit –>|설치| driver_install driver_install –>|권한을 부여| kernel_privilege kernel_privilege –>|활성화| rootkit rootkit –>|실행| defense_evasion rootkit –>|실행| discovery_process rootkit –>|실행| discovery_security discovery_process –>|활성화| defense_impair pxdropper –>|드롭| c2_ratat c2_ratat –>|사용| c2_communication c2_communication –>|설정| proxy_setup proxy_setup –>|지원| additional_mods "

공격 흐름

탐지

의심스러운 CURL 사용 (cmdline 통해)

SOC Prime 팀
2026년 6월 10일

가능한 지속성 지점 [ASEPs – 소프트웨어/NTUSER Hive] (registry_event 통해)

SOC Prime 팀
2026년 6월 10일

Windows Defender 보호 비활성화 (registry_event 통해)

SOC Prime 팀
2026년 6월 10일

더블 확장자를 가진 가능한 악성 LNK 파일 (cmdline 통해)

SOC Prime 팀
2026년 6월 10일

숨겨진 PowerShell 명령라인을 통한 실행 가능성 (cmdline 통해)

SOC Prime 팀
2026년 6월 10일

Powershell 명령라인에서 의심스러운 .NET 클래스/메서드 호출 (process_creation 통해)

SOC Prime 팀
2026년 6월 10일

비정상적인 경로에서 시스템 프로세스 실행 (process_creation 통해)

SOC Prime 팀
2026년 6월 10일

Powershell에서 의심스러운 .NET 메서드 호출 (PowerShell 통해)

SOC Prime 팀
2026년 6월 10일

Windows Defender 설정 의심스러운 변경 (PowerShell 통해)

SOC Prime 팀
2026년 6월 10일

비정상적인 프로세스에 의해 Google API Storage 도메인이 해석되었습니다 (dns_query 통해)

SOC Prime 팀
2026년 6월 10일

탐지할 IOC (HashSha256): 일본 조직을 대상의 PoisonX 드라이버 기반 공격 캠페인 파트 2

SOC Prime AI 규칙
2026년 6월 10일

탐지할 IOC (HashSha256): 일본 조직을 대상의 PoisonX 드라이버 기반 공격 캠페인 파트 1

SOC Prime AI 규칙
2026년 6월 10일

탐지할 IOC (SourceIP): 일본 조직을 대상의 PoisonX 드라이버 기반 공격 캠페인

SOC Prime AI 규칙
2026년 6월 10일

탐지할 IOC (DestinationIP): 일본 조직을 대상의 PoisonX 드라이버 기반 공격 캠페인

SOC Prime AI 규칙
2026년 6월 10일

10FXRAT C2 통신 감지 [Windows 네트워크 연결]

SOC Prime AI 규칙
2026년 6월 10일

10FXRAT 및 보안 서비스 비활성화 명령 감지 [Windows 프로세스 생성]

SOC Prime AI 규칙
2026년 6월 10일

Windows Defender 및 실행 키 수정으로 인한 악성코드 지속성 [Windows 레지스트리 이벤트]

SOC Prime AI 규칙
2026년 6월 10일

시뮬레이션 실행

전제 조건: 원격 측정 및 기본 기준 사전 점검이 통과해야 합니다.

이유: 이 섹션은 탐지 규칙을 트리거하도록 설계된 적대 전술 기술 반복 상세 실행을 제공합니다. 명령 및 서사는 식별된 TTP에 직접 반영되어야 하며 탐지 논리에 기대되는 정확한 원격 측정을 생성해야 합니다.

  • 공격 서사 및 명령:
    공격자는 먼저 usoclient64.exe 에 사용자 정의 셸코드 페이로드를 주입하여 신뢰된 프로세스 발판을 얻습니다 (T1574.009). 하이재킹된 프로세스를 통해, 그들은 악성 페이로드 폴더를 Windows Defender의 제외 목록에 추가하는 PowerShell 원라이너를 실행합니다 (T1564.012). 마지막으로, 핵심 보안 서비스를 비활성화하기 위해 Windows Defender, Windows Security Center 및 타사 AV를 중단하는 cmd.exe 연쇄 호출로 서비스 중단을 통한 지속성을 해결합니다 (T1547.001 지속성).

    1. 프로세스 중공/주입 – PowerShell 스크립트를 실행하여 시뮬레이션합니다 (주입된 코드를 나타냄). usoclient64.exe usoclient64.exe
    2. Defender 제외 추가 – 규칙 문자열과 정확히 일치하는 PowerShell 명령.
    3. 보안 서비스 중단cmd.exe 서비스를 중지하는 원라이너.
  • 회귀 테스트 스크립트:

    # -------------------------------------------------------------------------
    #  시뮬레이션 스크립트 – 10FXRAT 유사 행동을 위해 Sigma 규칙을 트리거
    # -------------------------------------------------------------------------
    
    # 1. usoclient64.exe 주입 시뮬레이트 (프로세스 중공 자리 표시자)
    $usoclient = "$env:SystemRootSystem32usoclient64.exe"
    Write-Host "[*] usoclient64.exe 실행 (주입 시뮬레이션)..."
    Start-Process -FilePath $usoclient -ArgumentList "/RunDll32" -WindowStyle Hidden
    
    # 2. Defender 제외 경로를 추가하는 PowerShell 명령 (규칙과 일치)
    Write-Host "[*] Windows Defender 제외 경로 추가 중..."
    powershell.exe -NoP -NonI -W Hidden -C "Add-MpPreference -ExclusionPath 'C:TempMalicious'"
    
    # 3. cmd를 통한 보안 서비스 비활성화 (규칙과 일치)
    Write-Host "[*] 보안 서비스 중단 중..."
    cmd.exe /c "net stop WinDefend /y >nul 2>&1 & net stop wscsvc /y >nul 2>&1 & net stop Sense /y >nul 2>&1"
    
    Write-Host "[+] 시뮬레이션 완료. SIEM에서 경고를 확인하십시오."
  • 정리 명령:

    # -------------------------------------------------------------------------
    #  정리 – 정상 보안 상태 복원
    # -------------------------------------------------------------------------
    
    # Defender 제외 항목 제거
    powershell.exe -NoP -NonI -W Hidden -C "Remove-MpPreference -ExclusionPath 'C:TempMalicious'"
    
    # 중지된 서비스 다시 시작
    cmd.exe /c "net start WinDefend >nul 2>&1 & net start wscsvc >nul 2>&1 & net start Sense >nul 2>&1"
    
    # 주입된 usoclient64.exe 인스턴스 선택적으로 종료
    Get-Process -Name usoclient64 -ErrorAction SilentlyContinue | Stop-Process -Force
    
    Write-Host "[+] 정리 완료."