커널 메모리의 KASLR 우회 취약점으로부터 컴퓨터를 보호하세요

커널 메모리의 KASLR 우회 취약점으로부터 컴퓨터를 보호하세요

Windows 커널은 하드웨어와 운영 체제를 연결하는 중요한 다리 역할을 합니다.강력한 기본 보안 기능으로 인해 맬웨어가 시스템에 침투하기 어렵습니다.그러나 KASLR 우회 위협이 증가하고 있으며, LOLDrivers(Living Off the Land Drivers)의 취약점과 캐시 타이밍 공격을 악용하여 상승된 접근 권한을 우회하고 있습니다.이러한 공격은 과거에는 구형 시스템을 대상으로 했지만, 이제는 Windows 11 24H2까지 위협하고 있으며 중요한 커널 메모리를 노출시키고 있다는 증거가 있습니다.이러한 보안 허점을 효과적으로 해결하는 방법에 대한 종합적인 가이드는 다음과 같습니다.

KASLR 우회 위협 이해

Windows 커널은 메모리 및 CPU 사용량을 포함한 중요한 시스템 리소스에 대한 접근을 세심하게 제어합니다.핵심 방어 수단 중 하나는 커널 주소 공간 레이아웃 랜덤화(KASLR)로, 메모리 위치를 은폐하여 커널 수준의 맬웨어가 접근하는 것을 매우 어렵게 만듭니다.그러나 최근 기술 발전으로 인해 새로운 드라이버인 eneio64.sys 가 사용되어 2025년 6월 Windows 11 24H2에서 KASLR 보호 기능을 성공적으로 우회했습니다.

이 특정 드라이버는 LOLDriver로 분류되며, “로우 스텁(Low Stub)” 기법을 사용하여 침투할 수 있습니다.공격자는 메모리 스캐닝과 추측을 활용하여 시스템의 기본 메모리 주소를 정확하게 파악합니다.커널을 성공적으로 우회하면 실제 악용 사례가 발생할 수 있으며, 이는 심각한 위협 수준을 의미합니다.

System32 드라이버 목록을 확인합니다.

System32 폴더에서 이러한 드라이버를 수동으로 검사할 수 있습니다.문제가 있는 드라이버가 발견되지 않으면 해당 드라이버가 없거나 제대로 제거된 것입니다.

2025년 5월에 발생한 또 다른 주목할 만한 공격은 캐시 타이밍 기법을 사용하여 KASLR을 완전히 우회하는 것이었습니다.이 공격에서 공격자는 SeDebugPrivilege 와 같은 권한을 획득하지 않고도 “0xfff” 범위 내의 잠재적 커널 주소에 대한 액세스 지연 시간을 측정했습니다.이 공격은 주로 Windows 10 및 이전 Windows 11 버전(21H2, 22H2, 23H2)에 집중되었지만, Windows 11 사용자는 방어력을 강화하기 위해 24H2 이상 버전으로 전환하는 것이 필수적입니다.24H2로 업그레이드하는 동안 호환성 문제가 발생하는 사용자를 위해 원활한 전환을 위한 효과적인 솔루션 목록을 마련했습니다.

KASLR 우회 위험 완화를 위한 LOLDrivers 식별

2025년 이후 Windows 11 24H2의 커널 보안 강화 기능은 SeDebugPrivilege를 활용하여 더욱 강력한 보호 기능을 제공합니다.그럼에도 불구하고 악의적인 공격자들은 LOLDrivers를 통해 KASLR 우회 기법을 악용하여 최신 Windows 11 버전에 침투하고 있습니다.

문제가 있는 시스템 드라이버를 확인하려면 관리자 모드에서 PowerShell을 시작하고 다음 명령을 실행하세요.

Get-WindowsDriver -Online | Where-Object { $_. OriginalFileName -match "sys"} | Format-Table OriginalFileName, ProviderName

PowerShell 관리자 모드에서 System32 드라이버 목록을 가져옵니다.

이 명령을 실행한 후 LOLDrivers 출력을 모니터링하세요.이러한 드라이버의 예로는 MsIo64.sys, nt3.sys, VBoxTap.sys 등이 있습니다.더욱 주의를 기울이려면 LOLDrivers의 범용 목록을 참조하세요.

Microsoft는 LOLDrivers를 포함한 차단되었거나 오래된 드라이버의 포괄적인 최신 목록을 제공합니다.이 목록을 XML 파일로 다운로드하고 다음을 사용하여 enio64.sys와 같은 문제가 있는 드라이버를 구체적으로 검색할 수 있습니다.

Get-WindowsDriver -Online | Where-Object { $_. OriginalFileName -match "eneio64.sys"}

PowerShell에서 특정 LOLDriver, enio64.sys 검색

설명된 방법을 사용하면 KASLR 우회를 용이하게 할 수 있는 취약한 LOLDrivers로부터 기기를 안전하게 보호할 수 있습니다.더 사용자 친화적인 방법은 Windows 보안 -> 장치 보안 -> 코어 격리 세부 정보 로 이동하여 메모리 무결성이 활성화되어 있는지 확인하는 것입니다.

메모리 무결성은 Windows 보안의 코어 격리에서 활성화됩니다.

KASLR 우회 기법은 Winos 4.0 맬웨어의 동작 방식과 유사합니다.두 기법 모두 매우 지속적이며 복잡한 공격 체인을 통해 페이로드를 전송합니다.

SeDebugPrivilege 적용을 통한 Windows 보안 강화

캐시 타이밍 부채널 공격은 KASLR 우회 기법과 관련된 심각한 위험을 초래합니다.공격자가 다양한 방법을 악용하여 커널 메모리를 직접 조작할 경우, Windows 11 24H2 출시 이후 적용된 중요한 보안 조치인 SeDebugPrivilege 없이도 커널 주소를 노출할 수 있습니다.

하지만 Windows 10 및 이전 버전의 Windows 11을 사용하는 사용자도 SeDebugPrivilege를 적용하여 시스템을 강화할 수 있습니다.간단한 방법은 다음과 같습니다.

Windows 10/11 Pro 또는 Enterprise 기기에서 실행 명령을 누르고 를 입력하면 로컬 보안 정책secpol.msc 창이 나타납니다.로컬 정책 -> 사용자 권한 할당 으로 이동하여 프로그램 디버깅을 두 번 클릭합니다.

로컬 정책 -> 사용자 권한 할당에서 '디버그 프로그램'을 두 번 클릭합니다.title="로컬 정책 -> 사용자 권한 할당에서 '디버그 프로그램'을 두 번 클릭합니다." width="701" height="451" loading="lazy" class="wp-image" src="https://cdn.thefilibusterblog.com/wp-content/uploads/2025/06/KASLR-Bypass-Local-Security-Policies-Debug-Programs.webp"/></figure> <p>특정 사용자 그룹(예: 관리자)에 대해 '디버그 프로그램' 설정이 활성화되어 있는 경우 추가 조치가 필요하지 않습니다.그렇지 않은 경우, <strong>사용자 또는 그룹 추가</strong>를 클릭하여 이 권한을 다른 사용자에게도 부여하십시오.</p> <figure class=디버그 프로그램 설정은 기기에서 기본적으로 활성화되어 있습니다.

새 사용자를 추가한 후 ‘이름 확인’을 클릭하고 ‘확인’ 을 클릭하세요.마지막으로 ‘ 적용’을 선택하고 ‘확인’ 을 다시 클릭하여 변경 사항을 완료하세요.

SeDebugPrivilege 목록에 사용자 이름이나 그룹을 추가합니다.

Windows 10/11 Home을 사용하는 경우 로컬 보안 정책에 액세스할 수 없습니다.대신.을 입력하여 레지스트리 편집기 regedit에 액세스하세요.

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa

이 키가 아직 없으면 만드세요.마우스 오른쪽 버튼을 클릭하여 새 REG_SZ 값을 만들고 SeDebugPrivilege값을 로 조정하세요 Administrators.변경하기 전에 항상 레지스트리를 백업하세요.

KASLR 우회와 같은 커널 기반 맬웨어 위협에 대응하려면 Windows 보안에서 플래그가 지정된 드라이버 설치를 방지하는 것이 매우 중요합니다.서명되지 않은 드라이버가 필요한 드문 경우가 있을 수 있지만, 이와 관련된 모범 사례를 따르는 것이 필수적입니다.운영 체제를 최신 상태로 유지하고 최신 Windows 버전을 사용하는 것은 시스템 보안을 보장하는 데 필수적인 요소입니다.

자주 묻는 질문

1. KASLR이란 무엇이고 Windows 보안에 왜 중요한가요?

KASLR(커널 주소 공간 레이아웃 무작위화)은 Windows의 보안 기능으로, 커널 프로세스의 메모리 할당을 무작위로 설정하여 맬웨어가 악성 코드를 삽입할 위치를 예측하기 어렵게 만듭니다.이러한 무작위 레이아웃은 커널 수준 공격에 대한 중요한 방어 계층을 제공합니다.

2. Windows 컴퓨터에서 LOLDrivers를 확인하려면 어떻게 해야 하나요?

PowerShell을 관리자 모드로 실행하면 LOLDrivers를 쉽게 확인할 수 있습니다.명령을 실행하면 Get-WindowsDriver -Online | Where-Object { $_. OriginalFileName -match "sys"} | Format-Table OriginalFileName, ProviderName현재 시스템에 설치된 드라이버 목록을 볼 수 있습니다.

3.시스템에 오래되었거나 안전하지 않은 드라이버가 설치된 경우 어떻게 해야 합니까?

오래되었거나 안전하지 않을 수 있는 드라이버를 발견하면 해당 드라이버를 제거하고 Microsoft에서 권장하는 안전하고 최신 드라이버로 교체하는 것이 좋습니다.또한, Microsoft에서 제공하는 최신 드라이버 차단 목록을 다운로드하여 알려진 안전하지 않은 드라이버를 식별하고 설치를 차단할 수 있습니다.

출처 및 이미지

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다