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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
smokedmeat — 빌드 파이프라인 보안 위험을 시연하기 위한 CI/CD 레드팀 프레임워크. | Kitploit
도구/GitHubGitHub/boostsecurityio/smokedmeat
Penetration Testing FrameworksPrivilege EscalationExploit FrameworksVulnerability AnalysisLateral MovementPost-ExploitationCloud SecurityCommand and ControlSecret DetectionSupply Chain SecurityLearning & EducationRed Teaming
3732823일 전Kitploit 검토 완료

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유
GitHubboostsecurityio/smokedmeat

smokedmeat

빌드 파이프라인 보안 위험을 시연하기 위한 CI/CD 레드팀 프레임워크.

저장소 보기

SmokedMeat

License: AGPL v3

CI/CD 레드팀 프레임워크

메타스플로이트와 같지만, CI/CD 파이프라인용입니다.

BoostSecurity Labs에서 poutine 빌드 파이프라인 SAST 스캐너를 만든 팀이 제작했습니다.

SmokedMeat quickstart demo


경고: 이 도구는 승인된 보안 테스트 용도로만 사용하세요.

SmokedMeat는 CI/CD 파이프라인 위협이 심각하게 과소평가되고 있기 때문에 만들어졌습니다. 기존 보안 교육은 공급망 공격을 거의 다루지 않아, 방어자들이 실제 환경에서 공격자들이 적극적으로 악용하는 기술에 대비하지 못하게 합니다.

우리는 보안 팀이 현실적인 레드팀 훈련을 통해 고급 CI/CD 공격 기술에 대한 방어를 학습, 연습, 검증할 수 있는 능력을 제공하기 위해 이 도구를 만들었습니다.

자신이 소유했거나 명시적인 서면 허가를 받은 시스템에 대해서만 사용하세요.


SmokedMeat란 무엇인가요?

SmokedMeat는 CI/CD 파이프라인을 위한 사후침투 프레임워크입니다. GitHub 조직을 대상으로 지정하면 취약한 워크플로를 찾고, 손상된 러너에 임플란트를 배포한 후, 클라우드 제공자를 통해 피벗하고, 비밀 정보를 추출하고, 피해 범위를 매핑합니다. 이 모든 작업을 터미널 UI에서 수행합니다.

기능:

  1. 분석 - 조직의 GitHub Actions 워크플로에서 주입 취약점, 위험한 트리거, 안전하지 않은 체크아웃 패턴을 스캔합니다 (poutine 기반)
  2. 공격 - PR, 이슈, 코멘트 또는 workflow dispatch를 통해 스테이저를 배포합니다. 취약한 워크플로가 실행되면 CI 러너에서 임플란트를 다운로드하여 실행합니다.
  3. 사후침투 - 러너 메모리에서 비밀 정보 추출, GitHub 토큰 권한 열거, 개인 키 스캔, 전리품 수집
  4. 피벗 - 획득한 자격 증명을 사용하여 수평 이동: 개인 리포지토리 발견, GitHub App 토큰 생성, OIDC 토큰을 AWS/GCP/Azure 액세스로 교환, SSH 배포 키 프로브

철학: 대담하고 시끄럽습니다. EDR 회피 도구가 아닙니다. 경보가 트리거되기 전에 CI/CD 손상이 얼마나 깊이 진행되는지 보여주는 데모 프레임워크입니다.

대상 사용자:

  • 엔터프라이즈 환경에서 CI/CD 보안 태세를 검증하는 레드팀
  • 이해관계자에게 공급망 공격 경로를 시연하는 펜테스터
  • 파이프라인 공격에 대한 탐지 및 대응을 테스트하는 보안 엔지니어
  • 새로운 CI/CD 익스플로잇 기술을 연구하는 연구자
  • 공급망 공격 표면을 탐색하는 버그 바운티 헌터

빠른 시작

SmokedMeat를 처음 사용해보려면 Docker와 make를 설치하세요. Go는 필요하지 않습니다.

root@kitploit:~
git clone https://github.com/boostsecurityio/smokedmeat.git
cd smokedmeat
make quickstart

make quickstart는 권장되는 첫 실행입니다. 안정적인 릴리스 퀵스타트 스택을 로컬에서 시작하고 로컬 C2 팀서버(Kitchen)에 대해 운영자 TUI(Counter)를 실행합니다.

권장 첫 실행:

  • 대상: whooli
  • 토큰: public_repo 권한이 있는 클래식 PAT

⚠ 클래식 PAT를 선호합니다. 세분화된 PAT는 너무 제한적일 수 있으며, 다른 조직(whooli 포함)의 공개 대상 테스트를 차단할 수 있습니다.

whooli는 의도적으로 취약하게 만든 SmokedMeat의 CI/CD 공격 연습장입니다. 공개 경로의 첫 번째 대상으로 권장됩니다.

설정 마법사가 다음을 안내합니다:

  1. GitHub PAT - 토큰 입력. 개인 리포지토리의 경우 클래식 PAT는 일반적으로 repo가 필요합니다.
  2. 대상 - whooli 또는 자신의 조직/리포지토리 입력
  3. 분석 - 워크플로의 취약점을 스캔하고 익스플로잇 가능한 결과를 제공합니다.

전체 챌린지 흐름은 whooli 가이드를 참조하거나 whooli GitHub 조직으로 바로 이동하세요.

사용이 끝나면:

root@kitploit:~
make quickstart-down       # 컨테이너 중지
make quickstart-purge      # 중지 및 모든 데이터 삭제

소스에서 작업하려면 개발을 참조하세요.

개발

소스 트리를 로컬에서 기여하거나 반복 작업하는 경우 Go 1.26+를 설치하고 dev 퀵스타트를 사용하세요:

root@kitploit:~
make dev-quickstart

make dev-quickstart는 로컬 smokedmeat-cloud-shell 이미지를 빌드하고, cloudflared, nats, C2 팀서버(Kitchen)를 시작한 다음 소스에서 운영자 TUI를 실행합니다.

인프라를 먼저 설정하고 운영자 TUI는 나중에 실행하려면:

root@kitploit:~
make dev-quickstart-up
make dev-quickstart-counter

사용이 끝나면:

root@kitploit:~
make dev-quickstart-down   # 컨테이너 중지
make dev-quickstart-purge  # 중지 및 모든 데이터 삭제

더 많은 배포 모드 및 로컬 개발 세부 정보는 docs/deployment.md에 있습니다.

버전 확인

Counter는 시작 시 새로운 SmokedMeat 릴리스가 있는지 확인합니다. SMOKEDMEAT_DISABLE_VERSION_CHECK 환경 변수를 설정하여 비활성화할 수 있습니다.

핵심 구성 요소

배포 모드

Hosted Teamserver는 전용 호스트에서 C2 팀서버를 실행하고, 각 운영자 워크스테이션에서 네이티브로 운영자 TUI를 실행합니다.

아키텍처

높은 수준에서 운영자 TUI(Counter)는 C2 팀서버(Kitchen)와 통신하며, 팀서버는 손상된 CI 러너에서 실행 중인 임플란트(Brisket)를 관리하고 실시간 공격 그래프를 제공합니다.

root@kitploit:~
┌──────────────┐
│  SSH AGENT   │
│   (Auth)     │
└──────┬───────┘
       │
       ▼
┌──────────────┐                 ┌──────────────┐
│  THE COUNTER │ ───────────────▶│  THE KITCHEN │
│  (Operator)  │    WebSocket    │ (Teamserver) │
│  Bubbletea   │◀─────────────── │              │
│     TUI      │   Events/Graph  │ ┌──────────┐ │
└──────────────┘                 │ │ Database │ │
                                 │ └──────────┘ │
┌──────────────┐                 │              │
│   BROWSER    │ ───────────────▶│              │
│  Graph View  │    WebSocket    │              │
│  Visualizer  │◀─────────────── │              │
└──────────────┘   Live Updates  └──────────────┘
                                   │         ▲
                                   │         │
                        Creates PR │         │ Stager fetches implant binary
                                   │         │ Implant HTTP Beacon/Commands
                                   ▼         │
┌────────────────────────────────────────────┴──────────────────────────────────┐
│  GITHUB.COM                                                                   │
│                                                                               │
│  ┌─────────────────────┐          ┌─────────────────────────────────────────┐ │
│  │  Malicious PR       │ triggers │  GitHub Actions Runner                  │ │
│  │  (Vulnerable        │─────────▶│                                         │ │
│  │   Workflow)         │          │  ┌────────────┐      ┌────────────────┐ │ │
│  └─────────────────────┘          │  │  Stager    │─────▶│  THE BRISKET   │ │ │
│                                   │  │            │      │  (Implant)     │ │ │
│                                   │  └────────────┘      └────────────────┘ │ │
│                                   └─────────────────────────────────────────┘ │
└───────────────────────────────────────────────────────────────────────────────┘

기능

전체 세부 사항은 docs/FEATURES.md에 있습니다.

기술 스택

테스트

root@kitploit:~
make test          # 단위 테스트
make lint          # 린터
make e2e-smoke     # 빠른 공개 익스플로잇 스모크 경로
make e2e-goat      # 클라우드 플래그까지 전체 염소 체인

관련 연구

SmokedMeat는 다음 연구를 기반으로 합니다:

  • poutine - 빌드 파이프라인 SAST 스캐너
  • LOTP - Living Off The Pipeline 기술
  • Gato-X - GitHub Actions 열거
  • Nord-Stream - CI/CD 비밀 추출
  • Sliver - Go C2 아키텍처 패턴
  • Mythic - 협업 워크플로 설계

라이선스

GNU Affero General Public License v3.0 - 자세한 내용은 LICENSE를 참조하세요.


공격자 기술을 이해하려는 방어자를 위해 만들어졌습니다.

도구 다운로드
표준 용어SmokedMeat 이름설명
운영자 TUICounter분석, 페이로드 전달, 사후침투 워크플로를 위한 터미널 인터페이스.
C2 팀서버Kitchen운영자 세션, 스테이저, 콜백, 그래프 상태를 위한 API 및 WebSocket 서버.
임플란트Brisket손상된 CI 러너에 전달되어 비콘, 명령 실행, 피벗을 수행하는 에이전트.
브라우저 그래프 뷰Browser ViewC2 팀서버가 /graph에서 제공하는 실시간 공격 그래프.
모드사용 시기시작점
Quickstart고정 릴리스에서 가장 빠른 첫 실행make quickstart
Dev Quickstart소스 트리에서 로컬 작업make dev-quickstart
Hosted Teamserver안정적인 도메인으로 실제 작전 실행docs/deployment.md
카테고리기능
정찰6개 CI 플랫폼(GitHub Actions, GitLab CI, Azure DevOps, CircleCI, Jenkins, Bitbucket) 자동 감지. 비밀 정보 분류, OIDC 가용성 프로브, 러너 메타데이터 수집.
비밀 정보 추출/proc을 통한 Runner.Worker 프로세스 메모리 스캔으로 GitHub가 로그에서 숨기는 마스킹 해제된 secrets.*, vars.*, GITHUB_TOKEN 권한 맵 복구.
취약점 분석내장 poutine SAST: 주입 취약점, 위험한 트리거, 워크플로 if: 게이트 분류. Gitleaks 심층 스캔으로 git 히스토리 내 개인 키 및 PAT 검색.
전달5가지 자동화 방법: PR, 이슈, 코멘트, LOTP, workflow dispatch - 복사 전용 및 수동 포함. 초안 PR 지원, 콜백 시 자동 종료, 서버 측 dispatch 사전 점검.
주입 페이로드8가지 주입 벡터(브랜치 이름, PR 제목/본문, 커밋 메시지, 이슈 제목/본문, github-script, bash run)에 대한 컨텍스트 인식 페이로드 생성, 제약 조건 인식 기술 포함.
LOTPLiving Off The Pipeline 카탈로그: 15개 빌드 도구(npm, pip, cargo, make, docker, gradle, maven 등)와 설치/빌드/테스트 중 코드 실행을 위한 설정 파일 페이로드.
캐시 포이즈닝Writer/victim 분류, 정확한 캐시 키 예측, Actions Cache API를 통한 아카이브 스테이징. 임플란트 장착을 위한 마법사 기반 흐름.
토큰 열거API 엔드포인트에 대해 GitHub 토큰을 프로브하여 10개 권한 범위 열거, 토큰 유형 식별, 접근 가능한 리포지토리 및 조직 나열.
클라우드 피벗AWS(sts:AssumeRoleWithWebIdentity), GCP(Workload Identity Federation), Azure(AAD), Kubernetes에 대한 OIDC 토큰 교환. 피벗 후 리소스 열거.
클라우드 셸cloud shell(사전 구성된 gcloud/aws/az), cloud export, 공급자 빠른 확인을 통한 지속적인 로컬 세션.
SSH 피벗리포지토리에서 SSH 배포 키 접근(읽기/쓰기) 프로브, ssh shell with temporary agent, 확인된 접근을 그래프에 유지.
GitHub 피벗pivot github for repo discovery, pivot app for GitHub App PEM-to-installation-token exchange. 발견된 리포지토리는 자동으로 분석 대기열에 추가.
공격 그래프조직/리포지토리/워크플로/작업/취약점/토큰/클라우드 노드가 있는 지속적인 방향 그래프(BBolt). /graph에서 실시간 Cytoscape.js 브라우저 시각화.
운영자 TUI단계 인식 워크플로, 7단계 설정 마법사, 공격 트리 탐색, 익스플로잇 마법사, 전리품 저장소, 옴니박스 검색, 탭 완성, OSC 8 하이퍼링크.
팀서버SSH 또는 토큰 인증, NATS JetStream 메시지 버스, GitHub API 프록시(토큰은 서버 측에 유지), Caddy를 통한 자동 TLS, 작전 기록.
계층기술
언어Go 1.26+
TUI 프레임워크Bubbletea v2 + Lipgloss v2
TUI 레이아웃Ultraviolet 레이아웃 + ANSI 안전 화면 합성
메시지 버스NATS JetStream
공격 그래프hmdsefi/gograph
그래프 시각화Cytoscape.js
데이터베이스BBolt
CI/CD 스캐너poutine (내장)
비밀 스캐너gitleaks (내장, 사용자 정의 규칙)
러너 비밀 추출gump (내장, /proc 메모리 스캐닝)
클라우드 SDKAWS SDK v2, Google Cloud, Azure SDK for Go
리버스 프록시Caddy (자동 TLS)