Skip to content
This repository was archived by the owner on Feb 18, 2026. It is now read-only.

Security: scottlz0310-user/Setup-Repository

Security

SECURITY.md

セキュリティポリシー

サポートされているバージョン

現在セキュリティアップデートがサポートされているバージョン:

バージョン サポート状況
1.0.x ✅ サポート中
< 1.0 ❌ サポート終了

脆弱性の報告

セキュリティ脆弱性を発見した場合は、以下の手順に従って報告してください:

報告方法

  1. GitHub Security Advisoriesを使用して報告(推奨)

    • リポジトリの「Security」タブから「Report a vulnerability」を選択
    • 詳細な情報を提供してください
  2. メール報告

    • セキュリティ関連の問題は公開のIssueではなく、プライベートに報告してください

報告に含めるべき情報

  • 脆弱性の詳細な説明
  • 再現手順
  • 影響範囲
  • 可能であれば修正案

対応プロセス

  1. 確認:24時間以内に受領確認
  2. 調査:7日以内に初期調査結果を報告
  3. 修正:重要度に応じて修正スケジュールを決定
  4. 公開:修正後、適切なタイミングで脆弱性情報を公開

セキュリティ対策

自動セキュリティチェック

このプロジェクトでは以下のセキュリティチェックを自動実行しています:

1. 依存関係の脆弱性チェック

  • Safety: 既知の脆弱性データベースとの照合
  • Dependabot: 自動的な依存関係更新
  • Dependency Review: プルリクエストでの依存関係変更チェック

2. コードセキュリティ分析

  • Bandit: Pythonコードのセキュリティ脆弱性検出
  • CodeQL: 静的コード分析によるセキュリティ問題検出
  • Semgrep: セキュリティパターンマッチング

3. シークレット検出

  • TruffleHog: コミット履歴内のシークレット検出
  • GitHub Secret Scanning: プッシュ時のシークレット検出

4. ライセンス監査

  • pip-licenses: 依存関係のライセンス確認
  • 禁止ライセンス(GPL系)の自動検出

セキュリティ設定

開発環境

# セキュリティツールのインストール
uv sync --group security

# セキュリティチェックの実行
uv run safety check
uv run bandit -r src/
uv run semgrep --config=auto src/

Pre-commitフック

セキュリティチェックはコミット前に自動実行されます:

  • Banditによるセキュリティ脆弱性チェック
  • Safetyによる依存関係脆弱性チェック

CI/CDパイプライン

  • 全プルリクエストでセキュリティスキャン実行
  • 毎日定期的なセキュリティスキャン
  • 重大な脆弱性検出時のビルド停止

セキュリティベストプラクティス

1. 認証情報の管理

  • 認証トークンは環境変数または設定ファイルで管理
  • ハードコードされた認証情報の禁止
  • SafetyのAPIキー(オプション):
    • 基本機能では不要
    • プレミアム機能使用時はGitHub Secretsで管理
    • 環境変数名:SAFETY_API_KEY
  • 設定ファイルの適切な.gitignore設定

2. 入力検証

  • ユーザー入力の適切な検証とサニタイゼーション
  • パス操作時のディレクトリトラバーサル対策
  • コマンドインジェクション対策

3. 依存関係管理

  • 定期的な依存関係更新
  • 最小権限の原則に従った依存関係選択
  • 信頼できるソースからのパッケージ使用

4. ログとモニタリング

  • セキュリティイベントの適切なログ記録
  • 機密情報のログ出力回避
  • 異常な動作の監視

既知の制限事項

1. ローカル実行時の権限

  • 一部の機能では管理者権限が必要
  • 権限昇格時の適切な警告表示

2. 外部API依存

  • GitHub APIの利用制限
  • ネットワーク接続の安全性確保

3. プラットフォーム固有の制約

  • 各OSのセキュリティ機能への依存
  • プラットフォーム固有の脆弱性対策

インシデント対応

重大度分類

重大度 説明 対応時間
Critical システム全体に影響、データ漏洩の可能性 24時間以内
High 重要な機能に影響、セキュリティリスク 72時間以内
Medium 一部機能に影響、軽微なセキュリティリスク 1週間以内
Low 軽微な影響、セキュリティリスクなし 次回リリース

緊急時連絡先

セキュリティインシデントが発生した場合:

  1. GitHub Security Advisoriesで報告
  2. 影響範囲の特定と対策の実施
  3. ユーザーへの適切な通知

更新履歴

  • 2024-12-09: 初版作成
  • セキュリティポリシーの定期見直し予定

There aren't any published security advisories