SBOMHubは、日本市場向けに設計されたオープンソースのSBOM(ソフトウェア部品表)管理ダッシュボードです。
- Syft、cdxgen、Trivyなどで生成したSBOMをインポート(CycloneDX/SPDX対応)
- NVD・JVNと連携して脆弱性を追跡
- EPSSスコアで対応優先度を判断
- VEXステートメントで脆弱性トリアージを管理
- 経産省ガイドライン・EU CRAへの対応を支援
- ライセンスポリシーでプロジェクト全体を管理
- Slack/Discord/Emailでチームに通知
| 機能 | 説明 |
|---|---|
| マルチフォーマットSBOM | CycloneDX・SPDX JSONに対応 |
| 脆弱性トラッキング | NVD + JVN連携で網羅的にカバー |
| EPSSスコアリング | 悪用可能性に基づく優先度付け |
| SSVC意思決定 | CISA SSVCフレームワークによる脆弱性優先度付け |
| KEV連携 | CISA Known Exploited Vulnerabilities カタログ連携 |
| VEXサポート | 脆弱性の適用可否を記録 |
| ライセンスポリシー | 許可/拒否ライセンスの管理 |
| コンプライアンス対応支援 | 経産省ガイドライン自己評価チェック |
| CI/CD連携 | GitHub Actions対応(APIキー認証) |
| 日本語UI | 完全日本語対応 |
インストール不要ですぐに試せます: https://sbomhub.app
- セットアップ不要
- 無料プランあり
- 自動アップデート付きマネージドインフラ
# ダウンロードして起動(クローン不要)
curl -fsSL https://raw.githubusercontent.com/youichi-uda/sbomhub/main/docker-compose.yml -o docker-compose.yml
docker compose up -dまたは、クローンして起動:
git clone https://github.com/youichi-uda/sbomhub.git
cd sbomhub
docker compose up -d前提条件:
- Go 1.22+
- Node.js 20+ / pnpm
- PostgreSQL 15+
- Redis 7+
# データベースを起動
docker compose -f docker/docker-compose.yml up -d postgres redis
# バックエンド
cd apps/api
go run ./cmd/server
# フロントエンド(別ターミナル)
cd apps/web
pnpm install
pnpm dev┌─────────────────┐ ┌─────────────────┐
│ Next.js Web │────▶│ Go API │
│ (Port 3000) │ │ (Port 8080) │
└─────────────────┘ └────────┬────────┘
│
┌────────────┼────────────┐
▼ ▼ ▼
┌───────────┐ ┌───────────┐ ┌───────────┐
│ PostgreSQL│ │ Redis │ │ NVD / JVN │
│ (Data) │ │ (Cache) │ │ (APIs) │
└───────────┘ └───────────┘ └───────────┘
詳細はAPIドキュメントを参照
POST /api/v1/projects # プロジェクト作成
GET /api/v1/projects # プロジェクト一覧
GET /api/v1/projects/:id # プロジェクト詳細
DELETE /api/v1/projects/:id # プロジェクト削除
POST /api/v1/projects/:id/sbom # SBOMアップロード
GET /api/v1/projects/:id/components
GET /api/v1/projects/:id/vulnerabilities
GET /api/v1/projects/:id/vex # VEXステートメント
# SSVC (Stakeholder-Specific Vulnerability Categorization)
GET /api/v1/projects/:id/ssvc/defaults # プロジェクトSSVCデフォルト設定
PUT /api/v1/projects/:id/ssvc/defaults # SSVCデフォルト設定更新
POST /api/v1/projects/:id/vulnerabilities/:vuln_id/ssvc # SSVC評価作成
GET /api/v1/projects/:id/ssvc/summary # SSVC評価サマリー
POST /api/v1/ssvc/calculate # SSVC決定計算(保存なし)
# KEV (Known Exploited Vulnerabilities)
POST /api/v1/kev/sync # KEVカタログ同期
GET /api/v1/kev/stats # KEV統計情報
GET /api/v1/kev/:cve_id # CVEのKEV確認
GET /api/v1/projects/:id/kev # プロジェクトのKEV脆弱性一覧
SBOMHub CLIを使うと、SBOM生成からアップロードまでを1コマンドで実行できます。
# Homebrew (macOS/Linux)
brew install sbomhub/tap/sbomhub
# Shell script (macOS/Linux)
curl -fsSL https://sbomhub.app/install.sh | sh
# Windows (Scoop)
scoop bucket add sbomhub https://github.com/sbomhub/scoop-bucket
scoop install sbomhub
# Go install
go install github.com/youichi-uda/sbomhub-cli/cmd/sbomhub@latest# ログイン(API Key設定)
sbomhub login
# カレントディレクトリをスキャン&アップロード
sbomhub scan .
# プロジェクト指定でスキャン
sbomhub scan . --project my-app
# 脆弱性チェックのみ(アップロードなし)
sbomhub check .
# CI/CD向け(Critical検出でexit 1)
sbomhub scan . --project my-app --fail-on critical --quiet以下のいずれかがインストールされている必要があります:
詳細はsbomhub-cliを参照。
SBOMHub MCPサーバーを使用すると、Claude Desktop、Cursor、その他のMCP対応AIツールからSBOMHubのデータに直接アクセスできます。
cd packages/mcp-server
pnpm install
pnpm buildclaude_desktop_config.jsonに以下を追加:
{
"mcpServers": {
"sbomhub": {
"command": "node",
"args": ["/path/to/sbomhub/packages/mcp-server/dist/index.js"],
"env": {
"SBOMHUB_API_KEY": "your-api-key",
"SBOMHUB_API_URL": "https://api.sbomhub.app"
}
}
}
}| ツール | 説明 |
|---|---|
| sbomhub_list_projects | プロジェクト一覧取得 |
| sbomhub_get_dashboard | ダッシュボード情報 |
| sbomhub_search_cve | CVE横断検索 |
| sbomhub_search_component | コンポーネント検索 |
| sbomhub_diff | SBOM差分比較 |
| sbomhub_get_vulnerabilities | 脆弱性一覧 |
| sbomhub_get_compliance | コンプライアンススコア |
詳細はpackages/mcp-server/README.mdを参照。
name: Upload SBOM
on:
push:
branches: [main]
jobs:
sbom:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Generate SBOM
run: syft . -o cyclonedx-json > sbom.json
- name: Upload to SBOMHub
run: |
curl -X POST \
-H "Authorization: Bearer ${{ secrets.SBOMHUB_API_KEY }}" \
-F "sbom=@sbom.json" \
${{ secrets.SBOMHUB_URL }}/api/v1/projects/${{ secrets.PROJECT_ID }}/sbom- SBOMインポート(CycloneDX/SPDX)
- NVD/JVN脆弱性マッチング
- EPSSスコアリング
- VEXサポート
- ライセンスポリシー
- コンプライアンス対応支援(経産省ガイドライン自己評価)
- CI/CD連携(GitHub Actions)
- 通知機能(Slack/Discord)
- マルチテナント対応(Row-Level Security)
- Clerk認証連携
- Lemon Squeezy課金連携
- SBOMHub Cloud(マネージドSaaS)
- SSVC意思決定フレームワーク - CISA SSVCによる脆弱性優先度付け
- KEV連携 - Known Exploited Vulnerabilities カタログ自動同期
- リスクプロファイル - プロジェクト固有のリスク設定
- トリアージダッシュボード - KEV/SSVCを統合した優先度表示
- AI優先度推定 - MCP拡張によるAI自動判定
- LDAP/OIDC認証(セルフホスト向け)
コントリビューションを歓迎します!詳細はCONTRIBUTING.mdをご覧ください。
本プロジェクトはAGPL-3.0ライセンスの下で公開されています。
| レイヤー | 技術 | バージョン |
|---|---|---|
| バックエンド | Go (Echo v4) | 1.22+ |
| フロントエンド | Next.js (App Router) | 16 |
| UIフレームワーク | React | 19 |
| 言語 | TypeScript | 5.7 |
| UIコンポーネント | shadcn/ui | 最新 |
| スタイリング | Tailwind CSS | 3.4 |
| データベース | PostgreSQL | 15+ |
| キャッシュ | Redis | 7+ |
| 国際化 | next-intl | 最新 |
| フォームバリデーション | react-hook-form + zod | 最新 |
- Go 1.22+
- Node.js 20+ と pnpm
- PostgreSQL 15+
- Redis 7+
- Docker & Docker Compose(オプション)
sbomhub/
├── apps/
│ ├── web/ # Next.js フロントエンド
│ └── api/ # Go バックエンド
├── packages/
│ ├── db/ # DBスキーマとマイグレーション
│ ├── mcp-server/ # MCP Server(Claude/Cursor連携)
│ └── types/ # 共有TypeScript型定義
├── docker/ # Docker設定
├── docs/ # ドキュメント
└── .github/workflows/ # CI/CDパイプライン
# 開発サーバー起動
cd apps/web && pnpm dev # フロントエンド (http://localhost:3000)
cd apps/api && go run ./cmd/server # バックエンド (http://localhost:8080)
# データベース
docker compose up -d postgres redis # DB起動
cd apps/api && go run ./cmd/migrate up # マイグレーション実行
# テスト
cd apps/api && go test ./... # バックエンドテスト
cd apps/web && pnpm test # フロントエンドテスト
# Lint
cd apps/api && golangci-lint run # Go lint
cd apps/web && pnpm lint # TypeScript lint
# ビルド
docker compose build # 全コンテナビルド- Go: gofmt, golangci-lint
- TypeScript: ESLint, Prettier
- コミット: Conventional Commits
本プロジェクトには、AI支援開発のためのClaude Codeスキルが導入されています。
| カテゴリ | ソース | 説明 |
|---|---|---|
| セキュリティ | Trail of Bits | セキュリティ監査、脆弱性検出、静的解析 |
| Go開発 | Gopher AI | Goベストプラクティス、テストパターン |
| React/Next.js | Vercel Agent Skills | パフォーマンス最適化(57以上のルール) |
| ワークフロー | Claude Code SDK | CI/CD、テスト、コードレビューパターン |
- differential-review - セキュリティ重視のPRレビュー
- go-best-practices - 慣用的なGoパターン
- react-best-practices - React/Next.js最適化
- ci-cd-integration - パイプライン自動化
- monorepo-patterns - モノレポワークフロー
スキルは .claude/skills/ に配置され、Claude Codeによって自動検出されます。
セキュリティ脆弱性を発見した場合は、以下の方法で報告してください:
- GitHub Security Advisories: 脆弱性を報告
- メール: abyo.software@gmail.com(機密性の高い問題の場合)
公開のGitHub Issueでセキュリティ脆弱性を報告しないでください。
- マルチテナント向けRow-Level Security (RLS)
- CI/CD連携用APIキー認証
- 本番環境でのHTTPS強制
- zodスキーマによる入力バリデーション
- パラメータ化クエリによるSQLインジェクション防止
- CycloneDX - SBOM仕様
- SPDX - SBOM仕様
- NVD - National Vulnerability Database
- JVN - Japan Vulnerability Notes
- FIRST EPSS - Exploit Prediction Scoring System
- CISA KEV - Known Exploited Vulnerabilities Catalog
- CISA SSVC - Stakeholder-Specific Vulnerability Categorization
- Trail of Bits - Claude Code向けセキュリティスキル
- Vercel - Reactベストプラクティス


