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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
KOOBE-Guard — Kprobes를 사용하여 CVE-2024-1086 힙 이중 해제(double-free) 익스플로잇을 시간적 간격 추적(temporal gap tracking)과 활성 레지스터 무효화(register nullification)를 통해 탐지 및 무력화하며, RAM 오버헤드가 전혀 없는 리눅스 커널 모듈입니다. | Kitploit
도구/GitHubGitHub/vedantk6403/koobe-guard
Defensive ToolsVulnerability AnalysisIntrusion DetectionAnomaly Detection
GitHubvedantk6403/koobe-guard

KOOBE-Guard

Kprobes를 사용하여 CVE-2024-1086 힙 이중 해제(double-free) 익스플로잇을 시간적 간격 추적(temporal gap tracking)과 활성 레지스터 무효화(register nullification)를 통해 탐지 및 무력화하며, RAM 오버헤드가 전혀 없는 리눅스 커널 모듈입니다.

저장소 보기
721일 전아직 검토되지 않음

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

KOOBE-Guard: 커널 이중 해제 취약점의 능동적 시간 기반 완화

저자: Vedant Karande & Kiran Kumari
과정: Network & Systems Security (SIL7165) - Indian Institute of Technology Delhi

개요

KOOBE-Guard는 치명적인 힙 기반 취약점, 특히 CVE-2024-1086 이중 해제(double-free) 취약점[cite: 1]을 능동적으로 완화하기 위해 Linux 로더블 커널 모듈(LKM)로 개발된 동적 침입 방지 시스템(IPS)입니다.

현대 운영체제는 메모리 하위 시스템이 메모리를 완벽하게 할당하고 해제한다고 암묵적으로 신뢰합니다[cite: 1]. Linux 커널의 nf_tables와 같은 복잡한 하위 시스템에 논리 오류가 존재하면 메모리 관리 오류로 이어질 수 있으며, 이를 통해 비권한 공격자가 힙 펭슈이(Heap Feng Shui)와 중첩 할당(overlapping allocation)을 이용해 로컬 권한 상승(LPE)을 달성할 수 있습니다[cite: 1]. KOOBE-Guard는 무겁고 수동적인 섀도 메모리 방어에서 실시간 능동 시간 간격 추적(Active Temporal Gap Tracking)으로 전환함으로써 이를 무력화합니다[cite: 1].

아키텍처 및 방법론

KASAN과 같은 기존 완화 도구는 방대한 섀도 메모리 매핑에 의존하여 200%~300%의 CPU 오버헤드와 치명적인 RAM 비대화를 유발하므로, 프로덕션 환경에서는 사용할 수 없습니다[cite: 1].

KOOBE-Guard는 다음과 같은 방법론을 통해 익스플로잇을 차단합니다.

  • 능동 시간 간격 추적(Active Temporal Gap Tracking): Kprobes는 kfree 할당자 경로에 직접 후킹됩니다[cite: 1]. 모듈은 해제된 메모리 주소의 정확한 나노초 타임스탬프를 기록합니다[cite: 1].
  • 익스플로잇 식별: 정상적인 시스템 메모리 재활용은 수만 나노초에 걸쳐 발생하는 반면, CVE-2024-1086은 즉각적으로 해제(unwind)가 진행됩니다[cite: 1]. KOOBE-Guard는 고도로 최적화된 5,000나노초(5µs) 임계값을 활용하여 이러한 악성 시그니처를 필터링합니다[cite: 1].
  • 능동 매개변수 무효화(Active Parameter Nullification): 익스플로잇 루프와 일치하는 시간 시그니처를 감지하면, 모듈은 실행 도중 CPU 레지스터를 강제로 NULL로 재작성합니다(regs->di = 0)[cite: 1]. 이로 인해 안전한 kfree(NULL) 연산이 강제되며, SLUB 프리리스트(freelist) 손상이 완전히 방지됩니다[cite: 1].

저장소 구조

  • defense_module/: KOOBE-Guard LKM 소스 코드와 Makefile을 포함합니다.
  • evaluation_scripts/: 정량적 QEMU 테스트에 사용되는 Bash 스크립트(benchmark.sh, hit_rate.sh)를 포함합니다.
  • docs/: 포괄적인 프로젝트 보고서와 발표 슬라이드를 포함합니다.
  • proofs/: 시스템 아키텍처 다이어그램, 실행 스크린샷, 벤치마크 그래프를 포함합니다.
  • exploit_poc/: 취약점 상태를 트리거하는 데 사용되는 CVE-2024-1086 무기화 개념 증명(Proof-of-Concept)에 연결되는 서브모듈입니다.

평가 및 벤치마크

이 프레임워크는 커스텀 컴파일된 Linux 6.6.0 커널을 실행하는 완전히 격리된 하드웨어 가속 QEMU 가상 실험실에서 엄격하게 평가되었습니다[cite: 1].

  • 적중률(Hit Rate): 클린 부팅 주기마다 100% 차단률을 달성하여 이중 해제를 완전히 무력화했습니다[cite: 1].
  • 메모리 오버헤드: 측정 가능한 RAM 비대화가 0%였습니다. 방어 모듈의 활성화 여부와 관계없이 시스템은 57MB의 RAM을 소비했습니다[cite: 1].
  • CPU 지연 시간: 비보호 기준 환경의 2.01초와 비교하여 파일시스템 순회를 2.25초에 처리하는, 매우 최소한의 I/O 지연 시간 오버헤드만을 부과했습니다[cite: 1].

감사의 말 및 출처 표기

  • 익스플로잇 개발: KOOBE-Guard 모듈의 방어 효능을 평가하는 데 사용된 원본 무기화 개념 증명(PoC) 익스플로잇은 Notselwyn이 작성했습니다. 수정되지 않은 익스플로잇 코드는 exploit_poc 디렉터리에 서브모듈로 연결되어 있습니다. 원본 저장소는 여기에서 확인하세요: Notselwyn/CVE-2024-1086.
  • 연구 기반: 본 연구는 Chen et al.이 개발한 원본 KOOBE 분석 도구(USENIX 2020)의 기초 개념을 확장합니다[cite: 1].

라이선스

이 프로젝트는 GPL-2.0 라이선스에 따라 사용이 허가됩니다. 자세한 내용은 LICENSE 파일을 참조하세요.

도구 다운로드