EMET 4.1에서는 ROP가 주요 함수들을 호출하여 공격하는 것을 막기 위하여 주요 함수들에 후킹을 걸어 감시합니다.

Deep Hooks 라는 기능이 있는데 이것은 좀 더 많은 API를 커버하는 기능입니다.

예를 들어, VirtualProtect를 호출하면 VirualProtect->VirtualProtectEx->NtProtectVirtualMemory 순으로 호출하는데요, Deep Hooks 기능을 키면 NtProtectVirtualMemory를 후킹합니다. 이걸 옵션으로 뺀 이유가, 다른 시큐리티 회사들이 호환성 문제 때문에 클레임을 걸었다는군요.

아래는 비교 표 입니다. Undocumented API를 커버하여 주네요. 

 

Deep Hooks가 기본 값이 아니기 때문에, 공격자들은 VirtualProtect가 아닌 NtProtectVirtualMemory를 호출하여 우회할 수도 있습니다.

또한 Deep Hooks를 키면 Kernelbase도 추가로 후킹을 합니다.

+ Recent posts