커널 패치 보호
From Wikipedia, the free encyclopedia
커널 패치 보호(KPP : Kernel Patch Protection)는 비공식적으로 패치가드(PatchGuard)라고도 불리며 64비트 마이크로소프트 윈도우에서 커널을 패치하는 것을 막는 기능이다. 이것은 2005년 윈도우 XP x64 버전과 윈도우 서버 2003 서비스 팩 1에서 처음 도입되었다.[1]
"커널 패치"는 윈도우 운영 체제의 커널 또는 중앙 요소에 대한 지원되지 않은 수정을 의미한다. 마이크로소프트에 따르면, 이러한 수정은 시스템 보안, 신뢰성 및 성능에 심각한 감소를 유발할 수 있기 때문에 지금까지 한 번도 지원된 적이 없다.[1] 비록 마이크로소프트가 이것을 지원하지 않지만 윈도우의 x86 에디션에서는 커널을 패치하는 것이 기술적으로 가능하다; 그러나 마이크로소프트는 윈도우 x64 버전에서 이 추가적인 보호를 구현하였고 커널 패치에 대한 기술적으로 막고 있다.
커널을 패치하는 것이 32비트에서는 기술적으로 허용되었기 때문에 몇몇 안티바이러스 개발자들은 보안 서비스를 제공하기 위해 안티바이러스를 구현할 때 커널 패치를 사용하였다. 이러한 종류의 안티바이러스 소프트웨어는 64비트 버전의 윈도우에서는 돌아갈 수 없다. 이 때문에 커널 패치 보호는 안티바이러스 개발자가 자신들의 소프트웨어를 재설계하도록 강제하였다는 비판을 받는다.
또한 윈도우 커널의 디자인 때문에 커널 패치 보호는 커널 패치를 완벽하게 막을 수 없다.[2] 이 때문에 KPP는 불완전한 방어라는 비판이 있고, 이 문제는 악성코드 개발자가 간단하게 이 방어를 우회하는 방법을 찾을 수 있기 때문에 안티바이러스 개발자 입장에서는 이 문제가 장점보다 크다고 여길 수 있다.[3][4] 그럼에도 불구하고 커널 패치는 지원되지 않은 방식으로 커널을 패치하는 합법적인 소프트웨어에 의해 유발되는 시스템 안정성, 신뢰성 및 성능 문제를 막을 수 있다.