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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
HTSOC — CVE-2024-4577 탐지 및 대응을 위한 재현 가능한 SOC 랩 | Kitploit
도구/GitHubGitHub/nktris/htsoc
Indicator of Compromise (IOC) ManagementThreat Feeds & AggregatorsVulnerability AnalysisScripting & AutomationThreat IntelligenceIntrusion DetectionLearning & EducationIncident ResponseLog AnalysisLabs & Practice
GitHubnktris/htsoc
81개월 전아직 검토되지 않음

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

HTSOC

CVE-2024-4577 탐지 및 대응을 위한 재현 가능한 SOC 랩

저장소 보기

HTSOC — 통합 SOC 시스템: 이벤트 모니터링, 탐지 및 조사

HTSOC는 랩 환경에서 자체 구축한 Security Operations Center 시스템입니다. 이 시스템은 로그 수집, Splunk 기반 탐지, TheHive 기반 알림/케이스 관리, Cortex 기반 Observable 분석, MISP 또는 VirusTotal을 통한 IOC 조회를 결합하고, n8n과 Telegram을 통해 알림을 조율합니다.

CVE-2024-4577은 다계층 탐지 역량을 검증하기 위한 하나의 use case일 뿐이며, 전체 프로젝트는 특정 CVE에 국한되지 않습니다.

목차

  • 목표
  • 전체 아키텍처
  • 구성 요소
  • 처리 흐름
  • 탐지 역량
  • 저장소 구조
  • 배포
  • 테스트 및 평가
  • 라이브 시스템 인벤토리
  • 운영 Runbook
  • 테스트 체크리스트

목표

이 시스템은 완전한 SOC 프로세스를 시뮬레이션합니다:

  1. Linux, Windows, Apache 및 Sysmon에서 텔레메트리 수집.
  2. Splunk에서 index/sourcetype별 로그 정규화.
  3. SPL, correlation search, allowlist 및 risk scoring을 통한 의심스러운 행위 탐지.
  4. 분석가가 추가 조사를 진행할 수 있도록 Observable이 포함된 알림 생성.
  5. TheHive에서 알림/케이스 관리.
  6. 분석가가 각 Observable을 선택하여 Cortex에서 해당 analyzer를 실행할 수 있도록 허용.
  7. MISP를 통한 내부 IOC 조회 또는 VirusTotal을 통한 외부 소스 조회.
  8. 알림 및 분석 결과를 Telegram으로 전송.
  9. MTTD, MTTN, MTTR, false positive 및 duplicate rate 측정.

전체 아키텍처

root@kitploit:~
flowchart LR
    K[Kali 또는 테스트 소스] --> W[Windows/XAMPP + Apache/PHP-CGI]
    L[Linux endpoint] --> F[Universal Forwarder]
    W --> A[Apache access/error log]
    W --> S[Windows Security + Sysmon]
    A --> F
    S --> F
    F --> SP[Splunk]
    L --> F
    SP -->|Alert webhook| TH[TheHive]
    TH -->|Alert + Observable| N[n8n]
    N --> T[Telegram]
    N -->|분석가가 선택한 Analyzer| C[Cortex]
    C --> M[MISP]
    C --> V[VirusTotal]
    M --> N
    V --> N
    N --> T

참조 랩 토폴로지

위 주소는 랩 전용입니다. 재배포 시 환경 변수로 대체하고 서비스를 인터넷에 노출하지 마십시오.

구성 요소

데이터 수집 계층

  • Apache는 source IP, HTTP method, URI, status 및 User-Agent를 기록합니다.
  • Windows Security는 로그인, 프로세스 생성, 서비스 및 권한 변경을 기록합니다.
  • Sysmon은 프로세스 체인, 명령줄, ProcessGuid, 파일, 레지스트리 및 네트워크 증거를 추가로 기록합니다.
  • Linux auth/syslog는 인증 활동 및 Linux 시스템 이벤트를 기록합니다.
  • Universal Forwarder는 정의된 input/sourcetype에 따라 로그를 Splunk로 전달합니다.

Splunk 탐지 계층

Splunk는 시스템의 탐지 허브입니다. 검색은 brute force 로그인, 의심스러운 NTLM 네트워크 로그온, 높은 권한 그룹 변경, SMB를 통한 lateral movement, 새 Windows 서비스 생성, 인코딩된 PowerShell 및 PHP-CGI argument injection을 다룹니다.

조사 관리 계층

TheHive는 Splunk에서 알림을 수신하고, severity/source/title을 표시하며, Observable을 저장하고 분석가가 알림을 케이스로 전환할 수 있게 합니다. Cortex는 TheHive에서 Observable을 받아 analyzer를 실행합니다. MISP와 VirusTotal은 두 가지 병렬 분석 옵션이며, 직렬 실행은 필수가 아닙니다.

오케스트레이션 계층

n8n은 TheHive에서 webhook을 수신하고 초기 SOC 알림을 Telegram으로 전송합니다. 분석가가 Observable을 클릭하면 n8n이 callback을 처리하고, analyzer를 결정하고, Cortex job을 생성하고, 보고서를 기다린 후 결과를 Telegram으로 전송합니다. update_id, callback_query_id, suppression 및 job ID 메커니즘은 중복 실행을 방지합니다.

처리 흐름

알림 흐름

root@kitploit:~
로그 생성
  → Universal Forwarder
  → Splunk search/correlation
  → TheHive alert
  → n8n webhook
  → Telegram SOC Alert

Observable 분석 흐름

root@kitploit:~
분석가가 Telegram에서 Observable 클릭
  → Telegram callback
  → n8n이 callback에 즉시 응답
  → TheHive에서 Observable 다시 조회
  → Observable 유형 및 analyzer 확인
  → Cortex가 job 생성
  → n8n이 대기 후 보고서 수신
  → Telegram이 결과 전송

n8n은 알림 도착 시 모든 Observable을 자동으로 실행하지 않습니다. Analyzer는 분석가가 선택할 때만 실행되므로 비용이 절감되고 중복 알림이 줄어들며 조사에 대한 통제권이 유지됩니다.

탐지 역량

기본 탐지

기본 탐지는 config/splunk/core-savedsearches.conf에 있으며, 정상 활동을 제외하는 lookup이 포함됩니다:

CVE-2024-4577 Use Case

이 use case는 두 계층으로 구성됩니다:

  • Phase 1은 Apache URI를 분석하고, 다중 계층 디코딩을 수행하며, PHP endpoint 조합, 비정상적인 인코딩, -d 옵션, 민감한 PHP INI 이름 또는 php://input을 찾습니다. 이는 의심 신호입니다.
  • Phase 2는 제한된 시간 창 내에서 Windows Security/Sysmon과 대조합니다. php-cgi.exe가 생성한 의심스러운 자식 프로세스는 강력한 증거이며, 파일/레지스트리/네트워크는 보조 증거입니다.

Sigma 형식의 규칙 메타데이터는 detections/sigma/cve-2024-4577-php-cgi-argument-injection.yml에 있습니다. Splunk에서 실행되는 검색은 config/splunk/install-cve-detections.ps1에 있습니다.

저장소 구조

root@kitploit:~
config/
├── forwarder/       Windows 및 Linux input/output 구성
├── misp/             내부 조회용 시뮬레이션 IOC
├── n8n/              TheHive–Telegram–Cortex 워크플로우 템플릿
├── splunk/           saved search, lookup 및 correlation 스크립트
└── sysmon/           Windows 텔레메트리 구성
deploy/              시크릿이 제거된 Docker Compose 템플릿
detections/
└── sigma/            벤더 독립적인 규칙 메타데이터
scripts/
├── splunk/           API를 통한 검색 업데이트
├── validation/       readiness 확인
└── windows/          랩 대상 머신 텔레메트리 설치
docs/                 운영 문서 및 Telegram callback 문서

소스와 라이브 시스템 간의 대조는 시스템 인벤토리에 있습니다. 시크릿이 제거된 실제 n8n 워크플로우 매니페스트는 config/n8n/live-workflow-manifest.json에 있으며, 작은 가져오기용 템플릿 파일은 새 랩을 안전하게 구축하기 위해 별도로 유지됩니다.

배포

Docker 스택

root@kitploit:~
cp deploy/docker-compose.soc.example.yml deploy/docker-compose.yml
cp .env.example .env
# 시크릿 매니저 또는 로컬 .env 파일로 시크릿 입력.
docker compose -f deploy/docker-compose.yml config
docker compose -f deploy/docker-compose.yml up -d
docker compose -f deploy/docker-compose.yml ps

Compose 템플릿은 TheHive, Cortex, MISP, Cassandra, Elasticsearch, MinIO, Redis 및 MISP 모듈을 배포합니다. n8n은 현재 호스트 서비스로 운영되며 워크플로우 구성은 config/n8n/에 있습니다.

Windows 및 Splunk

root@kitploit:~
# Windows 랩에서 PowerShell 관리자 권한으로 실행
.\scripts\windows\install-lab-telemetry.ps1

# Splunk 머신에서, 소스 코드에 비밀번호를 기록하지 않음
$env:SPLUNK_PASSWORD = '<local-secret>'
.\config\splunk\install-cve-detections.ps1
python .\scripts\splunk\update-correlation-searches.py

# readiness 확인
.\scripts\validation\check-system-readiness.ps1

n8n, TheHive, Cortex 및 MISP

  1. n8n에 워크플로우 템플릿을 가져옵니다.
  2. TheHive, Cortex 및 Telegram용 개별 자격 증명을 생성합니다.
  3. TheHive webhook이 n8n을 가리키도록 구성합니다.
  4. Cortex에 해당 MISP/VirusTotal analyzer가 있는지 확인합니다.
  5. 필요한 경우 내부 MISP 이벤트에 샘플 IOC를 가져옵니다.

Callback 세부 사항은 docs/telegram-callback-setup.md에 있습니다.

테스트 및 평가

테스트는 하향식 순서로 진행됩니다:

  1. Apache/Sysmon이 로그를 생성합니다.
  2. Forwarder가 로그를 Splunk로 전달합니다.
  3. Splunk가 올바른 index/sourcetype으로 탐지 결과를 반환합니다.
  4. TheHive가 알림 및 Observable을 수신합니다.
  5. n8n이 webhook을 한 번 수신합니다.
  6. Telegram이 SOC 알림을 수신합니다.
  7. Callback이 정확히 하나의 Cortex job을 생성합니다.
  8. Telegram이 MISP 또는 VirusTotal 보고서를 수신합니다.

랩에서 사용되는 지표: 이벤트 발생부터 Splunk 탐지까지의 MTTD, 알림 발생부터 Telegram 통지까지의 MTTN, 알림 수신부터 triage/케이스 종료까지의 MTTR, False Positive Rate 및 Duplicate rate.

도구 다운로드
구성 요소역할참조 주소
Kali승인된 테스트 트래픽 생성 소스192.168.10.132
Windows/XAMPPApache/PHP-CGI 및 Sysmon 대상 머신192.168.10.130:8080
Splunk수집, 검색, correlation 및 알림192.168.10.128
TheHive알림, 케이스 및 Observable 관리192.168.10.133:9000
Cortexanalyzer 실행192.168.10.133:9001
MISP내부 IOC 저장소192.168.10.133:443
n8nwebhook/callback 자동화192.168.10.133:5678
탐지주요 데이터목표
Brute Force LoginWindows Event ID 4625시간 창 내 여러 번의 실패한 로그인 시도
Suspicious NTLM LogonWindows Event ID 4624비정상적인 NTLM을 사용하는 network logon type 3
Privileged Group ChangeEvent ID 4732/4728/4756높은 권한 그룹에 계정 추가
Lateral Movement SMBEvent ID 4624단일 소스가 여러 호스트에 비정상적으로 접근
New Windows ServiceEvent ID 7045allowlist 외 새 서비스 생성
Encoded PowerShellEvent ID 4688-enc 또는 -EncodedCommand를 사용하는 PowerShell