Communitygithub.com

공급망 보안 평가

소프트웨어 공급망 보안 평가에 사용됩니다. SBOM, SCA, CI/CD 파이프라인, 컨테이너 이미지, 빌드 무결성, 종속성 출처 및 취약점 도달 가능성을 다룹니다.

공급망 보안 평가란 무엇인가요?

이 스킬은 소프트웨어 공급망 보안 평가를 위한 포괄적인 프레임워크를 제공합니다. SBOM(소프트웨어 자재 명세서) 생성 및 감사, SCA(소프트웨어 구성 분석)를 통한 오픈소스 종속성 취약점 스캔, CI/CD 파이프라인 보안 감사, 컨테이너 이미지 보안 분석, 타사 구성 요소 규정 준수 검토 및 빌드 산출물 추적성 확인을 포함합니다. 주요 지원 도구로는 OWASP Dependency-Track, Trivy, OSV-Scanner, Syft, Cosign, Snyk 및 CodeQL이 있으며, 취약점 도달 가능성 검증 방법론(DEPTEX, Code Property Graph)을 포함하여 실제 위험을 정확히 평가합니다. 또한, CI/CD 파이프라인 자체의 보안(파이프라인 코드 주입, 러너 격리, 시크릿 관리, 서드파티 액션 검토)과 신규 종속성 도입 시의 위험 평가 매트릭스를 제공합니다. 이 스킬은 미국 행정명령 SBOM, 중국 국가 표준, EU CRA 등 규제 요구사항에 부합하도록 설계되었습니다.

지원 대상~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/zhaoxuya520/reverse-skill/tree/main/skills/supply-chain-security

즐겨 사용하는 AI에게 물어보기

이 에이전트 스킬이 미리 로드된 새 채팅을 엽니다.

문서

공급망 보안 테스트

필수 조치 (읽은 후 즉시 실행)

  1. NOW: ../field-journal/precedent-pentest.md 읽기 — 이 스킬의 작업이 승인된 정기 작업인지 확인
  2. NOW: 현재 작업이 이 스킬의 적용 범위에 해당하는지 확인
  3. NEXT: ../tool-index.md 읽기, 도구 가용성 및 실제 경로 확인
  4. NEXT: 도구가 없으면 bootstrap 호출, 경로 추측 금지
  5. ACT: "워크플로" 첫 번째 단계로 진입하여 실행, 확인 상태에서 멈추지 않음

SBOM / SCA / CI/CD 파이프라인 / 종속성 출처 규제 기반: 미국 행정명령 SBOM, 중국 국가 표준, EU CRA

적용 시나리오

  • 소프트웨어 공급망 보안 평가
  • 오픈소스 종속성 취약점 스캔 및 검증
  • CI/CD 파이프라인 보안 감사
  • 컨테이너 이미지 보안 분석
  • 타사 구성 요소 규정 준수 검토
  • 빌드 산출물 출처 및 무결성 검증

6계층 공급망 거버넌스 프레임워크

계층 1: 소스코드 신뢰 평가 → 업스트림 저장소/유지관리자/릴리스 히스토리 검토
계층 2: 빌드 파이프라인 통합 → CI/CD 보안 게이트, 서명 검증
계층 3: 아티팩트 배포 무결성 → 서명, 체크섬, SBOM 첨부
계층 4: 런타임 보호 → 컨테이너 스캔, 접근 제어
계층 5: 지속적 모니터링 → CVE 실시간 추적, 취약점 도달 가능성 분석
계층 6: 사고 대응 → 공급망 공격 긴급 대응, 롤백 전략

워크플로

1. SBOM 생성 및 감사

SBOM 생성:
□ CycloneDX 형식: cdxgen → bom.json
□ SPDX 형식: sbom-tool generate
□ Syft: syft <이미지|디렉터리> -o spdx-json

감사 포인트:
□ 알려지지 않거나 승인되지 않은 종속성 존재 여부
□ 폐기되었거나 유지보수가 중단된 패키지 존재 여부
□ 라이선스 충돌 감지
□ 직접 종속성 vs 전이 종속성 목록
□ 각 구성 요소의 릴리스 타임라인 및 유지관리자 상태

2. 소프트웨어 구성 분석 (SCA)

# OSV-Scanner (무료, Google 유지관리)
osv-scanner scan -r . --format json

# OWASP Dependency-Track (엔터프라이즈급 지속적 모니터링)
docker run -p 8080:8080 dependencytrack/apiserver
# → SBOM 업로드 → NVD/OSV/GitHub Advisory 자동 매칭

# Snyk (상용)
snyk test --all-projects
snyk monitor  # 지속적 모니터링

# Trivy (컨테이너 + 종속성 + IaC)
trivy fs .          # 파일 시스템 스캔
trivy image nginx   # 컨테이너 이미지
trivy config .      # IaC 설정

3. 취약점 도달 가능성 검증

SCA 경고 ≠ 실제 위험! 대부분의 SCA 도구는 경고의 약 15%만 실제 도달 가능합니다.

검증 단계:
1. Dependency-Track 또는 Trivy로 CVE 목록 획득
2. CVSS ≥ 7.0인 취약점 필터링
3. PoC가 있는 CVE에 대해 도달 가능성 분석
   - Code Property Graph 슬라이싱: 사용자 입력에서 취약 함수까지 경로 추적
   - DEPTEX 방법: EPD (실행 경로 지배) + LLM 의미론적 검증
4. 격리된 환경에서 PoC 검증
5. 도달 가능한 취약점을 실제 영향 기준으로 정렬하여 수정 우선순위 지정

도구 참고:

  • CodeQL: GitHub 코드 쿼리 → 데이터 흐름 분석
  • Snyk Code: 도달 가능성 표시
  • DEPTEX: LLM 기반 컨텍스트 인식 위험 평가

4. CI/CD 파이프라인 보안

보안 검사 포인트:
□ 코드 커밋 → pre-commit hook: gitleaks (시크릿 스캔)
□ PR 단계 → SCA 스캔 (Trivy/OSV-Scanner)
□ 빌드 단계 → 아티팩트 서명 (cosign)
□ 푸시 단계 → SBOM 첨부 (syft + attest)
□ 배포 단계 → 접근 제어 (OPA/Kyverno + 이미지 스캔)
□ 런타임 → 지속적 취약점 모니터링 (Dependency-Track)

파이프라인 자체 보안:
□ Pipeline as Code 감사 (GitHub Actions / GitLab CI 설정 주입)
□ 러너 격리 (악성 빌드가 컨테이너를 벗어나는 것 방지)
□ 시크릿 관리 (Actions Secrets / Vault, 하드코딩 금지)
□ 서드파티 Action 검토 (태그가 아닌 commit SHA 고정)

5. 컨테이너 이미지 보안

# Dockerfile 감사
hadolint Dockerfile

# 이미지 스캔 (다중 계층: OS + 애플리케이션 종속성 + 설정)
trivy image --severity HIGH,CRITICAL nginx:latest

# 최소 베이스 이미지
# 우선 순위: distroless → alpine → slim → latest 사용 금지
docker scout quickview nginx:latest

# 이미지 서명
cosign sign --key cosign.key myimage:tag
cosign verify --key cosign.pub myimage:tag

6. 서드파티 종속성 검토

신규 종속성 도입 체크리스트:
□ 유지관리 상태: 최근 6개월 이내 커밋? 유지관리자 활동성?
□ 보안 이력: 과거에 악성 코드가 삽입된 적이 있는가?
□ 종속성 트리: 도입 후 추가되는 전이 종속성 수는?
□ 라이선스: 프로젝트 라이선스와 호환 가능?
□ 대안: 더 안전한 대안이 있는가 (Snyk Advisor / Socket.dev 점수)?

위험 평가 매트릭스:
  높은 유지관리 × 낮은 종속성 수 × 호환 라이선스 → 낮은 위험
  낮은 유지관리 × 높은 종속성 수 × 라이선스 충돌 → 높은 위험

도구 체인

도구용도획득 방법
OWASP Dependency-Track엔터프라이즈급 지속적 SCAdocker pull dependencytrack/apiserver
OSV-Scanner무료 SCA (OSV.dev 생태계)go install github.com/google/osv-scanner
Trivy이미지 + 종속성 + IaC 스캔apt install trivy
SyftSBOM 생성curl -sSfL https://raw.githubusercontent.com/anchore/syft/main/install.sh
cdxgenCycloneDX SBOM 생성npm install -g @cyclonedx/cdxgen
Cosign컨테이너 서명go install github.com/sigstore/cosign/v2/cmd/cosign
Gitleaks시크릿/자격 증명 스캔go install github.com/gitleaks/gitleaks/v8
Snyk상용 SCA + 도달 가능성npm install -g snyk
CodeQL코드 쿼리 + 데이터 흐름GitHub Actions 내장

참고

  • references/sbom-sca-methodology.md — SBOM + SCA 방법론
  • references/cicd-pipeline-security.md — CI/CD 파이프라인 보안 감사

작업 완료 자가 점검 (완료를 주장하기 전에 MUST 통과)

  • 워크플로의 각 단계를 실행했는가 (단순히 읽기만 하지 않았는가)?
  • tool-index를 기반으로 실제 도구 경로를 사용했는가?
  • 재현 가능한 증거(명령어/스크립트/스크린샷/보고서)를 생성했는가?
  • RULES에서 요구하는 체크리스트 항목을 완료하고 기록했는가?

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

api-security

Use for authorized security assessment of REST, GraphQL, WebSocket, or SOAP APIs, including discovery, authentication, authorization, rate-limit, and CI/CD testing.

apk-reverse

在 CLI 环境下做 Android APK 逆向时使用。适用于 APK 解包、Java 反编译、smali 修改、重打包、Frida 动态 Hook,以及按需切换到 so/native 分析。优先使用本机已安装的 jadx、apktool、frida、adb、ida-reverse、radare2。

attack-chain

Use for authorized multi-stage attack-path planning and orchestration when a task spans reconnaissance, initial access, privilege escalation, lateral movement, or impact assessment. Route single-stage tasks directly to their specialist skill.

binary-diff

|

binary-ninja-reverse

Use for authorized binary analysis in Binary Ninja, including HLIL/MLIL/LLIL inspection, strings/imports/exports, cross-references, types, patch review, Python API automation, and optional Binary Ninja MCP or localhost HTTP integration.

browser-automation

|

browser-extension-reverse

Use for authorized reverse engineering of browser extensions (Chrome/Firefox) including manifest analysis, background workers, and extension-based credential or traffic logic recovery.

case-review

Reviews a reverse-skill case package for scope readiness, Evidence to Finding to Path traceability, work item coverage, timeline references, and optional artifact hash integrity before report handoff.

cloud-k8s

Use for authorized cloud, container, and Kubernetes security assessment including metadata SSRF, IAM misconfig, container escape paths, and cluster RBAC review.

code-audit

Use for authorized source-code security review and SAST workflows including Semgrep, CodeQL patterns, dangerous API hunting, and fix verification.

ctf-sandbox

Thin PRIMARY for CTF / AWD / 靶场 multi-type orchestration. Hands off to the sidecar CTF-Sandbox-Orchestrator. Use when the user says CTF, AWD, 靶场, or 比赛题 and no more specific pwn/APK/IDA route already won.

database-security

Use for authorized database security assessment covering PostgreSQL/MySQL/MSSQL/Mongo/Redis exposure, authz, UDF/command paths, and misconfiguration review.

diagram-generator

generate, refine, validate, and render diagrams from natural language, notes, code snippets, schemas, tables, or existing diagram source. use for flowcharts, swimlanes, sequence diagrams, state diagrams, er diagrams, class diagrams, architecture/c4-style diagrams, dependency graphs, gantt charts, mind maps, user journeys, sankey-style flows, org charts, network graphs, and other visual models. supports mermaid by default, graphviz dot for complex graph layout, plantuml for uml-heavy engineering diagrams, and svg output when direct markup is more reliable.

digital-forensics

Use for authorized digital forensics including memory dumps, disk timelines, PCAP investigation, artifact triage, and IR evidence preservation.

docs-generator

|

dotnet-reverse

.NET / C# 二进制逆向。当目标是 .NET assembly(PE 头含 CLR、.exe/.dll 托管程序)、C# 编译产物(含 NativeAOT)、红队 Sharp* 工具(Rubeus / SharpHound / SharpHound 等)、.NET 混淆程序(ConfuserEx / SmartAssembly / Babel / Eazfuscator)、.NET loader / info-stealer / 套壳 malware 时使用。优先用 dnSpyEx + de4dot,需要 AI 直接操作时联动 dnSpy MCP。不用于纯 native 二进制(走 reverse-engineering / ida-reverse)。

edr-bypass-re

|

email-security

Use for authorized email security review including phishing analysis, header authentication (SPF/DKIM/DMARC), BEC patterns, and mailbox token abuse research.

firmware-pentest

|

ghidra-reverse

Use for free/open reverse engineering with Ghidra (headless or GUI), including decompile, cross-refs, and optional Ghidra MCP workflows when IDA is unavailable.

관련 스킬