본문 바로가기
분석 정보/랜섬웨어 분석 정보

BQTLock 랜섬웨어 변종 발견

by TACHYON & ISARC 2025. 9. 19.

올해 7월에 새로 등장한 BQTLock 랜섬웨어의 변종이 추가로 발견됐다. 외신 보도에 따르면 해당 랜섬웨어는 친팔레스타인 해커 그룹으로 알려진 Liwaa Mohammed와 관련있으며 ZerodayX라는 공격자가 제작한 것으로 전해진다. 공격자는 자신이 운영하는 X 계정에 공격 기업 정보와 보안 업체 분석 보고서를 게시하고 이어서 BQTLock 랜섬웨어의 리눅스 버전과 유출된 자료를 검색할 수 있는 BAQIYAT.osint 도구 공개도 예고했다.

 

 

BQTLock 랜섬웨어의 변종에는 안티디버깅과 정보 탈취 및 UAC 우회 기능이 추가됐으며 이 외에는 기존 버전과 동일하게 오픈 소스 기반 OpenSSL 라이브러리로 파일 암호화를 수행하고 보안 프로그램 관련 프로세스를 종료한다. 또한 Explorer.exe를 대상으로 프로세스 할로잉을 수행해 악성 동작을 은닉한다.

 

[그림 1] 공격 사례 및 리눅스 버전 공개

ZerodayX 계정 링크 : https://x.com/zerodayx1

 

변종 추가 기능

BQTLock 랜섬웨어의 변종에는 CheckRemoteDebuggerPresent 등의 안티 디버깅 기법이 추가돼 랜섬웨어 실행 종료 여부를 결정하고 스크린샷과 Chrome Edge 등의 웹 브라우저의 비밀번호를 수집하는 정보 탈취 동작이 추가됐다. 수집한 비밀번호는 'C:\Windows\Temp' 경로에 저장하며 감염된 PC 정보와 해당 랜섬웨어가 생성한 관리자 계정 정보를 공격자의 텔레그램이나 디스코드로 전송한다. 관리자 계정 정보는 "Guest_{랜덤숫자 4자리}"의 계정명과 "P@ssW0rd!{랜덤숫자5자리}"의 비밀번호 형식이며 공격자는 관리자 계정 정보로 추후 접근을 시도할 수 있다. 아래 [그림 2]는 임의로 디스코드 환경을 구성해 정보 탈취 및 전송을 테스트한 결과이다.

 

[그림 2] 디스코드 전송

 

변종에는 윈도우 버전에 따라 UAC 우회 및 권한 상승 기법을 다르게 사용한다. 윈도우 11에서는 CMSTP (Microsoft Connection Manager Profile Installer)를 악용하는데 이는 원래 VPN이나 원격 액세스 연결 관련 설정을 자동으로 구성하는 데 사용하며 INF 파일을 인자값으로 받아 관리자 권한으로 실행한다. 해당 랜섬웨어에서는 INF 파일 내의 [RunPreSetupCommandsSection] 섹션에 랜섬웨어 실행 경로를 지정하고 cmstp.exe로 해당 INF 파일을 실행해 UAC를 우회한다.

 

윈도우 10 7 8은 지정된 레지스트리에 랜섬웨어 파일 경로를 등록한 뒤 윈도우 10fodhelper.exe를 실행하고 윈도우 7 8eventvwr.exe를 실행해 관리자 권한을 획득한다. fodhelper.exeSMB 및 텔넷 서비스 등의 Windows의 기능을 켜고 끄는 프로그램이며 eventvwr.exeWindows나 응용프로그램 등에서 발생한 이벤트 로그를 확인하는 프로그램이다. fodhelper.exeeventvwr.execmstp.exe와 마찬가지로 관리자 권한으로 자동 실행되며 특정 레지스트리의 경로에 저장된 파일도 실행한다. BQTLock 랜섬웨어는 이를 악용해 레지스트리 경로에 랜섬웨어 파일 경로를 등록하며 UAC 우회 및 관리자 권한으로 실행한다.

- 레지스트리 등록 경로 : HKCU\Software\Classes\ms-settings\shell\open\command

 

[그림 3] UAC 우회 및 관리자 권한 획득

 

BQTLock 랜섬웨어

변종에 추가된 안티 디버깅과 정보 탈취 및 UAC 우회 이외에 다른 암호화나 악성 동작은 기존과 동일하다. 해당 랜섬웨어 내에는 암호화에 사용할 RSA 공개키과 랜섬노트 내용 및 공격자의 디스코드 웹 훅 주소 등이 Base64로 인코딩돼 있다. 또한 바탕화면을 변경할 이미지의 데이터도 포함돼 있으며 각 동작을 수행할 때마다 이를 디코딩해서 사용한다.

 

[그림 4] Base64 인코딩 데이터

 

 

랜섬웨어는 오픈 소스 기반의 암호화 라이브러리인 OpenSSL AES-256 RSA-4096 알고리즘을 사용해 파일을 암호화하며 RAND_Bytes AES 암호화에 사용할 32 bytes의 랜덤한 키값과 16 bytes IV를 생성한다. 암호화 대상으로는 감염된 PC의 드라이브 경로를 A부터 Z까지 탐색해 암호화를 진행하고 시스템에 영향을 끼칠 수 있는 Windows 폴더와 부트 폴더 및 sys 파일 등을 비롯해 아래 [ 1]의 폴더와 파일 등은 제외한다.

 

[표 1] 암호화 제외 목록

 

암호화 결과로는 기존 파일명에 .bqtlock 확장자를 추가하고 파일 아이콘을 변경하며 랜섬웨어 실행 로그를 C:\Windows\Temp 경로에 저장한다. 또한 암호화를 진행한 폴더마다 README_pay2_DECRYPT.txt 이름의 랜섬노트를 드롭하고 바탕화면을 변경하며 사용자에게 감염 사실을 알린다.

 

[그림 5] 암호화 결과 및 랜섬노트

 

[그림 6] 바탕화면 변경

 

BQTLock 랜섬웨어는 Explorer.exe를 대상으로 프로세스 할로잉해 악성 동작을 은닉한다. 이 과정은 대상 프로세스를 중지(Suspend) 상태로 생성하고 ImageBase에 해당하는 영역을 NtUnmapViewOfSection으로 매핑 해제한 뒤 현재 실행 중인 랜섬웨어의 PE 헤더와 각 섹션별 데이터를 차례대로 매핑한다. 이후 EntryPoint ImageBase 값을 수정하고 EntryPoint를 호출해 프로세스 할로잉한 랜섬웨어를 실행하고 기존 랜섬웨어도 계속 실행한다.

 

[그림 7] 프로세스 할로잉 코드

 

프로세스 할로잉 이후에는 현재 실행 중인 파일 경로를 작업 스케줄러에 BQTLock_Startup_{랜덤숫자 4자리} 이름으로 등록하며 감염된 PC가 재부팅될 때마다 자동 시작되게 한다. 작업 스케줄러에는 두 개의 파일을 등록하는데 하나는 기존에 실행하고 있는 BQTLock 랜섬웨어이며 다른 하나는 프로세스 할로잉해 "Explorer.exe" 내부에서도 원본과 같은 랜섬웨어를 실행하고 있어 "Explorer.exe"를 등록한다. 이후 NetServerEnum으로 감염된 PC와 연결된 서버를 찾아 'C:\Windows\Temp\bqt_payload.exe' 경로에 랜섬웨어를 전파한 뒤 WMI 명령어로 서버와 파일을 지정해 원격으로 실행한다. WMI 명령어로 실행이 안 되면 sc 명령어를 사용해 "BQTUpdateSvc"라는 이름의 서비스를 생성하고 전파한 파일을 등록해 해당 서비스를 실행한다.

 

[그림 8] 네트워크 전파 패킷

 

또한 백신 프로그램 및 보안 도구의 실행을 종료하고 백업된 볼륨 새도우 복사본을 삭제하며 복구 불가능하게 만든다. 프로세스를 종료할 때 실행 중인 프로세스 목록을 확인하며 아래 [ 2]의 백신 프로그램이나 보안 도구의 이름을 비교하며 PID 값을 가져와 프로세스를 종료한다. 그리고 vssadmin 명령어로 백업된 볼륨 섀도우 복사본을 삭제한 뒤 시스템 복구 관련 레지스트리의 DisableSR 값을 1로 수정해 복구 기능을 비활성화한다.

-  레지스트리 경로 : HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\SystemRestore

 

[표 2] 프로세스 종료 목록

 

마지막으로 파일 암호화 및 네트워크 전파 등 모든 동작을 수행한 뒤에 실행 중인 랜섬웨어를 삭제하는 BAT 스크립트를 만들어 실행한다. BAT 스크립트는 실행한 지 3초 뒤에 랜섬웨어와 BAT 파일을 삭제한다.

 

[그림 9] 자가 삭제

 

BQTLock 랜섬웨어에서 작업 스케줄러 등록과 자가 삭제하는 동작은 둘 다 같은 파일을 지정해 서로 상반되는 내용으로 설계상의 오류로 추정된다. 하지만 자가 삭제 이전까지는 작업 스케줄러로 랜섬웨어를 반복 실행하며 파일 암호화를 진행해 사용자의 주의가 필요하다. 따라서 출처가 의심스러운 파일의 실행은 지양하고 주기적으로 파일을 백업해 중요 파일은 안전하게 보관하며 운영체제 및 보안 솔루션의 최신 버전 업데이트를 권장한다.

 

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

 

[그림 10] TACHYON Internet Security 6.0 진단 및 치료 화면