PSXRecompStudio でセキュリティ脆弱性を発見した場合は、GitHub の Private Vulnerability Reporting 機能を使用して、責任を持って報告してください。
- リポジトリの Security タブを開く
- "Report a Vulnerability" をクリック
- 以下の情報を可能な限り含めて報告してください
脆弱性報告には、以下の情報を記載することで、迅速な対応が可能になります。
- 脆弱性の概要: 脆弱性の種類と影響(SQL Injection、Cross-Site Scripting、認証回避など)
- 影響範囲: 影響を受けるコンポーネント(PSXRecompStudio、PSXRecomp.Core、PSXRecomp.Native など)
- 再現手順: 脆弱性を再現するための具体的な手順やコード例
- 対象バージョン: 脆弱性が存在するコミット、ブランチ、またはリリースバージョン
- 実行環境: OS、.NET バージョン、その他の関連するソフトウェアバージョン
- PoC(Proof of Concept): 脆弱性を実証するコードやスクリプト(ただし、本番環境に害を与えないようにしてください)
- ログ出力: 脆弱性を示す関連するエラーログやスタックトレース
以下の方法での報告はしないでください。
- 公開 GitHub Issue: 脆弱性の詳細を一般に公開する Issue を作成しないでください。パッチが公開されるまで、脆弱性情報は非公開のままにしてください。
- 公開フォーラム・SNS: Twitter、Stack Overflow、その他の公開フォーラムでの報告は避けてください。
- メールまたは個人への連絡: 本プロジェクトではセキュリティ専用メールアドレスを現在設置していません。必ず GitHub の Private Vulnerability Reporting を使用してください。
脆弱性報告を受けた場合、プロジェクトチームは以下の対応を行います。
- 受取確認: 報告内容が明確か、追加情報が必要かを確認します
- 検証: 報告された脆弱性が実在することを確認します
- 重要度評価: 脆弱性の重要度を評価します
- 対応時間についての確約は現時点でしていません
- ただし、重大度が高い脆弱性(認証回避、任意コード実行など)は優先的に対応します
- 軽微な脆弱性は、通常のリリースサイクルに組み込まれる可能性があります
- 脆弱性の修正は、まず非公開でパッチを開発します
- パッチが完成し、テストが確認できた時点で、新しいリリースを公開します
- リリース時に、修正内容を明確に記載します(ただし、脆弱性の詳細が公開されるまで、要点のみに限定する場合があります)
- GitHub の Security Advisory 機能を使用して、セキュリティ情報を適切に公開する予定です
現在のバージョン管理方針:
- 最新版(main ブランチ): 常に修正の対象です
- リリース済みバージョン: GitHub Releases で公開されたバージョンについて、以下のように対応します
- 最新の 2~3 リリースまでを対象に修正を行う予定です
- 古いバージョンの脆弱性の修正が必要な場合は、報告者と相談の上、対応を判断します
- 開発版(ブランチ版):開発進行中のブランチは修正対象ですが、安定性は保証できません
PSXRecompStudio は以下の依存ライブラリを使用しています。
- Avalonia UI
- xUnit
- その他の NuGet パッケージ
- C++ 標準ライブラリ
- CMake、Ninja
- PSXRecompStudio 本体の脆弱性: 当プロジェクトのコードに起因する脆弱性は、本ポリシーに従って対応します
- 依存ライブラリの脆弱性: 依存ライブラリ(Avalonia、.NET Framework など)に関連する脆弱性は、各ライブラリのセキュリティ報告ツールに報告してください
- ただし、PSXRecompStudio の使用方法がセキュリティ上の問題を招いている場合は、本ポリシーに従って対応します
セキュリティに関する質問や懸念がある場合は、GitHub の Security Advisory を通じてプロジェクトチームに連絡してください。
責任を持ってセキュリティ脆弱性を報告いただいた方に対して、プロジェクトチームは感謝と敬意を示します。