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

Reynolds 랜섬웨어, BYOVD로 윈도우 디펜더 무력화

by TACHYON & ISARC 2026. 3. 6.

올해 2월 등장한 Reynolds 랜섬웨어는 취약한 드라이버를 악용하는 BYOVD(Bring Your Own Vulnerable Driver) 기법을 이용해 보안 프로그램을 무력화하는 특징을 가진다. Reynolds 랜섬웨어를 실행하면 보안 업체 NsecSoft의 커널 드라이버인 NsecKrnl 드라이버를 드롭한 뒤 IOCTL 코드를 이용해 윈도우 디펜더를 비롯한 보안 프로그램을 종료한다. 이러한 방식은 일반적인 랜섬웨어가 보안 프로그램의 프로세스 목록을 확인한 뒤 해당 프로세스를 종료하는 방식과 달리 취약한 드라이버를 이용해 상승된 권한에서 보안 프로그램을 직접 종료한다는 점에서 차이가 있다.

이후 Curve25519(X25519) HC-128 알고리즘을 이용해 파일 암호화를 수행하며 파일 크기에 따라 암호화할 영역을 구분한 뒤 지정된 바이트를 건너뛰는 간헐적 암호화(intermittent encryption) 방식을 적용한다. 이처럼 취약한 드라이버를 이용해 보안 기능을 무력화하는 사례는 이전에 자사에서 분석한 INC 랜섬웨어의 시스템 복구 무력화 동작과 GhostEngine 코인마이너의 프로세스 종료 동작에서도 확인된 바 있다.

2024.06.17 - [분석 정보/악성코드 분석 정보] - 취약한 드라이버를 사용하는 GhostEngine

2024.08.02 - [분석 정보/랜섬웨어 분석 정보] - Inc 랜섬웨어, 2024 2분기 유출 사례 증가

 

 

BYOVD 활용 프로세스 종료

Reynolds 랜섬웨어는 권한 상승 취약점(CVE-2025-68947)이 있는 NsecKrnl 드라이버를 'C:\ProgramData' 경로 하위에 402.sys로 드롭하고 IOCTL 코드를 전송해 윈도우 디펜더를 비롯한 보안 프로세스를 종료한다.

- CVE-2025-68947 : NSecsoft NsecKrnl 드라이버에서 IOCTL 요청을 처리할 때 권한 검증을 제대로 수행하지 않아 발생하는 권한 상승 취약점.

 

 

[그림 1] NsecKrnl 드라이버 드롭

 

드라이버 드롭 이후에는 서비스 관련 레지스트리에 키를 생성하고 서비스 타입을 임의의 값인 0으로 임시 설정한 뒤 NtLoadDriver 함수를 실행하며 드롭한 드라이버를 로드한다. 그리고 드라이버로 프로세스를 종료한 뒤에는 생성한 레지스트리 경로를 삭제하며 드라이버 로드 흔적을 없앤다.

 

[그림 2] 드라이버 레지스트리 등록

 

드라이버 로드 이후 현재 프로세스 목록을 확인하며 윈도우 디펜더 프로세스인 MsMpEng.exe를 비롯해 보안 프로그램의 프로세스를 찾아 PID값을 확보한다. 이후 NsecKrnl 드라이버(402.sys) DeviceIoControl 함수로 IOCTL 코드(0x2248E0) PID를 전송하고 드라이버에서 해당 IOCTL 코드를 전달받으면 PID에 해당하는 프로세스를 관리자 권한으로 종료한다.

 

[그림 3] DeviceIoControl 함수
[그림 4] IOCTL 코드 분기문 및 프로세스 종료

 

파일 암호화

Reynolds 랜섬웨어는 사용자 시스템의 프로세서 정보를 확인해 논리 프로세서 수 x 2만큼의 스레드를 생성하며 멀티 스레드 방식으로 여러 파일을 동시에 암호화한다.

 

[그림 5] 멀티 쓰레드 생성

 

암호화 과정에서는 타원 곡선 암호화 알고리즘 중 하나인 Curve25519(X25519)를 사용해 암호화 키를 생성하고 스트림 암호화 알고리즘인 HC-128로 파일을 암호화한다. 암호화 알고리즘은 [그림 6]과 같이 직접 구현돼있으며 암호화 이전에 32 bytes의 랜덤한 숫자를 생성한 뒤 비트 값을 알고리즘 형식에 맞춰 초기화시키는 클램핑 작업을 수행한다. 이후 공격자의 공개키와 연산해 암호화 키를 생성하며 공격자의 개인키가 있어야만 파일을 복호화할 수 있다.

 

[그림 6] 암호화 알고리즘 코드

 

파일 확장자와 특정 파일 및 폴더를 제외해 암호화를 수행하며 파일 크기 별로 아래 조건에 맞게 전체 암호화를 수행하거나 영역을 나누어 간헐적 암호화를 수행한다. 이때 파일 전체나 나누어진 영역에서도 해당 영역 전체를 암호화하는 것이 아니라 0x40 bytes씩 건너뛰며 암호화를 진행한다. 암호화를 완료한 파일에는 기존 파일명에 .locked 확장자를 추가한다.

- 파일 크기 < 0x500000 : 파일 전체 암호화.
- 0x500000 < 파일 크기 < 0x1400000 : 파일 3등분 후 각 영역의 앞 0x100000 바이트 암호화.
- 0x1400000 < 파일 크기 : 파일을 0xA00000 크기로 나누어 각 영역의 앞 0x100000 바이트 암호화.

 

[표 1] 암호화 제외 대상

 

만약 파일을 암호화하는데 해당 파일을 사용하고 있는 프로세스가 있다면 윈도우 리스타트 매니저로 해당 프로세스를 종료한 후 암호화를 계속 진행한다.

 

[그림 7] Windows Restart Manager 관련 코드

 

암호화하는 각 경로마다 ___RestoreYourFiles___.txt란 랜섬노트를 생성하고 재공격 예고 및 데이터 공개를 빌미로 3일 이내에 연락할 것을 요구한다. 랜섬노트에는 자신들이 운영하는 데이터 유출 사이트 링크가 명시돼있으며 해당 사이트에는 아래 [그림 9]처럼 공격 사례가 공개돼있다.

 

[그림 8] Reynolds 랜섬노트
[그림 9] Reynolds 데이터 유출 사이트

 

Reynolds 랜섬웨어는 있는 드라이버를 드롭하고 BYOVD 기법으로 윈도우 디펜더와 보안 프로그램 등을 종료한다. BYOVD 기법은 랜섬웨어 뿐만 아니라 다른 악성코드에서도 종종 사용되며 프로세스 종료 뿐만 아니라 다른 악성 동작을 수행하는 데에 사용될 수 있어 주의가 필요하다. 따라서 주기적으로 파일과 시스템을 백업하고 다른 저장 장치에도 2차 백업을 수행해 감염에 대비하고 보안 프로그램과 OS를 항상 최신 버전으로 유지할 것을 권고한다.

 

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

 

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