분석 정보/악성코드 분석 정보

DLL 하이재킹을 통해 퍼지는 Qbot

TACHYON & ISARC 2023. 6. 15. 10:47

QakBot 이라고도 알려진 Qbot 은 이메일과 같은 전통적인 전파 수단뿐만 아니라, OneNote, CHM 과 같이 최신 유행하는 전파 수단을 적극적으로 활용하는 모습을 보여왔다. 최근에는 한발 더 나아가 DLL 하이재킹 기술을 통해 정상 실행 파일에 악성 DLL 을 로딩하는 공격 방식이 사용되고 있다.

 

DLL 하이재킹 공격은 Windows OS DLL 로딩 우선 순위를 이용하여, 정상 DLL 대신 동일한 이름의 악성 DLL 을 로딩하는 공격법이다. 최근 발견된 Qbot 은 정상 Wordpad 실행 파일과 악성 DLL 파일 edputil.dll ZIP 으로 압축하여 유포되고 있다. 원래대로라면 Wordpad 는 시스템 폴더 내의 정상 edputil.dll 파일을 로딩해야 하나, DLL 로딩 순서에 따라 실행 파일과 동일한 경로 내의 같은 이름을 가진 악성 DLL 을 대신 로딩한다.

 

[그림 1] 악성 DLL 과 함께 압축되어 배포된 Wordpad 실행 파일

 

악성 edputil.dll 파일이 로딩되면, 표면상으로는 마치 실행 중 에러가 발생한 것처럼 에러 메시지를 출력한다. 이와 동시에 백그라운드 상에서는 공격자 서버로부터 default.png 라는 이름의 추가 악성 DLL 을 다운로드하며, 다운로드된 파일은 rundll32.exe 에 의해 로딩되어 실행된다.

 

[그림 2] 악성 edputil.dll 코드

 

로딩된 DLL 은 자기 자신 내부의 암호화된 Qbot 바이너리를 복호화하고 실행한다. Qbot 은 디버깅, 안티 바이러스 프로세스가 실행 중이거나 샌드박스와 관련된 특정 파일이 존재할 경우 탐지되는 것을 피하기 위해 악성 동작 없이 종료된다.

 

[그림 3] Windows Defender Emulator 관련 파일 탐지 코드.

 

[표 1] 탐지 대상 프로세스 목록

 

또한 시스템 키보드 레이아웃이 [2]와 같은 언어를 지원할 경우에도 악성 동작 없이 종료된다.

 

[표 2] 악성 동작 예외 언어 목록

 

시스템이 공격 대상이라 판단되면 공격자의 C&C 서버와 통신을 시도한다. Qbot C&C 서버로부터 전달받은 명령에 따라 정보 수집, 파일 다운로드 및 실행, Qbot 업데이트, 등의 백도어 기능을 수행할 수 있다. 이 과정에서 사용되는 설정 데이터는 무작위로 생성된 Windows 레지스트리에 암호화된 상태로 저장된다.

 

[그림 4] Windows 레지스트리의 암호화된 설정 데이터.

 

이외에도 정상 실행 파일을 Suspend 상태로 실행 후, Qbot DLL 을 인젝션하는 방식을 통해 안티 바이러스의 탐지를 피하려 한다.

 

[그림 5] 인젝션을 위한 Suspend 된 프로세스 생성 코드.

                                       

상기 악성코드는 잉카인터넷 안티바이러스 제품 TACHYON Internet Security 5.0에서 진단 및 치료가 가능하다.

 

[그림 6] TACHYON Internet Security 5.0 진단 및 치료 화면