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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
bom-view — SBOM을 조회하고 osv.dev로 온디맨드 취약점 스캔을 수행하는 정적 웹 애플리케이션입니다. GitHub/GitLab Pages에 쉽게 배포할 수 있습니다. | Kitploit
도구/GitHubGitHub/hristiy4n/bom-view
Static AnalysisVulnerability ScannersWeb SecurityDevSecOpsUtilities & FrameworksSupply Chain Security
GitHubhristiy4n/bom-view

bom-view

SBOM을 조회하고 osv.dev로 온디맨드 취약점 스캔을 수행하는 정적 웹 애플리케이션입니다. GitHub/GitLab Pages에 쉽게 배포할 수 있습니다.

저장소 보기
322일 전아직 검토되지 않음

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

BOM View

License Release CI

SBOM(Software Bill of Materials) 파일의 소프트웨어 의존성을 표시하는 간단한 정적 웹 애플리케이션입니다. 정적 사이트이므로 GitLab Pages, GitHub Pages, Netlify와 같은 모든 정적 웹 호스팅 서비스에 쉽게 호스팅할 수 있습니다.

기능

  • SBOM 뷰어: CycloneDX/SPDX JSON SBOM의 구성 요소를 명확하고 검색 가능한 테이블로 표시합니다.
  • 동적 로딩: 사이트를 다시 빌드하지 않고 SBOM을 추가하고 표시할 수 있습니다.
  • 주문형 취약점 스캐닝: osv.dev 데이터베이스를 사용하여 개별 패키지 또는 전체 SBOM에 대해 알려진 취약점을 스캔합니다. 또한 BOM View는 Grype 또는 Trivy와 같은 도구에서 생성된 CycloneDX SBOM 내에 이미 포함된("baked-in") 취약점을 표시할 수 있습니다.
    • 취약점이 포함된 SBOM 생성 예시:
      • Trivy: trivy image <image> --format=cyclonedx --output=sbom.json --scanners vuln
      • Grype: grype <image> --output cyclonedx-json > sbom.json
  • 참고: 이 기능은 현재 CycloneDX SBOM에 대해서만 지원됩니다.
  • OpenSSF Scorecards: OpenSSF Scorecard의 보안 점수로 패키지 데이터를 보강하여 공급망 보안 태세에 대한 통찰력을 제공합니다.
  • 지원 형식

    현재 BOM View는 JSON 형식의 CycloneDX 및 SPDX를 지원합니다. 이는 syft와 같은 도구로 생성할 수 있습니다.

    사이트에 SBOM 추가하기

    이 애플리케이션은 런타임에 SBOM을 동적으로 로드하도록 설계되었습니다. 자체 SBOM을 추가하려면 프로젝트를 다시 빌드할 필요가 없습니다. 배포된 정적 사이트의 루트 디렉터리(예: 페이지 작업이 제공하는 dist 또는 public 폴더)에서 다음 단계를 따르세요.

    1. sboms 디렉터리 생성: 아직 존재하지 않는 경우 sboms라는 디렉터리를 만듭니다.

    2. SBOM 추가: CycloneDX/SPDX JSON 파일을 sboms 디렉터리에 복사합니다.

    3. 인덱스 파일 업데이트: sboms 디렉터리 안에 index.json이라는 파일을 생성하거나 업데이트합니다. 이 파일은 애플리케이션에 사용 가능한 SBOM을 알려줍니다. 파일은 문자열의 단일 JSON 배열을 포함해야 하며, 각 문자열은 해당 디렉터리에 있는 SBOM의 파일 이름입니다.

      예를 들어, my-app.json과 another-lib.json이 있는 경우 index.json 파일은 다음과 같아야 합니다.

      root@kitploit:~
      [
        "my-app.json",
        "another-lib.json"
      ]
      

    그러면 애플리케이션이 index.json을 가져와 SBOM 선택 드롭다운을 채우고 선택 시 해당 파일을 로드합니다.

    GitLab Pages CI/CD 예시

    다음은 사전 빌드된 릴리스를 가져오고, SBOM을 추출하며, 배포를 위해 동적으로 index.json을 생성하는 .gitlab-ci.yml 구성 예시입니다.

    root@kitploit:~
    stages:
      - sbom
      - deploy
    
    create_sbom:
      stage: sbom
      image: alpine:3.23.2
      before_script:
        - apk add syft
      script:
        - mkdir sboms
        - syft alpine:3.19 -o cyclonedx-json=sboms/alpine-cyclone.json
      artifacts:
        paths:
          - sboms
    
    pages:
      stage: deploy
      image: alpine:3.23.2
      before_script:
        - apk add curl jq
      script:
        - curl -L https://github.com/hristiy4n/bom-view/releases/download/v0.4.0/bom-view-v0.4.0-dist.tar.gz | tar zx
        - mv dist public
        - mkdir public/sboms
        - cp sboms/* public/sboms
        - |
          find sboms -maxdepth 1 -type f -name '*.json' ! -name 'index.json' \
          | sed 's|.*/||' \
          | sort \
          | jq -R . | jq -s . > public/sboms/index.json
      needs:
        - job: create_sbom
      artifacts:
        paths:
          - public
    

    이 구성의 실제 예시는 다음에서 확인할 수 있습니다: https://security-dashboard-a9b4f8.gitlab.io/

    필수 디렉터리 구조

    최종 배포 디렉터리의 구조는 다음과 같아야 합니다.

    root@kitploit:~
    dist/
    ├── assets/
    │   └── ... (CSS 및 JS 파일)
    ├── index.html
    └── sboms/
        ├── index.json
        ├── sbom1.json
        ├── sbom2.json
        └── ...
    
    도구 다운로드