촉촉한초코칩

MS 윈도우 압축 헤더(CAB)를 악용한 배치 파일(*.cmd) 악성코드 ModiLoader(DBatLoader) 유포 본문

Study/Vulnerability (CVE)

MS 윈도우 압축 헤더(CAB)를 악용한 배치 파일(*.cmd) 악성코드 ModiLoader(DBatLoader) 유포

햄친구베이컨 2025. 1. 15. 11:38
ModiLoader (DBatLoader)

 

해당 악성코드는 ModiLoade (DBatLoader)라고 불리며, 발주서(PO)로 유포되고 있다. 

과거와 다른 점은 *.cmd(배치 파일) 확장자를 사용하지만 실제로는 CAB 압축 헤더 포맷을 악용해 악성코드를 생성 후 실행하는 Loader형 악성코드라는 것이다. 

  • 바이너리 구조 : CAB 헤더 ('MSCF') + Command line + PE (exe)
  • 확장자 : *.cmd
더보기

CAB 압축 헤더 포맷 

  • Windows 환경에서 파일이나 데이터의 압축과 배포를 위해 사용하는 포맷 
  • 압축된 내용물에 대한 목차와 같은 역할을 한다. 

(해외에서는 'Threat Actor Turns a CAB File Into the Loader to Deployt ModiLoader'라는 제목으로 소개된 바 있다.)

 

공격

 

공격자는 메일 보안 제품을 우회하기 위해 첨부 파일 헤더를 변경하였다. 

압축 파일 (CAB)의 헤더는 MSCF이지만, PNG를 추가하여 파일 필터링을 우회하거나 압축 내 파일을 자동으로 검사하는 기능 등을 우회하기 위한 것으로 추정된다.

해당 압축 파일 내부에는 정상 이미지 파일 MS 윈도우 압축 포맷(CAB)을 이용한 악성 배치 파일(*.cmd)이 존재한다. 

CMD 배치 파일은 아래와 같이 CAB 구조와 커맨드 명령어, 실행 파일을 갖는 특이한 구조를 가지고 있으며 커맨드 명령어를 통해 로더로 동작한다.

extrac32로 추출이 가능한 CAB 구조로 만들기 위해서는 coffCabStart 오프셋을 시작으로 블럭(Block) 마다 크기를 맞게 설정해주어야 한다. cCFData는 블럭에 대한 개수를 가리키지만, 임의로 설정하여도 동작과는 무방하다. 

더보기

extrac32 

  • Microsoft Windows 운영 체제에서 사용되는 압축 해제 도구 중 하나 
  • 주로 CAB파일이라는 특정 압축 파일 형식에서 데이터를 추출하는 데 사용된다. 

 

coffeCabStart 오프셋

  • CAB 파일 형식의 내부 구조에서 특정 데이터를 가리키는 위치 

 

유포된 PO_SK336.cmd 파일 실행 과정은 아래와 같다. 

  1. 실행 시 앞 헤더는 무시하고 Command Line 실행
  2. extrac32를 통해 자기 자신 파일 (CAB 구조) 압축 해제
  3. %temp% 폴더에 내부 실행 파일 (EXE)을 생성 후 실행

 

커맨드 라인 명령은 다음과 같다

cls && extrac32 /y "%~f0" "%tmp%\x.exe" && start"" "%tmp%\x.exe"

 

최종 악성 코드 생성 경로 

 

주의 

 

사용자는 첨부 파일에 대한 각별한 주의가 필요하다. 

 

출처 : https://asec.ahnlab.com/ko/85732/