SOC Prime Bias: 중간

29 May 2026 07:02 UTC

가짜 ‘안전 메일’이 신용 카드 회사로 위장해 악성 파일 배포

Author Photo
SOC Prime Team linkedin icon 팔로우
가짜 ‘안전 메일’이 신용 카드 회사로 위장해 악성 파일 배포
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

요약

안랩은 주요 한국 신용카드 제공업체의 안전 메일 알림으로 가장한 악성 LNK 파일을 배포하는 피싱 캠페인을 발견했습니다. 열면, 이 바로가기는 HTA를 통해 mshta.exe 와 PowerShell을 실행하고, 그 후 윈도우 디펜더가 활성화되어 있는지 여부에 따라 후속 페이로드를 다운로드합니다. 디펜더가 활성화되어 있으면 공격자는 curl 을 사용하여 암호화된 파일을 검색한 후 이를 압축 해제하고 실행합니다. 디펜더가 비활성화된 경우, 체인은 직접 DLL 로딩과 추가 다운로드 활동으로 전환됩니다. 결과적인 악성 코드는 정보 도용, 키로깅, 클립보드 수집 및 백도어 기능을 지원합니다.

조사

조사 결과, 초기 LNK 파일이 실행되면 mshta.exe가 실행되며, 난독화된 VBScript를 포함한 HTA를 실행합니다. 그 HTA는 pipe.zip을 다운로드하며, 이는 Base64로 인코딩된 스크립트 1.log, 1.ps12.log을 포함하고 있으며 모두 메모리에서 디코딩되고 실행됩니다. 디펜더가 비활성화되면, 악성 코드는 대신 user.txt and sys.log를 다운로드하고, sys.logsys.dll로 복호화한 후 rundll32를 통해 실행합니다. 복호화된 user.txt 를 분석한 결과, 추가 악성 파일을 가져오기 위해 사용된 세 개의 Google Drive URL이 노출되었습니다. 여기에는 notepad.log, netapp가 포함되어 있으며, 이는 %LOCALAPPDATA%.

저장됩니다.

권장 방어 조치에는 이메일 첨부 파일의 합법성을 확인하고, LNK 파일의 자동 실행을 방지하며, 의심스러운 mshta.exe and curl사용을 모니터링하는 것이 포함됩니다. 보안 팀은 또한 1.log, 1.ps1, 2.log, notepad.log, netapp 와 같은 파일을 검색하고 제거해야 하며, %TEMP% and %LOCALAPPDATA%경로에서 불필요한 레지스트리 변경 사항을 검사하고, 윈도우 디펜더 또는 다른 엔드포인트 보호 플랫폼이 활성화되고 적절히 구성되었는지를 확인해야 합니다.

대응

이 활동이 감지되면, 영향을 받은 시스템을 즉시 격리하고, 모든 mshta.exe, curl또는 rundll32 알 수 없는 파일을 실행 중인 프로세스를 종료하며, 악성 아티팩트를 디지털 포렌식 검토를 위해 보존합니다. 전체 시스템 검사를 수행하고, 노출된 자격 증명을 재설정하며, 후속 백도어 활동을 모니터링합니다. 관찰된 침해 지표를 사용하여 탐지 내용을 업데이트하고, 유사한 피싱 함정을 차단할 수 있도록 이메일 보안 통제를 강화해야 합니다. notepad.log. Detection content should also be updated with the observed indicators of compromise, and email security controls should be strengthened to block similar phishing lures in the future.

graph TB %% Class Definitions classDef action fill:#99ccff classDef operator fill:#ff9900 classDef builtin fill:#cccccc %% Nodes initial_user_exec[“<b>기술</b> – <b>T1204.002 사용자 실행: 악성 파일</b><br/>피해자는 신용카드 회사의 안전한 이메일로 위장된 .lnk 파일을 실행한다.”] class initial_user_exec action exec_mshta[“<b>기술</b> – <b>T1218.005 시스템 바이너리 프록시 실행: Mshta</b><br/>LNK가 PowerShell을 실행하고, mshta.exe가 원격 HTA를 가져와 난독화된 VBScript를 실행한다.”] class exec_mshta action exec_powershell[“<b>기술</b> – <b>T1059.001 명령 및 스크립트 인터프리터: PowerShell</b><br/>PowerShell이 curl을 사용하여 추가 페이로드를 다운로드한다.”] class exec_powershell action masquerade[“<b>기술</b> – <b>T1036.008 위장: 파일 유형 위장</b><br/>LNK 파일은 안전한 이메일로 위장된다.”] class masquerade action obfuscate[“<b>기술</b> – <b>T1027 난독화된 파일 또는 정보</b><br/>페이로드는 AES로 암호화되고 Base64로 인코딩되며 LNK 아이콘도 악용된다.”] class obfuscate action sandbox_evasion[“<b>기술</b> – <b>T1497.002 샌드박스 회피: 사용자 활동 기반 검사</b><br/>악성코드는 Windows Defender 상태를 확인한다.”] class sandbox_evasion action cond_defender[“<b>연산자</b> – Defender 상태 기반 AND 조건”] class cond_defender operator defender_on[“<b>조건</b> – Defender 활성화”] class defender_on action defender_off[“<b>조건</b> – Defender 비활성화”] class defender_off action download_pipe[“<b>동작</b> – pipe.zip 다운로드 후 복호화 및 추출 (1.log, 1.ps1, 2.log)”] class download_pipe action cred_access[“<b>기술</b> – <b>T1539 브라우저 세션 하이재킹</b>, <b>T1185 웹 세션 쿠키</b>, <b>T1555.003 브라우저 자격 증명</b><br/>스크립트가 자격 증명을 탈취한다.”] class cred_access action collection[“<b>기술</b> – <b>T1056.001 입력 캡처: 키로깅</b> 및 <b>T1115 클립보드 데이터</b><br/>키 입력 및 클립보드 데이터를 수집한다.”] class collection action download_sys[“<b>동작</b> – user.txt와 sys.log 다운로드 후 sys.dll 복호화”] class download_sys action load_rundll[“<b>기술</b> – <b>T1218.011 서명된 바이너리 프록시 실행: Rundll32</b><br/>rundll32를 통해 sys.dll을 로드한다.”] class load_rundll action persistence_appinit[“<b>기술</b> – <b>T1546.010 이벤트 기반 실행: AppInit DLL</b><br/>sys.dll을 이용해 지속성과 회피 기능을 유지한다.”] class persistence_appinit action command_control[“<b>기술</b> – <b>T1219 원격 접근 도구</b><br/>notepad.log를 통해 원격 명령 실행 및 데이터 유출이 가능하다.”] class command_control action clipboard_phish[“<b>기술</b> – <b>T1204.004 복사-붙여넣기 피싱</b><br/>클립보드를 이용한 피싱 기법.”] class clipboard_phish action %% Connections initial_user_exec –>|다음 단계| exec_mshta exec_mshta –>|실행| exec_powershell exec_powershell –>|활성화| masquerade masquerade –>|활성화| obfuscate obfuscate –>|활성화| sandbox_evasion sandbox_evasion –>|트리거| cond_defender cond_defender –>|Defender 활성| defender_on cond_defender –>|Defender 비활성| defender_off defender_on –>|다운로드| download_pipe download_pipe –>|포함| cred_access cred_access –>|활성화| collection defender_off –>|다운로드| download_sys download_sys –>|로드| load_rundll load_rundll –>|지속성| persistence_appinit persistence_appinit –>|활성화| command_control command_control –>|사용| clipboard_phish

공격 흐름

시뮬레이션 실행

전제 조건: 텔레메트리 & 기준선 프리‑플라이트 체크가 통과되어야 합니다.

  • 공격 내러티브 & 명령:
    적은 엔드포인트에 발판을 확보한 후 기존의 애플리케이션 제어를 회피하면서 임의 코드를 실행하기를 원한다. 난독화된 VBScript를 포함하는 악성 HTA 파일을 작성하여 이를 디스크에 작성하는 PowerShell 백도어를 생성한다. HTA를 실행하기 위해, 그들은 윈도우 바로 가기(.lnk)를 사용하여 powershell.exe 와 명령을 사용하여 mshta.exe를 호출한다. 바로 가기를 실행하면 PowerShell → mshta 체인이 작동하여 규칙이 모니터하는 정확한 텔레메트리를 생성합니다.

  • 회귀 테스트 스크립트:

    # -------------------------------------------------
    # 1. 난독화된 VBScript를 가진 악성 HTA 생성
    # -------------------------------------------------
    $htaPath = "$env:TEMPevil.hta"
    $vbscript = @"
    <script language='VBScript'>
    ' 난독화된 VBScript 페이로드 (예: 파일 작성)
    Dim fso, f
    Set fso = CreateObject("Scripting.FileSystemObject")
    Set f = fso.CreateTextFile("C:WindowsTemppwned.txt", True)
    f.WriteLine "compromised by ATT&CK"
    f.Close
    </script>
    "@
    Set-Content -Path $htaPath -Value $vbscript -Encoding ASCII
    
    # -------------------------------------------------
    # 2. PowerShell → mshta를 실행하는 바로 가기 (.lnk) 생성
    # -------------------------------------------------
    $lnkPath = "$env:TEMPlaunch_malicious.lnk"
    $ws = New-Object -ComObject WScript.Shell
    $shortcut = $ws.CreateShortcut($lnkPath)
    
    # HTA 파일을 사용하여 mshta를 실행하는 PowerShell 명령
    $psCommand = "mshta.exe `"$htaPath`""
    $shortcut.TargetPath = "C:WindowsSystem32WindowsPowerShellv1.0powershell.exe"
    $shortcut.Arguments = "-NoProfile -WindowStyle Hidden -Command `"$psCommand`""
    $shortcut.Save()
    
    # -------------------------------------------------
    # 3. 탐지를 트리거하기 위해 바로가기를 실행
    # -------------------------------------------------
    Write-Host "악성 바로가기를 실행하고 있습니다..."
    & $lnkPath
    
    # -------------------------------------------------
    # 4. 로그 수집을 허용하기 위해 일시 중지
    # -------------------------------------------------
    Start-Sleep -Seconds 10
  • 정리 명령:

    # 생성된 아티팩트를 제거
    Remove-Item -Path "$env:TEMPevil.hta" -Force -ErrorAction SilentlyContinue
    Remove-Item -Path "$env:TEMPlaunch_malicious.lnk" -Force -ErrorAction SilentlyContinue
    Remove-Item -Path "C:WindowsTemppwned.txt" -Force -ErrorAction SilentlyContinue
    Write-Host "정리 완료."