SOC Prime Bias: Critical

21 1월 2026 19:10

비밀 접근 작전: 아르헨티나 사법 부문을 겨냥한 무기화된 LNK 기반 스피어 피싱으로 은밀한 RAT 배포

Author Photo
Ruslan Mikhalov Chief of Threat Research at SOC Prime linkedin icon 팔로우
비밀 접근 작전: 아르헨티나 사법 부문을 겨냥한 무기화된 LNK 기반 스피어 피싱으로 은밀한 RAT 배포
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

요약

Seqrite는 무기화된 LNK 바로 가기와 악성 BAT 로더를 전달하는 스피어 피싱 작전을 식별했습니다. 실행되면, 로더는 GitHub 저장소에서 Rust 기반 원격 액세스 트로이 목마를 다운로드하여 실행하며, 반 분석 확인을 수행하고 지속 가능한 명령 및 제어 채널을 설정합니다. 이 활동은 아르헨티나의 사법 기관과 인접한 정부 기관을 대상으로 하는 것으로 평가됩니다. 실행 가능성을 높이기 위해 공격자는 전달 패키지에 합법적으로 보이는 PDF 미끼 콘텐츠를 포함합니다.

조사

분석가들은 LNK, BAT, PDF 파일을 포함한 ZIP 아카이브를 조사한 후, BAT 로더를 트리거하기 위해 사용된 PowerShell 명령 시퀀스를 재구성했습니다. 그들은 RAT의 기능, VM/샌드박스 방어 체크, 호스트 정찰 및 시스템 핑거프린팅, 지속성 설정, C2를 통한 암호화 작업을 프로파일링했습니다. 관찰된 행동은 변장, PowerShell 실행 정책 회피, 기본 채널 실패 시 연결 유지를 위한 2차/대체 C2 논리와 같은 주목할 만한 패턴과 함께 MITRE ATT&CK 기법에 매핑되었습니다.

대응책

사용자 기록 가능한 위치 및 압축 아카이브로부터의 바로 가기(LNK) 실행에 대한 엄격한 거버넌스를 적용하고, 중앙 집중식 로그 기록을 통해 강화된 PowerShell 실행 정책을 시행하십시오. 무단 GitHub 저장소로의 아웃바운드 접근을 제한하거나 프록시하여 스크립트 인터프리터에서 시작된 의심스러운 다운로드 및 실행 패턴에 대해 경고합니다. Run 레지스트리 키 또는 비정상적이거나 새로 관찰된 이름의 예약 작업을 통해 지속성을 모니터링합니다. 가능한 경우, 일반적인 반 분석 행동을 드러내는 탐지를 배포하고 PDF를 처리하는 사용자는 최소 권한으로 작동하여 성공적인 실행의 피해 범위를 줄입니다.

대응

무기화된 LNK가 생성되거나 실행될 때, 그리고 관련 PowerShell 호출 체인이 관찰될 때 경고를 트리거하십시오. 낙임된 msedge_proxy.exe 아티팩트와 레지스트리 또는 작업 스케줄러에 연결된 지속성 항목을 사전에 검색합니다. 영향을 받은 엔드포인트를 격리하고 악성 프로세스 트리를 종료하며, 생성된 예약 작업 및 Run 키 값을 제거합니다. 데이터가 준비되었거나 유출되었는지 범위를 확인하고 추가로 노출된 호스트를 확인하기 위해 전체 포렌식 검토를 완료하십시오.

“graph TB %% Class definitions classDef action fill:#99ccff classDef artifact fill:#cccccc classDef tool fill:#ffcc99 classDef malware fill:#ff9999 classDef operator fill:#ff9900 %% Nodes artifact_email_zip[“<b>아티팩트</b> – 악성 이메일 ZIP<br/><b>내용</b>: LNK 파일과 미끼 PDF가 포함됨.”] class artifact_email_zip artifact artifact_lnk[“<b>아티팩트</b> – LNK 파일 (info/juicio-grunt-posting.pdf.lnk)<br/><b>기법</b>: T1027.012 아이콘 은닉”] class artifact_lnk artifact attack_initial_access[“<b>행동</b> – T1566.001 스피어피싱 첨부파일<br/><b>설명</b>: 이메일을 통한 악성 ZIP 배포.”] class attack_initial_access action attack_user_execution[“<b>행동</b> – T1204.002 악성 파일 실행<br/><b>설명</b>: 사용자가 PDF로 가장한 LNK를 클릭함.”] class attack_user_execution action defense_evasion_icon[“<b>행동</b> – T1027.012 LNK 아이콘 은닉<br/><b>설명</b>: LNK가 PDF 아이콘을 사용하여 자신을 위장함.”] class defense_evasion_icon action execution_powershell[“<b>행동</b> – T1059.001 PowerShell & T1059.003 Windows 명령 셸<br/><b>설명</b>: LNK가 숨김 창과 우회로 PowerShell을 실행하여 BAT 로더를 동작시킴.”] class execution_powershell action defense_evasion_obfusc[“<b>행동</b> – T1027 난독화/인코딩된 명령어<br/><b>설명</b>: PowerShell 명령어와 C2 메시지가 Base64u2011로 인코딩됨.”] class defense_evasion_obfusc action artifact_bat[“<b>아티팩트</b> – health-check.bat<br/><b>목적</b>: msedge_proxy.exe를 다운로드하고 저장함.”] class artifact_bat artifact malware_rust_rat[“<b>멀웨어</b> – msedge_proxy.exe (Rust RAT)<br/><b>기법들</b>: T1497.001 가상화/샌드박스 회피, T1622 디버거 회피, T1547.001 레지스트리 실행 키, T1053.005 예약 작업”] class malware_rust_rat malware defense_evasion_sandbox[“<b>행동</b> – T1497.001 가상화/샌드박스 회피 & T1622 디버거 회피<br/><b>설명</b>: 레지스트리, 드라이버, MAC 접두사, 샌드박스 폴더, IsDebuggerPresent 확인.”] class defense_evasion_sandbox action persistence_registry[“<b>행동</b> – T1547.001 레지스트리 실행 키 / 시작 폴더<br/><b>설명</b>: 지속성을 위해 HKCU 실행 항목을 생성함.”] class persistence_registry action persistence_task[“<b>행동</b> – T1053.005 예약 작업<br/><b>설명</b>: schtasks를 통해 지연 실행으로 예약 작업을 등록함.”] class persistence_task action discovery_system[“<b>행동</b> – T1082 시스템 정보 수집<br/><b>설명</b>: 호스트 이름, 사용자 이름, 운영 체제 버전, 권한 수준 수집.”] class discovery_system action discovery_process[“<b>행동</b> – T1057 프로세스 발견<br/><b>설명</b>: 분석 툴 및 VM 프로세스를 감지하기 위해 tasklist 실행.”] class discovery_process action collection_local[“<b>행동</b> – T1005 로컬 시스템에서 데이터 수집<br/><b>설명</b>: 수집한 파일을 유출하기 위해 수확.”] class collection_local action c2_app_layer[“<b>행동</b> – T1071 애플리케이션 계층 프로토콜 & T1573 암호화된 채널<br/><b>설명</b>: 암호화된 페이로드를 사용하여 HTTP(S)를 통해 C2 서버와 통신.”] class c2_app_layer action c2_encoding[“<b>행동</b> – T1132.001 데이터 인코딩 (Base64)<br/><b>설명</b>: 모든 C2 명령어가 Base64u2011로 인코딩됨.”] class c2_encoding action exfiltration[“<b>행동</b> – T1041 C2 채널을 통한 데이터 유출<br/><b>설명</b>: 수집한 데이터를 동일한 C2 채널을 통해 전송함.”] class exfiltration action %% Flow connections artifact_email_zip u002du002d>|포함| artifact_lnk artifact_email_zip u002du002d>|배포| attack_initial_access attack_initial_access u002du002d>|이어짐| attack_user_execution attack_user_execution u002du002d>|트리거| defense_evasion_icon defense_evasion_icon u002du002d>|이어짐| execution_powershell execution_powershell u002du002d>|실행| artifact_bat artifact_bat u002du002d>|다운로드| malware_rust_rat malware_rust_rat u002du002d>|수행| defense_evasion_sandbox defense_evasion_sandbox u002du002d>|설치| persistence_registry persistence_registry u002du002d>|추가| persistence_task persistence_task u002du002d>|활성화| discovery_system discovery_system u002du002d>|전달| discovery_process discovery_process u002du002d>|수집| collection_local collection_local u002du002d>|보냄| c2_app_layer c2_app_layer u002du002d>|사용| c2_encoding c2_encoding u002du002d>|전송| exfiltration %% Apply classes class artifact_email_zip,artifact_lnk,artifact_bat artifact class attack_initial_access,attack_user_execution,defense_evasion_icon,execution_powershell,defense_evasion_obfusc,defense_evasion_sandbox,persistence_registry,persistence_task,discovery_system,discovery_process,collection_local,c2_app_layer,c2_encoding,exfiltration action class malware_rust_rat malware “

공격 흐름

시뮬레이션 실행

사전 요구 사항: 원격 측정 및 기본 상태 사전 점검이 통과되어야 합니다.

이유: 이 섹션은 탐지 규칙을 트리거하기 위해 설계된 적대자 기술(TTP)의 정확한 실행을 자세히 설명합니다. 명령 및 내러티브는 식별된 TTP를 직접 반영하여 탐지 논리에 의해 예상되는 정확한 텔레메트리를 생성하는 것을 목표로 해야 합니다. 추상적이거나 관련 없는 예시는 오진을 초래할 수 있습니다.

  • 공격 내러티브 및 명령:

    1. 초기 타협: 공격자는 무기화된 스피어 피싱 이메일을 전송합니다 .lnk 바로 가기는 사법 직원을 대상으로 한 것입니다. 바로 가기는 다음을 실행하는 PowerShell 명령을 가리킵니다 -ExecutionPolicy Bypass 하고 숨겨진 창으로 실행하여 의심을 피합니다.

    2. 실행 흐름: 사용자가 바로 가기를 클릭하면, Windows는 다음 명령을 실행하여 다음을 시작합니다 health‑check.bat. 배치 파일에는 실제 악성 페이로드(예: RAT을 가져오는 PowerShell 다운로드)가 포함됩니다.

       powershell.exe -ep bypass -w hidden -f health-check.bat
    3. 페이로드 전달: health-check.bat 은 조용히 악성 C2에 HTTP GET을 수행하고, 페이로드를 다음에 기록합니다 %TEMP%그리고 실행합니다.

  • 회귀 테스트 스크립트: 아래 스크립트는 안전한 테스트를 위해 무해한 내용을 포함한 다음을 생성하여 정확한 원격 측정을 재현합니다 health‑check.bat , 그리고 PowerShell 명령을 실행합니다.

    # -------------------------------------------------
    # 시뮬레이션 스크립트 – 무기화된 LNK PowerShell 실행
    # -------------------------------------------------
    # 1. 더미 health-check.bat 생성 (테스트를 위해 무해한 상태 유지)
    $batPath = "$env:TEMPhealth-check.bat"
    Set-Content -Path $batPath -Value '@echo off & echo Simulated payload executed' -Encoding ASCII
    
    # 2. 정확한 플래그 및 스크립트 이름으로 PowerShell 실행
    $psCommand = "powershell.exe -ep bypass -w hidden -f `"$batPath`""
    Write-Host "Executing: $psCommand"
    Start-Process -FilePath "powershell.exe" -ArgumentList "-ep", "bypass", "-w", "hidden", "-f", $batPath -NoNewWindow
    
    # 3. 로그 생성 보장을 위해 몇 초간 대기
    Start-Sleep -Seconds 5
    # -------------------------------------------------
  • 정리 명령어: 테스트 배치 파일 및 남아있는 프로세스를 제거합니다.

    # 더미 health-check.bat 정리
    Remove-Item -Path "$env:TEMPhealth-check.bat" -ErrorAction SilentlyContinue
    
    # 테스트에서 남은 불필요한 PowerShell 인스턴스가 없도록 함
    Get-Process -Name "powershell" -ErrorAction SilentlyContinue | Stop-Process -Force