Skip to content
KitploitKITPLOIT
도구익스플로잇블로그
Log in
제출
도구익스플로잇블로그
제출

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

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

피드문의개인정보© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
TraceTree — 러닝타임 행동 분석 도구로, 의심스러운 패키지를 Docker에서 샌드박싱하고, strace로 시스템 콜을 추적하며, 프로세스 계층 구조를 방향성 그래프로 매핑하고, YARA 시그니처, ML 이상 탐지, 시간적 패턴 분석을 통해 공급망 공격을 탐지합니다. | Kitploit
도구/GitHubGitHub/tejasprasad2008-afk/tracetree
Container SecurityDynamic Analysis (Sandboxing)Malware AnalysisDevSecOpsThreat IntelligenceSupply Chain SecurityMachine LearningLearning & EducationIncident Response
GitHubtejasprasad2008-afk/tracetree

TraceTree

러닝타임 행동 분석 도구로, 의심스러운 패키지를 Docker에서 샌드박싱하고, strace로 시스템 콜을 추적하며, 프로세스 계층 구조를 방향성 그래프로 매핑하고, YARA 시그니처, ML 이상 탐지, 시간적 패턴 분석을 통해 공급망 공격을 탐지합니다.

426241개월 전Kitploit 검토 완료

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유
저장소 보기웹사이트

TraceTree

TraceTree Banner

TraceTree Demo

TraceTree(cascade-analyzer)는 에이전트 시대를 위해 설계된 자율 보안 유기체입니다. 단순한 스캐닝을 넘어 견고하고 강화된 확장형 탐지 생태계로 발전합니다. 마스코트인 거미처럼, TraceTree는 여덟 개의 특화된 "다리"를 사용하여 개발 워크플로우 주변에 포괄적인 보호망을 엮습니다.

목차

  • 저장소 구조
  • 행동 영수증 내보내기
  • TraceTree 거미의 8개 다리
  • 작동 방식
  • 탐지 대상
    • 행동 시그니처
    • 시간적 패턴
  • 지원 대상
  • 빠른 시작(설치로 건너뛰기)
    • 전제 조건
    • 설치
    • 분석 실행
  • CLI 참조
  • MCP 서버 보안 분석
  • 아키텍처 개요
  • 제한 사항 및 사각지대

행동 영수증 내보내기

TraceTree는 에이전트 또는 사람이 패키지 설치를 신뢰하기 전 검토 게이트로 사용될 수 있습니다. 원시 시스템 호출 로그를 노출하지 않고 대상 해시, 샌드박스 정책, 관찰된 행동, 아티팩트 해시, 평결 및 개인정보 기본값을 요약하는 작은 JSON/SARIF 친화적 영수증 형태는 행동 영수증 내보내기를 참조하세요.

저장소 구조```

TraceTree/ ├── api/ # API stubs ├── codebase-analysis-docs/ # Architecture documents and knowledge guides ├── data/ # Behavioral signatures, rules, and training datasets ├── docs/ # Documentation assets ├── examples/ # Demo scripts and usage examples ├── frontend/ # Next.js/React web dashboard ├── graph/ # NetworkX directed graph builder ├── hooks/ # Git/Shell hooks for background monitoring ├── logs/ # Execution trace logs and strace outputs ├── macapp/ # Native macOS menu bar app ├── mascot/ # Console ASCII spider mascot ├── mcp/ # MCP server security testing module ├── ml/ # Machine learning classification and anomaly detection ├── monitor/ # Core syscall parser, YARA matching, and timelines ├── orchestrator/ # TypeScript multi-agent coordination server ├── repocheckai/ # Repository analysis engine (TypeScript/Node) ├── samples/ # Malware and benign files for sandbox tests ├── sandbox/ # Docker container manager and strace sandbox ├── test_targets/ # Mock packages/servers for detection testing ├── tests/ # Unit, integration, and system tests ├── watcher/ # File system change listener daemon └── worker/ # Background task execution worker

## 트레이스트리 거미의 8개의 다리

1.  **다리 1: 샌드박스 격리 (함정)** — 격리된 Docker 컨테이너(또는 고성능 `direct` 모드)에서 대상을 실행하여 위협을 물리적으로 차단합니다.
2.  **다리 2: 시스템 콜 파싱 (신경계)** — 프로세스가 OS에 보내는 모든 "진동"(시스템 콜)을 모니터링하는 고정밀 엔진입니다.
3.  **다리 3: 행동 그래프 (거미줄)** — NetworkX 방향 그래프를 사용하여 프로세스, 파일, 네트워크 노드가 상호작용하는 "계단식 효과"를 매핑합니다.
4.  **다리 4: ML 이상 탐지 (직감)** — 소규모 대표적인 정상/악성 패키지 데이터셋과 선택적인 실시간 MalwareBazaar 피드로 훈련된 맞춤형 Random Forest 모델로, 높은 신뢰도로 악성 의도를 예측합니다.
5.  **다리 5: YARA 서명 매칭 (기억)** — 알려진 악성코드 DNA 및 익스플로잇 패턴(리버스 셸, 암호화폐 채굴기 등)의 통합 라이브러리입니다.
6.  **다리 6: MCP 보안 프로토콜 (에이전트 방패)** — Model Context Protocol 서버를 위한 특화된 보호 기능으로, AI 에이전트가 사용하는 도구를 방어합니다.
7.  **다리 7: 보안 가디언 AI (사전 예방적 거미줄)** — 로컬 LLM(Qwen-Coder)을 사용하여 커밋 전에 유출 및 주입을 탐지하는 "스마트 스캐너"입니다.
8.  **다리 8: 시간적 및 N-gram 분석 (DNA 스캔)** — 시간에 따른 행동의 *리듬*과 *순서*로 위협을 식별합니다.

## 작동 방식```
target ──► Docker sandbox (network dropped) ──► strace -t -f
                                               │
                                               ▼
                                          strace log
                                               │
                              ┌────────────────┼────────────────┐
                              ▼                ▼                ▼
                        strace parser      signature       temporal
                        (parser.py)     matcher (sigs)    analyzer
                              │                │                │
                              └───────┬────────┴────────────────┘
                                      ▼
                              NetworkX graph
                              (builder.py)
                                      │
                                      ▼
                          ML anomaly detection
                          (RandomForest / IsolationForest)
                                      │
                                      ▼
                                 verdict
  1. 샌드박스 — 대상은 Docker 컨테이너 내에서 실행됩니다. 설치/실행이 시작되기 전에 네트워크가 차단됩니다(ip link set eth0 down). 따라서 외부 연결 시도는 기록되지만 차단됩니다.
  2. strace — 모든 시스템 호출은 strace -t -f -e trace=all로 추적됩니다. -t 플래그는 시간 분석을 위한 타임스탬프를 추가하고, -f는 자식 프로세스를 추적합니다.
  3. 파서 (monitor/parser.py) — 다중 행 strace 출력과 [pid] 및 bare-pid 형식을 모두 처리하는 정규식 기반 파서입니다. 프로세스 생성, 파일 접근, 네트워크 연결 및 메모리 작업을 추출합니다. 각 시스템 호출은 보안 관련성에 따라 심각도 가중치(0–9)가 할당됩니다.
  4. 시그니처 매칭 (monitor/signatures.py) — 구문 분석된 이벤트 스트림을 data/signatures.json에 정의된 8가지 행동 시그니처 패턴과 매칭합니다. 각 매치가 발생시킨 특정 이벤트를 나열하는 증거를 생성합니다.
  5. 시간 분석 (monitor/timeline.py) — 타임스탬프가 있는 이벤트 스트림에서 5가지 시간 기반 행동 패턴을 감지합니다(예: 자격 증명 읽기 후 5초 이내 외부 연결).
  6. 그래프 (graph/builder.py) — 프로세스, 파일, 네트워크 노드가 있는 NetworkX 방향 그래프를 구축합니다. 5초 창 내 동일 PID의 연속 이벤트 사이에 시간적 엣지를 추가합니다.
  7. ML (ml/detector.py) — 그래프와 구문 분석된 데이터에서 10개 특징 벡터를 추출합니다. 훈련된 모델이 있으면 RandomForestClassifier를 사용하고, 그렇지 않으면 10개의 하드코딩된 클린 패키지 기준선으로 훈련된 IsolationForest로 대체됩니다. 심각도 점수와 시간 패턴 수가 최종 신뢰도를 높입니다.

감지하는 것

행동 시그니처 (8가지 패턴)

data/signatures.json에 정의되어 있습니다. 각 시그니처에는 심각도(1–10), 필요한 시스템 호출, 파일 패턴, 네트워크 조건 및 일치시킬 순서 있는 시퀀스가 있습니다.

시그니처심각도탐지 내용
reverse_shell10외부 연결 → dup2 → execve /bin/sh
container_escape10/proc/1/, /sys/fs/cgroup, /var/run/docker.sock의 openat
credential_theft9/etc/shadow, .ssh/, .aws/의 openat → 외부 연결
typosquat_exfil9비밀 읽기 (.env, .npmrc) → pastebin/file.io/transfer.sh에 연결
process_injection9mprotect PROT_EXEC → 비표준 바이너리의 execve
crypto_miner8clone → clone → 마이닝 풀 포트(3333, 4444, 14444, 45700)에 연결
dns_tunneling7getaddrinfo + sendto + socket on port 53/5353
persistence_cron7crontab 경로의 openat → 쓰기

시간 패턴 (5가지 패턴)

타임스탬프가 있는 strace 출력에서 감지됩니다. strace -t 플래그 필요(기본적으로 활성화됨).

패턴심각도트리거 조건
connect_then_shell10외부 연결 → 3초 이내 execve /bin/sh
credential_scan_then_exfil9민감한 파일 읽기 → 5초 이내 외부 연결
delayed_payload810초 이상의 간격 후 의심스러운 활동의 폭발(드로퍼 행동)
rapid_file_enumeration71초 이내 10개 이상의 파일 열기(스캐닝 행동)
burst_process_spawn72초 이내 5개 이상의 clone/execve

심각도 가중치 시스템 호출 점수

24가지 시스템 호출 유형 각각에는 기본 심각도 가중치가 있습니다. 예:

  • mprotect with PROT_EXEC: 9.0
  • dup2 after a connect: 9.0
  • execve of unexpected binary: 7.0
  • connect to cloud metadata (169.254.x.x): 8.0
  • connect to PyPI/npm CDN: 0.0 (양성)
  • openat of /usr/lib/python/*: 0.0 (양성)

총 심각도 점수는 ML 신뢰도 계산에 사용됩니다.

네트워크 대상 분류

모든 connect 시스템 호출은 네 가지 범주 중 하나로 분류됩니다.

범주기준위험 점수
safe_registryIP가 알려진 PyPI/npm/GitHub CDN 범위와 일치0.0
known_benign분류되지 않은 호스트의 표준 웹 포트(80/443)0.5
suspicious클라우드 메타데이터(169.254.x.x), 컨테이너의 개인 IP, 또는 의심스러운 포트(4444, 1337, 31337 등)8.0–9.0
unknown기본값3.0

지원 대상

도구 다운로드