두 개의 INC 랜섬 노트 이야기
Detection stack
- AIDR
- Alert
- ETL
- Query
요약
한 조직이 초기 침투 가능성이 높은 접근 중개인에 의해 초기에 손상된 후 INC 랜섬웨어의 공격 대상이 되었습니다. 이 공격은 보안 제어를 비활성화하기 위해 Bring Your Own Vulnerable Driver (BYOVD) 기술을 사용하고 피해자에게 압박을 가중시키기 위해 여러 랜섬 노트를 배포했습니다. 이 침투는 8월 몇 주에 걸쳐 진행되었으며, 초기 접근과 최종 랜섬웨어 배포 사이에 상당한 중단이 있었습니다.
조사
Huntress 분석가들은 랜섬웨어 사건이 발생한 후 남아있는 EDR 원격 측정과 Windows 이벤트 로그를 사용하여 침입을 재구성했습니다. 조사는 초기 난독화된 PowerShell 임플란트와 RDP를 통한 횡적 이동을 포함한 단계를 밝혔으며, 이후 AnyDesk와 BYOVD 공격을 사용하는 단계로 이어졌습니다. 분석가들은 특정 예약 작업, 이름이 바뀐 실행 파일, 그리고 EDR/AV 킬러를 활성화하는 데 사용된 취약한 드라이버를 식별했습니다.
완화
조직은 원격 액세스 도구를 제한하고 엄격히 모니터링하며 모든 특권 계정에 대해 다단계 인증(MFA)을 시행해야 합니다. 서명되지 않았거나 예기치 않은 드라이버 서비스를 차단하고 의심스러운 예약 작업을 모니터링하는 것은 중요한 방어 조치입니다. 테스트된 오프라인 백업을 유지하고 잘 연습된 사고 대응 계획을 갖추는 것도 신속한 격리를 위해 필수적입니다.
대응
INC 랜섬웨어 활동이 탐지되면 추가 횡적 이동을 방지하기 위해 영향받은 엔드포인트를 즉시 격리해야 합니다. 대응자는 AnyDesk와 같은 승인되지 않은 원격 관리 도구를 식별하고 종료하며, 새로 설치되었거나 의심스러운 커널 모드 드라이버를 조사해야 합니다. 예약 작업도 지속성을 위한 검토가 필요하며, 손상된 사용자 계정은 승인되지 않은 RDP 세션에 대해 감사해야 합니다.
공격 흐름
이 부분은 아직 업데이트 중입니다.
탐지
의심스러운 예약 작업 (감사를 통해)
Windows 해킹 도구 사용 가능성 [Part3] (cmdline을 통해)
대체 원격 액세스/관리 소프트웨어 (프로세스 생성 통해)
Windows 해킹 도구 사용 가능성 [Part3] (파일 이벤트 통해)
비정상적인 폴더에 생성된 Windows 드라이버 (파일 이벤트 통해)
공용 사용자 프로필의 의심스러운 파일 (파일 이벤트 통해)
예약 작업을 통한 가능성 있는 횡적 이동 [atsvc] (감사를 통해)
탐지할 IOC (SourceIP): 두 개의 INC 랜섬 노트 이야기
탐지할 IOC (DestinationIP): 두 개의 INC 랜섬 노트 이야기
AnyDesk 설치에 사용된 Command-and-Control IP 탐지 [Windows 네트워크 연결]
의심스러운 경로에서 로드된 DLL [Windows Sysmon]
악성 도메인과의 통신을 감지하는 난독화된 PowerShell 스크립트 탐지 [Windows Powershell]
시뮬레이션 실행
-
공격 내러티브 및 명령: 공격자는 악성 DLL을 사이드로드하여 지속성을 달성하거나 권한을 상승시키고자 합니다. 기본 파일 무결성 모니터에 의해 탐지되는 것을 피하기 위해 자주 간과되지만 전역적으로 쓰기 가능한 디렉토리를 선택합니다:
C:UsersPublic. 공격자는 우선 이 경로에 더미 DLL을 떨어트리고, 이후 PowerShell 스크립트를 사용하여 이 모듈을 새 프로세스에 로드하여 표준 사용자 프로필 기반 스크루티니를 회피하도록 설계된 악성 페이로드의 실행을 시뮬레이션합니다. -
회귀 테스트 스크립트:
# 1. 경로 정의 $targetDir = "C:UsersPublic" $dllName = "malicious_sim.dll" $dllPath = Join-Path $targetDir $dllName # 2. 더미 DLL 파일 생성 (작은 바이트 배열 사용하여 파일 시뮬레이션) # 실제 시나리오에서는 컴파일된 DLL이어야 합니다. $dummyContent = [byte[]](0x4D, 0x5A, 0x90, 0x00, 0x03, 0x00, 0x00, 0x00) # MZ 헤더 [System.IO.File]::WriteAllBytes($dllPath, $dummyContent) Write-Host "[+] 더미 DLL이 $dllPath에 생성되었습니다." # 3. PowerShell을 통해 DLL 로딩 시뮬레이션 # 이는 Sysmon 이벤트 ID 7을 트리거합니다 try { Write-Host "[+] DLL 로딩 시도 중..." Write-Host "[+] DLL이 성공적으로 로드되었습니다 (시뮬레이션 완료)." } catch { Write-Host "[-] DLL 로딩 실패 (파일이 유효한 PE가 아닌 경우 예상됨): $($_.Exception.Message)" } -
정리 명령:
# 시뮬레이션된 악성 파일 제거 $dllPath = "C:UsersPublicmalicious_sim.dll" if (Test-Path $dllPath) { Remove-Item -Path $dllPath -Force Write-Host "[+] 정리: $dllPath가 제거되었습니다." } else { Write-Host "[-] 정리: 파일을 찾을 수 없음." }