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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
ghost — 악성코드에 사용되는 프로세스 인젝션 및 메모리 조작을 탐지합니다. RWX 영역, 셸코드 패턴, API 후킹, 스레드 하이재킹, 프로세스 할로잉을 찾아냅니다. 속도를 위해 Rust로 제작되었습니다. CLI 및 TUI 인터페이스를 포함합니다. | Kitploit
도구/GitHubGitHub/pandaadir05/ghost
Defensive ToolsMemory ForensicsReverse EngineeringForensicsMalware AnalysisBinary AnalysisThreat IntelligenceMachine LearningIncident Response
GitHubpandaadir05/ghost

ghost

악성코드에 사용되는 프로세스 인젝션 및 메모리 조작을 탐지합니다. RWX 영역, 셸코드 패턴, API 후킹, 스레드 하이재킹, 프로세스 할로잉을 찾아냅니다. 속도를 위해 Rust로 제작되었습니다. CLI 및 TUI 인터페이스를 포함합니다.

3824861개월 전Kitploit 검토 완료

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유
저장소 보기

Ghost

CI License: MIT

Ghost는 Rust로 작성된 프로세스 인젝션 탐지 도구입니다. 실행 중인 프로세스를 감시하며 코드 인젝션, 메모리 조작, 그리고 맬웨어가 숨기기 위해 사용하는 기타 트릭과 같은 의심스러운 활동을 포착하려고 시도합니다.

기능

핵심 아이디어는 간단합니다. 프로세스를 스캔하여 이상한 메모리 패턴, 후킹된 함수, 셸코드 등 변조의 징후를 찾는 것입니다. Windows, Linux, macOS에서 작동합니다 (현재 Windows 지원이 가장 완전합니다).

탐지 가능한 항목:

  • 읽기-쓰기-실행 권한이 있는 메모리 영역 - 일반적으로 위험 신호
  • 셸코드 패턴 - 인젝션된 코드에서 발견되는 일반적인 명령어 시퀀스
  • 프로세스 할로잉 - 합법적인 프로세스가 대체되어 악성 코드로 교체되는 경우
  • API 후킹 - 인라인 패치나 IAT 수정으로 리디렉션된 함수
  • 스레드 하이재킹 - 셸코드를 실행하도록 리디렉션된 스레드
  • APC 인젝션 - 비동기 프로시저 호출을 통해 큐에 추가된 악성 코드
  • YARA 시그니처 - 알려진 맬웨어 패턴 및 페이로드에 대한 매칭

또한 탐지된 행동을 MITRE ATT&CK 프레임워크에 매핑하여 위협 문서화나 보고서 작성에 도움을 줍니다.

스크린샷

탐지 대시보드

Ghost TUI - 탐지 개요

활성 위협

탐지된 맬웨어

실시간 모니터링

실시간 프로세스 분석 로그

빌드 방법

Rust (1.70 이상)가 설치되어 있어야 합니다. 그런 다음:

root@kitploit:~
cargo build --release

Windows에서는 MSVC 빌드 도구도 필요합니다. Linux는 기본 개발 도구(gcc 등)가 필요하고, macOS는 Xcode 명령줄 도구가 필요합니다.

실행 방법

두 가지 인터페이스가 있습니다: 명령줄 도구와 대화형 터미널 UI.

CLI:

root@kitploit:~
# 모든 프로세스 스캔
cargo run --bin ghost-cli --release

# 특정 프로세스 대상
cargo run --bin ghost-cli --release -- --pid 1234

# 결과를 JSON으로 출력
cargo run --bin ghost-cli --release -- --format json

# 설정 파일 사용
cargo run --bin ghost-cli --release -- --config ghost.toml

# 지속적 모니터링 모드
cargo run --bin ghost-cli --release -- --watch

# 사용자 정의 간격으로 감시 (10초)
cargo run --bin ghost-cli --release -- --watch --interval 10

TUI:

root@kitploit:~
cargo run --bin ghost-tui --release

TUI는 실시간 통계, 탐지 기록이 포함된 대시보드를 제공하며 키보드 단축키(Tab으로 보기 전환, Q로 종료)로 탐색할 수 있습니다.

셸 완성

Ghost는 Bash, Zsh, Fish, PowerShell, Elvish에서 탭 완성을 지원합니다.

root@kitploit:~
# 셸에 맞는 완성 생성
ghost completions bash > /etc/bash_completion.d/ghost
ghost completions zsh > ~/.zfunc/_ghost
ghost completions fish > ~/.config/fish/completions/ghost.fish

# 또는 설치 스크립트 사용
./completions/install.sh

자세한 설치 방법은 completions/README.md를 참조하세요.

선택적 기능

Ghost는 빌드 시 활성화할 수 있는 선택적 기능을 지원합니다:

root@kitploit:~
# YARA 규칙 스캔 (libyara 필요)
cargo build --features yara-scanning

# 신경망 ML 통합 (Python 및 훈련된 모델 필요)
cargo build --features neural-ml

# eBPF 탐지 (Linux만 해당, 현재 스텁 구현)
cargo build --features ebpf-detection

참고: ML 기능은 기능을 발휘하려면 훈련된 모델이 필요합니다. 훈련 방법은 ghost_ml/README.md를 참조하세요.

설정

TOML 설정 파일로 동작을 조정할 수 있습니다. 시작점으로 examples/ghost.toml을 확인하세요. 특정 탐지 방법을 활성화/비활성화하고, 신뢰도 임계값을 설정하고, 시스템 프로세스를 건너뛰고, 스캔 간격을 제어할 수 있습니다.

설정 파일 예시:

root@kitploit:~
shellcode_detection = true
hollowing_detection = true
hook_detection = true
confidence_threshold = 0.3
skip_system_processes = true
scan_interval_ms = 2000

출력 크기 제어

기본적으로 Ghost는 탐지당 10개의 지표로 출력을 제한하고 유사한 발견 사항을 중복 제거합니다. 대규모 스캔의 경우 출력을 더 줄일 수 있습니다:

명령줄 옵션:

root@kitploit:~
# 요약 모드 - 전체 세부 정보 대신 통계 출력
ghost-cli --summary

# 탐지당 지표 제한
ghost-cli --max-indicators 5

# 악성 탐지만 보고
ghost-cli --min-threat-level malicious

# 최소 출력을 위해 결합
ghost-cli --summary --quiet

설정 파일:

root@kitploit:~
[output]
verbosity = "minimal"          # minimal, normal, 또는 verbose
max_indicators_per_detection = 5
min_threat_level = "suspicious"
deduplicate_indicators = true
summary_mode = true

이는 많은 프로세스를 스캔하거나 출력 파일이 너무 커질 수 있는 지속적 모니터링을 실행할 때 유용합니다.

감시 모드

감시 모드를 사용하면 수동으로 스캔을 실행할 필요 없이 시스템을 지속적으로 모니터링할 수 있습니다. 인젝션 시도를 실시간으로 포착하는 데 유용합니다.

root@kitploit:~
# 감시 시작 (기본값: 5초 간격)
ghost-cli --watch

# 사용자 정의 간격
ghost-cli --watch --interval 10

# 특정 프로세스 감시
ghost-cli --watch --pid 1234

# 조용한 모드 - 새로운 탐지에만 알림
ghost-cli --watch --quiet

감시 모드에서 Ghost는:

  • 새로운 탐지만 표시 (이전에 보지 못한 것)
  • 색상으로 구분된 위협 수준 표시 (빨간색 = 악성, 노란색 = 의심)
  • 각 스캔 주기마다 타임스탬프 출력
  • Ctrl+C로 정상 종료

출력 예시:

root@kitploit:~
[14:32:15] Scan #1: clean (142 processes, 89ms)
[14:32:20] Scan #2: 2 NEW detections! (2 total, 142 processes, 91ms)
  [MALICIOUS] suspicious.exe (PID: 4521) - 87% confidence
  [SUSPICIOUS] helper.dll (PID: 2201) - 54% confidence
[14:32:25] Scan #3: 2 known threats (142 processes, 88ms)

기준선 모드

기준선 모드는 시스템의 현재 상태 스냅샷을 캡처합니다. 이후 스캔에서 이 기준선과 비교하여 변경 사항을 탐지할 수 있습니다. 알려진 문제를 일일이 확인하지 않고 새로운 위협을 찾는 데 유용합니다.

root@kitploit:~
# 현재 상태를 기준선으로 저장
ghost-cli --save-baseline baseline.json

# 나중에: 기준선과 비교
ghost-cli --baseline baseline.json

# 감시 모드와 결합
ghost-cli --watch --baseline baseline.json

기준선과 비교할 때 Ghost는 다음을 보고합니다:

  • 새로운 위협: 기준선에 없는 프로세스
  • 격상된 위협: 위협 수준이 증가한 프로세스
  • 새로운 지표: 새로운 의심스러운 행동을 보이는 알려진 프로세스

출력 예시:

root@kitploit:~
3 changes from baseline:

  New threats (1):
    injector.exe (PID: 8821) - Malicious

  Escalated threats (1):
    helper.dll (PID: 2201): Suspicious -> Malicious

  New indicators (1):
    svchost.exe (PID: 1024):
      - RWX memory region detected
      - Shellcode pattern match

변경 사항이 감지되면 종료 코드 1, 깨끗하면 0을 반환합니다.

웹훅 알림

Ghost는 위협이 탐지될 때 Slack, Discord 또는 모든 HTTP 엔드포인트로 실시간 알림을 보낼 수 있습니다. SOC 통합 또는 휴대폰으로 알림을 받는 데 적합합니다.

root@kitploit:~
# Slack 웹훅
ghost-cli --watch --webhook "https://hooks.slack.com/services/XXX/YYY/ZZZ"

# Discord 웹훅
ghost-cli --watch --webhook "https://discord.com/api/webhooks/123/abc"

# 일반 HTTP POST (JSON 페이로드)
ghost-cli --watch --webhook "https://your-siem.example.com/api/alerts"

# 자동 탐지된 유형 재정의
ghost-cli --webhook "https://custom.url" --webhook-type slack

Ghost는 URL에서 웹훅 유형을 자동 탐지합니다:

  • hooks.slack.com → 첨부 파일이 포함된 Slack 형식
  • discord.com/api/webhooks → 임베드가 포함된 Discord 형식
  • 기타 모든 URL → 일반 JSON 페이로드

Slack 알림에는 위협 수준, 신뢰도 점수 및 주요 지표가 포함된 색상 코드 첨부 파일이 포함됩니다:

root@kitploit:~
🚨 Ghost detected suspicious activity on *prod-server-01*
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
🚨 suspicious.exe (PID: 4521)
• RWX memory region detected at 0x7ff...
• Shellcode pattern: NOP sled
Threat Level: Malicious | Confidence: 87%

Discord 알림은 깔끔한 형식의 리치 임베드를 사용합니다.

일반 웹훅은 JSON 페이로드를 전송합니다:

root@kitploit:~
{
  "event": "ghost.detection",
  "timestamp": "2024-12-06T14:32:15Z",
  "hostname": "prod-server-01",
  "process_name": "suspicious.exe",
  "pid": 4521,
  "threat_level": "Malicious",
  "confidence": 0.87,
  "indicators": ["RWX memory region detected", "..."]
}

결과의 의미

Ghost가 의심스러운 것을 발견하면 위협 수준을 Clean, Low, Medium, High, Critical로 할당합니다. 이는 발견된 지표의 개수와 심각도에 기반합니다.

높은 신뢰도가 항상 맬웨어를 의미하는 것은 아닙니다. 일부 합법적인 소프트웨어도 메모리에서 이상한 일을 합니다. 필요하면 판단을 내리고 추가 조사하세요.

플랫폼 차이

Windows: 완전히 작동합니다. 프로세스 열거, 메모리 읽기, 후크 탐지, 프로세스 할로잉 탐지, PE 유효성 검사 및 스레드 분석이 모두 작동합니다.

Linux: 핵심 기능이 작동합니다. procfs(/proc)를 통한 프로세스 열거, 메모리 읽기, LD_PRELOAD 탐지 및 ptrace 기반 인젝션 탐지가 작동합니다. eBPF 지원은 ebpf-detection 기능 플래그가 필요하며 현재 스텁 구현입니다.

macOS: 부분 지원. 프로세스 열거, 메모리 영역 열거, 메모리 읽기 및 스레드 열거가 mach VM API를 사용하여 작동합니다. 후크 탐지에는 DYLD_INSERT_LIBRARIES 탐지 및 인라인 후크 탐지 프레임워크가 포함됩니다.

성능

지속적 모니터링에 충분히 빠르게 설계되었습니다. 전체 시스템 스캔(200개 프로세스)은 일반적으로 5초 미만이 소요됩니다. 프로세스당 메모리 열거는 약 50-100ms입니다. 탐지 엔진 자체는 분석당 약 5-10ms를 추가합니다.

YARA 규칙

이 도구에는 YARA 규칙 통합이 포함되어 있습니다. 규칙은 rules/ 디렉토리에 저장되며 Metasploit, Cobalt Strike, 일반적인 셸코드 패턴 및 회피 기법과 같은 일반적인 맬웨어 군을 다룹니다. 자신의 규칙을 추가할 수 있습니다. 해당 폴더에 .yar 파일을 넣으면 됩니다.

종료 코드

  • 0 = 모든 것이 깨끗함
  • 1 = 의심스러운 프로세스 발견
  • 2 = 오류 발생 (스캔 중 문제)

한계

이것은 사용자 공간 도구이며 다음과 같은 한계가 있습니다:

  • 커널 수준 위협: 커널 수준 지원 없이는 커널 루트킷이나 커널 모드 인젝션을 탐지할 수 없습니다 (예: Linux의 eBPF는 현재 스텁 구현)
  • 머신러닝 기능: 신경망 분석 및 행동 ML 예측은 시뮬레이션된 것이며 훈련된 모델이 필요합니다
  • 위협 인텔리전스: 위협 인텔리전스 프레임워크가 존재하지만 활성 피드 연결이나 IOC 데이터베이스는 없습니다
  • 오탐: 게임 안티치트, 디버거, 샌드박스, JIT 컴파일러가 있는 브라우저와 같은 합법적인 소프트웨어는 메모리 조작 기술로 인해 탐지를 유발할 수 있습니다
  • macOS: 후크 탐지가 DYLD_INSERT_LIBRARIES 및 nm 기반 함수 주소 확인을 사용하는 인라인 후크 탐지로 완전히 구현되었습니다
  • 성능 주장: 문서화된 성능 메트릭은 목표이며 포괄적인 벤치마크를 통해 검증되지 않았습니다

문서

더 자세한 내용은 docs/ 폴더에 있습니다:

  • DETECTION_METHODS.md - 각 탐지 기술의 작동 방식 설명
  • MITRE_ATTACK_COVERAGE.md - 적용되는 ATT&CK 기술 목록
  • PERFORMANCE_GUIDE.md - 성능 튜닝 팁

또한 기여하려면 CONTRIBUTING.md, 보안 정책은 SECURITY.md를 확인하세요.

라이선스

MIT. LICENSE 파일을 참조하세요.

사용에 관한 참고 사항

이 도구는 보안 연구, 자신의 시스템 테스트, 실제 위협 탐지를 위한 것입니다. 소유하지 않거나 테스트 권한이 없는 시스템에서 사용하지 마세요. 책임감 있게 사용하세요.

또한 실제 사고를 조사하는 경우 맬웨어가 분석 중임을 감지하고 다르게 행동하거나 종료할 수 있음을 기억하세요. Ghost는 은밀하게 작동하려고 하지만 고급 맬웨어가 눈치채지 못할 것이라는 보장은 없습니다.

도구 다운로드