Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
EATGuard — Export Address Filtering(EAF)과 같은 export address table 보호 완화(mitigation) 기법의 구현 | Kitploit
도구/GitHubGitHub/connormcgarr/eatguard
Defensive ToolsShellcodeBinary Exploitation
GitHubconnormcgarr/eatguard

EATGuard

Export Address Filtering(EAF)과 같은 export address table 보호 완화(mitigation) 기법의 구현

저장소 보기
114213년 전Kitploit 검토 완료

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

EATGuard

EAT(Export Address Table) 보호 완화(Export Address Filtering, EAF)의 구현

작동 방식

이 프로젝트는 세 개의 바이너리로 구성되며, 컴파일하면 EATGuard\bin\에서 찾을 수 있습니다:

  1. EATGuardApplication.exe - EATGuardDll.dll을 프로세스에 로드한 다음 notepad.exe를 실행하는 일부 실행 코드(셸코드)를 실행하는 "악성" 애플리케이션.
  2. EATGuardDll.dll - 사용자 모드와 커널 모드 사이의 "브리지"를 제공하는 DLL. 이 DLL은 Vectored Exception Handler(VEH)를 등록하여 kernel32.dll EAT(Export Address Table)에 대한 접근 탐지를 EATGuardDriver.sys 드라이버로 보냅니다. 이 DLL은 kernel32.dll EAT에 가드 페이지를 할당하여 EATGuardApplication.exe 프로세스 공간 내에서 EAT에 접근할 때 예외를 발생시킵니다. 이로 인해 실행 흐름이 등록된 VEH로 이동하며, VEH는 이러한 예외를 처리하고 분석이 완료된 후 실행을 계속하는 역할을 담당합니다.
  3. EATGuardDriver.sys - kernel32.dll EAT에 대한 접근을 검증하는 커널 모드 장치 드라이버. 현재는 POC로서 kernel32.dll에 접근하는 메모리가 디스크에 의해 백업되는지 확인합니다.

사용 방법

EATGuardApplication.exe는 EATGuardApplication.exe의 상대 경로에서 EATGuardDll.dll을 로드합니다. 즉, 실행 시 .exe와 .dll이 같은 디렉터리에 있어야 합니다. 또한 커널 디버깅이 활성화된 머신에서 이 프로젝트를 실행하지 마십시오. EATGuardDll.dll이 실행을 계속하기 위해 단일 스텝 예외(single-step exception)를 사용하기 때문에 문제가 발생할 수 있습니다. 프로젝트 사용 예시는 다음과 같습니다:

root@kitploit:~
C:\Users\ANON\Desktop>sc create EATGUARD type= kernel binPath= C:\Users\ANON\Desktop\EATGuardDriver.sys
[SC] CreateService SUCCESS

C:\Users\ANON\Desktop>sc start EATGUARD

SERVICE_NAME: EATGUARD
        TYPE               : 1  KERNEL_DRIVER
        STATE              : 4  RUNNING
                                (STOPPABLE, NOT_PAUSABLE, IGNORES_SHUTDOWN)
        WIN32_EXIT_CODE    : 0  (0x0)
        SERVICE_EXIT_CODE  : 0  (0x0)
        CHECKPOINT         : 0x0
        WAIT_HINT          : 0x0
        PID                : 0
        FLAGS              :

C:\Users\ANON\Desktop>EATGuardApplication.exe
[+] KERNEL32.dll EAT: 0x00007FFB1D83F898
[+] Number of functions in the KERNEL32.dll EAT: 1678
[+] EATGuard analysis complete!
    [+] Target address: 0x24AA138005C
        [>] IsRipRwxMemory: TRUE
        [>] IsRipMappedSection: FALSE
        [>] IsRipBackedByImage: FALSE
        [>] HasPageProtectionChanged: FALSE
        [>] RegionBaseAddress: 0x24AA1380000
        [>] MemoryRegionSize: 0x1000
        [>] MemoryCommtSize: 0x1000
[+] EATGuard analysis complete!
    [+] Target address: 0x24AA138005F
        [>] IsRipRwxMemory: TRUE
        [>] IsRipMappedSection: FALSE
        [>] IsRipBackedByImage: FALSE
        [>] HasPageProtectionChanged: FALSE
        [>] RegionBaseAddress: 0x24AA1380000
        [>] MemoryRegionSize: 0x1000
        [>] MemoryCommtSize: 0x1000
[+] EATGuard analysis complete!
    [+] Target address: 0x24AA138008F
        [>] IsRipRwxMemory: TRUE
        [>] IsRipMappedSection: FALSE
        [>] IsRipBackedByImage: FALSE
        [>] HasPageProtectionChanged: FALSE
        [>] RegionBaseAddress: 0x24AA1380000
        [>] MemoryRegionSize: 0x1000
        [>] MemoryCommtSize: 0x1000
[+] EATGuard analysis complete!
    [+] Target address: 0x24AA138009B
        [>] IsRipRwxMemory: TRUE
        [>] IsRipMappedSection: FALSE
        [>] IsRipBackedByImage: FALSE
        [>] HasPageProtectionChanged: FALSE
        [>] RegionBaseAddress: 0x24AA1380000
        [>] MemoryRegionSize: 0x1000
        [>] MemoryCommtSize: 0x1000
[+] EATGuard analysis complete!
    [+] Target address: 0x24AA13800A2
        [>] IsRipRwxMemory: TRUE
        [>] IsRipMappedSection: FALSE
        [>] IsRipBackedByImage: FALSE
        [>] HasPageProtectionChanged: FALSE
        [>] RegionBaseAddress: 0x24AA1380000
        [>] MemoryRegionSize: 0x1000
        [>] MemoryCommtSize: 0x1000

(...)TRUNCATED(...)

이 프로젝트는 Export Address Filtering의 기능을 모방한 POC입니다.

도구 다운로드