AI로 보안의 가치를 더하는 기업, 누리랩

누리랩은 AI 기술 기반으로 보안 솔루션 연구 개발 및 서비스를 제공하는 AI 보안 전문 기업입니다.

세상에 도움이 되는 기술로 인류에게 가치를 제공한다! 자세히보기

보안 리포트 및 칼럼

DragonForce 랜섬웨어 분석 보고서

누리알리 2025. 12. 4. 14:57

 

▶ DragonForce는 주요 로그들, 호출하는 DLL, API 등이 난독화되어 있어 실행 흐름을 파악하기 매우 어렵다.

▶ IOCTL을 활용하여 MsMeng.exe를 종료함으로써 Windows Defender를 비롯한 보안 솔루션들을 우회한다.

▶ 파일 크기에 따라 부분 암호화를 수행하는 방식으로 신속하게 암호화 한다.


1. 파일 정보

□ DragonForce

MD5
3a6e2c775c9c1060c54a9a94e80d923a
SHA1
8f31f69f88a75d5faab4f94cfc2ec8a649fe1a24
SHA256
1ccf8baf11427fae273ffed587b41c857fa2d8f3d3c6c0ddaa1fe4835f665eba

2. 도식도


3. DragonForce 상세 분석

3-1. 기초 설정

□ 주요 DLL을 업로드 및 API 후킹 원복

해당 랜섬웨어는 난독화한 DLL을 업로드한 뒤, Export 함수를 검사하여 보안 제품에 의해 후킹된 API를 탐지하고 원본 상태로 복원함으로써 백신의 모니터링을 우회하는 기능을 가진 것으로 추정된다.

악성 코드는 실행시마다 LoadLibrary API를 사용하여 주요 DLL을 메모리에 로드한다. 이 과정에서 난독화된 DLL명을 런타임에 복호화하여 순정 상태의 DLL을 메모리에 적재한다. 메모리에 전부 적재되면 각 DLL의 Export Address Table(EAT)를 파싱하여 외부에서 접근 가능한 함수 목록을 추린다.

랜섬웨어는 추린 Export 함수들의 이름이 일반적인 문자열(0-9, A-Z, a-z, ‘-’, ‘.’, ‘_’)만으로 구성되어 있는 경우 후킹 여부를 탐지하지 않고, 비정상적인 문자가 포함될 경우 후킹 여부를 체크한다.

대상 API를 그대로 실행시켜서 확인하는 GetProcAddress와 섹션과 뷰 객체를 생성하여 메모리의 바이너리를 그대로 드러내는 CreateFileMappingW, MapViewOfFile 함수를 활용하였다. 전자는 실제로 메모리에서 실행시키기 때문에 다른 함수의 후킹 시도에 그대로 노출이 되지만, 섹션과 뷰를 활용한 후자의 경우 바이너리가 바로 올라오기 때문에 원본 코드로써 취급된다.

후킹의 탐지는 선별된 함수의 시작 부분(프롤로그)의 바이트 코드를 검사하여 후킹 여부를 판별하는데, 상대 주소 점프 명령어 E9 opcode와 간접 점프 명령어 FF 25의 존재 여부를 확인한다. 이후 VirtualProtect API를 호출하여 프롤로그 영역의 메모리 보호 속성을 변경한 뒤 API의 원본 바이트 코드를 후킹된 함수 영역에 복사하여 원본 상태로 복원한다.

[그림 1] 정상적인 이름의 Export 함수 체크
[그림 2] 후킹 원복 코드

 


[생략]

 

📊 전체 내용을 보시려면 아래 링크를 클릭해주세요.

 

누리랩(Nurilab) - 보안 이슈 분석 리포트(Security&Tech Blog)

 

누리랩(Nurilab) - 보안 이슈 분석 리포트(Security&Tech Blog)

누리랩(Nurilab) - 보안 이슈 분석 리포트

www.nurilab.com


 

AI로 보안의 가치를 더하는 기업, 누리랩