[하루한줄] CVE-2020-0986: Windows splWOW64 Elevation of Privilege
URL
Issue 2096: Windows: splWOW64 Elevation of Privilege
Target
- Windows 10 2004 (19041.508)
Explain
5월에 Kaspersky는 Windows splWOW64의 Elevation of Privilege가 악용되고 있음을 발견했습니다. Microsoft에서 6월에 패치를 발표했지만 해당 취약점은 수정되지 않았습니다.
CVE-2020-0986은 GDI Print/Print Spooler API의 arbitrary pointer 역참조 취약점입니다. 이 취약점을 이용하여 low integrity 프로세스는 splwow64.exe(medium integrity)에 LPC 메시지를 보내 splwow64의 메모리 영역에 쓰기 권한을 얻을 수 있습니다.
splWOW64는 GdiPrinterThunk
로 LPC 메시지를 전달합니다. GdiPrinterThunk
의 INDEX_DocumnetEvent
에 해당 취약점이 포함되어 있습니다. INDEX_DocumentEvent
의 핸들러는 printer command(LPC 클라이언트를 통해 조작 가능)를 통해 유효한 핸들을 가진 프린터의 명령인지 확인합니다.
확인하고 나면 DecodePointer
함수를 사용하여 fpDocumnetEvent
의 전역 변수에 저장된 함수의 포인터를 decode 한 후 decode 된 포인터를 통해 함수를 실행하고 memcpy
를 호출합니다. 해커는 memcpy
를 통해 복사되는 내용과 바이트 수, destination을 제어할 수 있습니다.
Reference
https://securelist.com/operation-powerfall-cve-2020-0986-and-variants/98329/
본 글은 CC BY-SA 4.0 라이선스로 배포됩니다. 공유 또는 변경 시 반드시 출처를 남겨주시기 바랍니다.