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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
BloodSOCer — MITRE ATT&CK, Sigma 및 Atomic Red Team 데이터를 BloodHound 그래프로 집계하여 SOC 분석가가 탐지 범위를 매핑하고, 공백을 식별하며, Cypher 쿼리로 인시던트를 조사할 수 있게 합니다. | Kitploit
도구/GitHubGitHub/scoubi/bloodsocer
Defensive ToolsThreat Feeds & AggregatorsThreat IntelligenceIncident Response
GitHubscoubi/bloodsocer

BloodSOCer

MITRE ATT&CK, Sigma 및 Atomic Red Team 데이터를 BloodHound 그래프로 집계하여 SOC 분석가가 탐지 범위를 매핑하고, 공백을 식별하며, Cypher 쿼리로 인시던트를 조사할 수 있게 합니다.

저장소 보기
6178개월 전Kitploit 검토 완료

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

BloodSOCer

BloodSOCer 로고

BloodSOCer는 여러 소스(Mitre ATT&CK, Sigma 규칙, Atomic Red Team)에서 위협 인텔리전스 데이터를 수집하고 OpenGraph 형식으로 BloodHound에 수집하기 위한 JSON 파일을 생성하는 Python 자동화 도구입니다. BloodSOCer는 구성에 API 토큰이 정의되어 있으면 파일을 BloodHound에 업로드하고 사용자 지정 객체에 대한 아이콘을 설정할 수도 있습니다. 보안 분석가는 그런 다음 모든 각도에서 데이터를 시각화할 수 있으며, 시작하는 데 도움이 되는 몇 가지 Cypher 쿼리가 제공됩니다.

목표

이 프로젝트의 배경 아이디어는 SOC가 Mitre ATT&CK 프레임워크에 대한 적용 범위를 매핑하고, 인시던트 대응 중 블라인드 스팟이 있을 수 있는 위치를 신속하게 식별하도록 돕는 것입니다. 이상적으로 SOC는 Sigma의 "기성" 탐지 규칙이 아닌 자체 탐지 규칙을 매핑해야 합니다. 오해하지 마세요. Sigma는 제가 가장 좋아하는 오픈 소스 프로젝트 중 하나이지만, 대부분의 탐지 규칙은 실행 가능한 티켓을 생성하기보다는 컨텍스트/강화 또는 위협 헌팅 단서 생성에 더 적합합니다.

제가 SOC에 있을 때 우리는 종종 탐지 규칙이 ATT&CK 프레임워크에 어떻게 매핑되는지 보여주려고 노력했습니다. 저는 항상 BloodHound 유형의 그래프가 이에 완벽할 것이라고 생각했고, 이 프로젝트가 동료 블루 팀원들이 적용 범위와 다양한 요소들이 어떻게 서로 연결되어 있는지 시각화하는 데 도움이 되기를 바라며 만들었습니다.

ART를 수집하면 어떤 TTP가 테스트하기 쉬운지, 어떤 TTP는 쉽게 테스트할 수 없는지도 확인할 수 있습니다.

탐지/테스트가 없는 TTP에 대해 탐지 규칙이나 테스트를 만든다면 Sigma Rules와 ART를 원래 프로젝트에 다시 공유할 것을 적극 권장합니다.

기능

  • SigmaHound: Sigma 탐지 규칙 가져오기 및 처리
  • ARTHound: Atomic Red Team (ART) 테스트 가져오기 및 처리
  • 아이콘 정의: 위협 행위자 및 기법에 대한 BloodHound 아이콘 사용자 지정
  • 저장된 쿼리: UL-Cyphers.py 또는 --setup을 통해 번들된 Cypher 쿼리를 BloodHound로 가져오기
  • 일괄 업로드: 생성된 JSON 그래프를 BloodHound에 업로드하고 수집을 자동으로 트리거
  • 업로드 전용: 이미 파일이 있지만 새 BloodHound 인스턴스로 가져오거나 데이터베이스를 지운 경우
  • 데이터베이스 정리: 새로 가져오기 전에 API를 통해 BloodHound 인스턴스 초기화
  • 설정 도우미: 아이콘 업데이트와 저장된 쿼리 가져오기를 함께 실행하는 하나의 플래그
  • 2개의 TTP에 연결된 플레이북 1개: 이는 IR 플레이북을 ATT&CK에 매핑하고 데이터를 수집했을 때 어떤 모습인지 보여주기 위한 것입니다.
  • CLI 인터페이스: 개별 또는 모든 구성 요소를 실행하기 위한 간단한 명령줄 인수

요구 사항

  • Python 3.8+
  • 실행 중인 BloodHound 서버(기본값: http://127.0.0.1:8080)

선택 사항

  • BloodHound API 자격 증명(토큰 ID 및 토큰 키)
    • API 키를 제공하지 않으면 BloodSOCer는 다음을 수행할 수 없습니다.
      • 생성된 데이터 업로드(UI에서 수동으로 업로드할 수는 있음)
      • 이 프로젝트용 사용자 지정 Cypher 생성(UI에서 수동으로 업로드할 수는 있음)
      • 사용자 지정 아이콘 설정

설치

  1. 리포지토리를 클론합니다:

    root@kitploit:~
    git clone https://github.com/yourusername/BloodSOCer.git
    cd BloodSOCer
    
  2. 종속성을 설치합니다:

    root@kitploit:~
    pip3 install -r requirements.txt
    
  3. BloodSOCer.py에서 API 자격 증명을 구성합니다:

    root@kitploit:~
    apikey = "your-api-key-here"
    apiid = "your-api-id-here"
    

사용법

그냥 실행하기

root@kitploit:~
python3 BloodSOCer.py

도움말 표시

root@kitploit:~
python3 BloodSOCer.py -h

개별 헌드 실행

root@kitploit:~
python3 BloodSOCer.py --mitre, -m
python3 BloodSOCer.py --sigma, -s
python3 BloodSOCer.py --art, -r

아이콘 정의 실행

root@kitploit:~
python3 BloodSOCer.py --define-icons, -di

설정 실행(아이콘 + Cypher)

root@kitploit:~
python3 BloodSOCer.py --setup, -st

파일만 업로드

root@kitploit:~
python3 BloodSOCer.py --upload-only, -ul

모든 헌드를 실행하고 데이터 업로드

root@kitploit:~
python3 BloodSOCer.py --all, -a

여러 작업 결합

root@kitploit:~
python3 BloodSOCer.py --mitre --sigma --define-icons

데이터베이스의 모든 데이터 삭제

root@kitploit:~
python3 BloodSOCer.py --clear-db

참고: --define-icons 및 --upload-only의 경우 API 키와 API 시크릿이 BloodSOCer.py에 반드시 정의되어 있어야 합니다.

구성

BloodSOCer.py를 편집하여 다음을 사용자 지정합니다:

  • apikey: 사용자의 BloodHound API 키
  • apiid: 사용자의 BloodHound API ID
  • url: BloodHound 서버 URL(기본값: http://127.0.0.1:8080)

파일 구조

root@kitploit:~
BloodSOCer/
├── BloodSOCer.py              # 메인 엔트리 포인트
├── MitreHound.py              # MITRE ATT&CK 데이터 가져오기
├── ARTHound.py                # Atomic Red Team 데이터 가져오기
├── SigmaHound.py              # Sigma 규칙 데이터 가져오기
├── Define-Icons.py            # BloodHound 아이콘 사용자 지정 도구
├── UL-Cyphers.py              # 수집된 데이터를 쿼리하는 데 도움이 되는 사용자 지정 Cypher 업로드
├── Cyphers/                   # 저장된 쿼리(Cypher) JSON
├── ressources/                # 이미지/다이어그램(화살표 그래프, 로고)
├── README.md                  # 이 파일
├── requirements.txt           # Python 종속성
└── output/                    # 생성된 *_graph.json 파일

새 노드 및 엣지

노드

이 프로젝트는 다음 노드 유형을 추가합니다

  • TA_Group
    • 위협 행위자 그룹(Threat Actor Group)
  • Tactic
    • "Command and Control"과 같은 Mitre ATT&CK 전술(Tactic)
  • Technique
    • "OS Credential Dumping"과 같은 Mitre ATT&CK 기법(Technique)
    • "OS Credential Dumping: LSA Secrets"과 같은 Mitre ATT&CK 하위 기법(Sub-Technique)
  • Tool
    • "UACMe"와 같이 공격을 수행하는 데 사용되는 소프트웨어
  • Rule
    • 기법 또는 하위 기법을 탐지하기 위한 Sigma 규칙
  • ART
    • Atomic Red Team - 특정 기법 또는 하위 기법을 활용하는 테스트
  • Playbook
    • 공격자가 기법을 성공적으로 사용했을 때 사용할 수 있는 IRP과 같은 인시던트 대응 플레이북
    • 참고: IRP에는 Mitre ATT&CK 프레임워크 매핑이 없으므로 현재는 구현되어 있지 않습니다.

엣지

이 프로젝트는 다음 엣지/관계를 추가합니다

  • Exploits
    • 도구(Tool)가 (하위)기법을 Exploits(악용)
  • Uses
    • 위협 행위자(Threat Actor)가 도구(Tool) 또는 (하위)기법을 Uses(사용)
  • PartOf
    • 기법(Technique)이 전술(Tactic)의 PartOf(일부)
  • SubTechniqueOf
    • 하위 기법(Sub-Technique)이 기법(Technique)의 SubTechniqueOf(하위 기법)
  • DetectedBy
    • (하위)기법이 규칙(Rule)에 의해 DetectedBy(탐지됨)
  • TestedBy
    • (하위)기법이 ART에 의해 TestedBy(테스트됨)
  • InvestigateWith
    • (하위)기법이 플레이북(Playbook)으로 InvestigateWith(조사)

개념 그래프

BloodSOCer 화살표 그래프

이 Arrows.app 그래프의 json 파일을 다운로드하려면 여기를 클릭하세요.

출력 예시

Mimikatz를 사용하는 FIN7에 대한 탐지 FIN7 Mimikatz 탐지

FIN7이 사용하는 전술 Playbooks 쿼리

FIN7 활동에 대한 탐지 및 테스트 Playbooks 쿼리

FIN7 및 Scattered Spider 활동을 조사하기 위한 플레이북 Playbooks 쿼리

참고 사항

  • 업로드된 데이터의 수집은 파일 크기와 서버 부하 및 리소스에 따라 몇 분이 걸릴 수 있습니다.
  • 실행 전에 BloodHound API 자격 증명이 유효한지 확인하세요.
  • 업로드 전에 모든 JSON 그래프 파일이 현재 디렉터리에 있어야 합니다.
  • Define-Icons.py에 정의된 사용자 지정 아이콘은 BloodHound 인터페이스에 적용됩니다.
  • 이 도구는 현재 어떤 플레이북도 수집하지 않습니다.

라이선스

Apache 2.0

감사의 말

제가 OpenGraph에 대해 처음 들었을 때, Mitre ATT&CK 프레임워크를 수집하고 BloodHound로 시각화하는 데 좋은 방법이 될 것이라고 즉시 생각했습니다. Olaf Hartong은 몇 년 전에 그 작업을 수행했습니다(그의 블로그 참조), 분명히 현재 제 동료인 SadProcessor에게서 영감을 받은 것입니다. 우리는 이로써 완전한 순환을 이루었습니다.

기여

풀 리퀘스트와 이슈를 환영합니다.

도구 다운로드