mochiOSプロジェクトでは、公式コンポーネントに影響するセキュリティ上の問題を管理するために、mochi Security Advisory DBを運用します。 アドバイザリIDは次の形式を使用します。
MOC-SA-YYYY-MMDD
例:
MOC-SA-2026-0401
このIDはmochiOSプロジェクト独自のアドバイザリIDです。 CVE IDではありません。脆弱性に対して後からCVE IDやGHSA IDが割り当てられた場合は、該当するMOC-SAエントリから外部IDとして参照します。
次のコンポーネントを対象とします。
- mnuカーネル
- mochiOSのユーザーランド
- mochiOSのアプリケーション
- mochiOSのビルドツール
- パッケージ署名・検証ツール
- パッケージ形式とmanifest処理
- Developer Console
- AppStore APIと配布基盤
- リリース成果物
- セキュリティモデルに影響する公式ドキュメント
次のような内容の報告を受け付けます。
- 権限昇格
- カーネルメモリ破壊
- ユーザー空間とカーネル空間の分離の突破
- Capabilityの検査漏れ、または権限強制の誤り
- IPC権限のバイパス
- syscall引数検証の不備によるセキュリティ問題
- セキュリティ境界を越えた任意コード実行
- 署名検証の回避
- パッケージ改ざん、または偽造パッケージの受け入れ
- 認証・認可のバイパス
- 開発者の非公開情報への不正アクセス
- サンドボックス脱出
- 非特権ユーザーや信頼されていないパッケージから引き起こせるサービス拒否
- セキュリティ上重要な情報漏えい
- mochiOSを通じて悪用可能な公式依存関係の脆弱性
次の報告は、通常はMOC-SAの対象外です。
- セキュリティ影響のない通常のバグ
- UIの問題、誤字、表現の問題、ドキュメントの体裁に関する問題
- セキュリティ境界に関係しないローカル開発ビルド上のクラッシュ
- サポート対象外、改変済み、または古いブランチだけに影響する問題
- 具体的な影響説明のない自動スキャナ出力のみの報告
- 再現可能なシナリオがない理論上の問題
- プロジェクトが提供を明言していないセキュリティ機能の欠如
- ソーシャルエンジニアリング
- プロジェクトメンバーに対するフィッシング
- 開発者の端末に対する物理攻撃
- 公開インフラへのサービス拒否攻撃
- スパム、レート制限回避、負荷試験
- mochiOSプロジェクトが管理していない第三者サービスの脆弱性
- 本番リリースで信頼されていないことが明確なテスト鍵やサンプル鍵の漏えい
- 自分自身の環境でのみ成立し、権限境界を越えない攻撃
対象外の問題であっても、通常のバグとして修正する場合があります。ただし、原則としてMOC-SA IDは割り当てません。 これらの問題は、GitHub Issuesで報告してください。
未公開の脆弱性は、公開Issueで報告しないでください。
推奨する報告方法は次のとおりです。
- 対象リポジトリで有効化されている場合は、GitHubのSecurity Advisories
- プロジェクトが指定する非公開のセキュリティ連絡先
- 他に連絡手段がない場合は、メンテナーへの非公開連絡
報告には、できるかぎり次の情報を含めてください。
- 影響を受けるコンポーネント
- 影響を受けるバージョン、commit、またはリリース成果物
- 再現手順
- 可能であればPoC
- 期待される動作
- 実際の動作
- セキュリティ上の影響
- すでに公開されている問題かどうか
- 公開時にクレジット掲載を希望するかどうか
再現手順と現実的な影響説明が明確な報告ほど、受理しやすくなります。
報告を受け取った後、プロジェクトは可能な範囲で次の対応を行います。
- 報告が対象範囲に含まれるか確認する
- 問題を再現する
- 影響範囲と深刻度を評価する
- 必要に応じてMOC-SA IDを割り当てる
- 修正を準備する
- 修正後、または公開が必要になった時点でアドバイザリを公開する
プロジェクトは、固定された応答時間や修正期限を保証しません。
プロジェクトは協調的な脆弱性開示を推奨します。 プロジェクトが調査と修正を行うための合理的な時間を得る前に、詳細を公開することは避けてください。 ただし、脆弱性がすでに公開されている場合、実際に悪用されている場合、またはユーザーに直ちに影響するリスクがある場合は、限定的な情報を先に公開することがあります。
公開されるアドバイザリには、原則として次の情報を含めます。
- MOC-SA ID
- タイトル
- 深刻度(Low / Medium / High / Criticalのいずれかをメンテナーが判断)
- 影響を受けるコンポーネント
- 影響を受けるバージョン
- 修正済みバージョン
- 概要
- 影響
- 回避策または緩和策
- 修正情報
- 希望があり、適切な場合は報告者のクレジット
これはバグバウンティプログラムではありません。 プロジェクトは、脆弱性報告に対する金銭的報酬、物品、その他の補償を保証しません。
希望があり、適切な場合は、公開アドバイザリ上で報告者としてクレジットを掲載することがあります。
プロジェクトは、善意に基づくセキュリティ調査を歓迎します。
安全な調査のため、次の点を守ってください。
- 自分が所有している、または明確な許可を得た環境でのみテストする
- 他のユーザーのデータにアクセス、変更、削除、持ち出しをしない
- 永続化、マルウェア、破壊的なペイロード、横展開を行わない
- サービス停止を引き起こさない
- 機密情報に到達した場合はテストを中止し、報告する
- プロジェクトが問題を理解し再現できるだけの情報を提供する
被害を発生させる行為、恐喝、第三者システムへの攻撃、ユーザーのプライバシー侵害は、善意の調査とはみなしません。
通常のバグ報告や機能要望は、GitHub Issuesで受け付けます。 セキュリティ脆弱性は、公開Issueで報告しないでください。GitHub Security Advisoriesで報告してください。
受理されたセキュリティ問題は、調査と修正の後、必要に応じてMOC-SA IDを割り当て、mochi Security Advisory DBで公開します。
- @minto-dane (Twitter: https://x.com/NiaAtSyzd)
- @tas0dev (Twitter: https://x.com/tas0dev)