Skip to content

Security: RIB-Lab/UnrailedMc

Security

SECURITY.md

セキュリティポリシー

脆弱性 (=セキュリティ上の問題) を発見されたと思われる場合は、以下の方法でご報告ください。

報告方法

  1. 脆弱性情報をパブリックな場 (=誰でも見られる場所) で報告しないでください。

    代わりに、RIBLab Discord サーバー内の「運営へのお問い合わせ用チケット作成」をして報告してください。

  2. 脆弱性の報告は日本語が扱える場合は日本語で行ってください。

    機械翻訳をしてしまうと、意味が変わってしまうので原文のままでご報告してください。

脆弱性報告のガイドライン

脆弱性の調査と迅速な対応を可能にするため、以下の情報を提供してください (提供できる範囲で) 。

  1. 組織名とリポジトリ名

    RIB-Lab/リポジトリ名
    
  2. 脆弱性情報の入手先

    ■ 自分で発見した
    □ 他者から入手した
    □ DiscordやLineなどのチャットツールから入手した
     (スクリーンショット添付)
    □ Webサイトから入手した
     (URL:         )
    □ 自動化ツールや脆弱性スキャナーから入手した
    
  3. 脆弱性の種類 / 脆弱性タイプとカテゴリー

    バッファオーバーフロー、SQLインジェクション、クロスサイトスクリプティング (XSS: Cross-Site Scripting)  など
    
  4. 再現の状況

    ■ 常に
    □ 時々
    □ まれに
    
  5. 具体的な再現手順、概念実証またはエクスプロイトコード (可能であれば、画面のスクリーンショットを)

    1. FoobarbazWebServerに対して特定のリクエストを送信する
    2. バッファオーバーフローが発生する
    3. 任意のコードが実行可能となる
    
    リクエストに関しては、以下の条件をすべて満たす必要があります。
    1. HTTPメソッドがPUTであること
    2. 1024 octet以上の長さの引数が含まれていること
    
  6. 関連するファイルのフルパス、ソースコードの所在(ファイルパス、タグ、ブランチ、コミット、行番号、または直接 URL)

    https://github.com/RIB-Lab/RIBLab-docs/blob/96a1bb597fb418aa77810c6bf534b6bac8597ae3/README.md?plain=1#L9C1-L11C94
    
  7. 外部への報告 (もし予定している場合)

    可能な限り迅速に脆弱性の修正に取り組んでおります。報告者の皆さまには修正が完了するまで外部への報告をお控えいただきますようお願い申し上げます。

    ■ 外部への報告を予定している
    □ 外部への報告を予定していない
    

これらの情報は、RIBLab がレポートをより迅速にトリアージをするのに役立ちます。

脆弱性報告に関するルール

  1. 再現手順の詳細な記載

    報告者は、脆弱性の再現手順を十分に詳細に記載してください。情報不足により脆弱性が再現できない場合は、報告は受理されません。

  2. 脆弱性ごとのチケット作成

    報告者は、脆弱性ごとにチケットを作成して報告してください。ただし、問題の影響を明確にするため、複数の脆弱性を 1 つのチケットに含む例外が認められます。

  3. 十分な調査期間の確保

    RIBLab が報告者の報告内容を十分に調査・検証するため十分な時間をください。

  4. 事前許可なしの公表禁止

    報告者および第三者は、RIBLab の事前の許可なく、潜在的および顕在的な脆弱性情報を第三者もしくは一般に公表してはいけません。

  5. 報告書の転送に関する権利の留保

    RIBLab は、報告書に含まれる情報が第三者に潜在的に、または実際に関係する場合、必要に応じて当該情報を関連する者に転送する権利を有します。

無効な報告

無効な報告する場合、セキュリティ上の影響が証明できる攻撃シナリオが必要です。 (非常に明確で説得力があること)

  1. 旧バージョン (=現在利用されていないバージョン) に関する問題

  2. ソフトウェアバージョンの開示、バナー識別、記述的なエラーメッセージまたはヘッダー (例:スタックトレース、アプリケーションまたはサーバーのエラー)

  3. リソースの過剰消費や不適切なコンテンツのアップロード等の明確な影響がない無制限のファイルアップロード

  4. 影響が明確でないアプリケーションに埋め込まれたサードパーティの API キー・シークレット (多くのサードパーティはアトリビューションのためにこれを必要とするため)

  5. オープンリダイレクト

    単純なリダイレクトの悪用以上のセキュリティ上の影響が証明できる場合を除きます (例:フィッシングのためのリダイレクトの使用だけでは十分な影響があるとは言えません) 。

  6. センシティブなアクションを伴わないページでのクリックジャッキング

  7. Autocomplete が有効な状態

  8. Tab-nabbing

  9. 同形異義語、RLO (=Right-to-Left Override:右から左への上書き) の使用、またはその他の UI 上の問題

  10. 悪用を証明する PoC (=Proof of Concept:概念実証) が存在しない、またはセキュリティヘッダーの欠如や誤設定 (例:content-security-policy、public-key-pins、x-xss-protection、x-content-type-options、x-frame-options、HSTS 等)

  11. コンテンツセキュリティポリシーにおけるベストプラクティスの欠如

  12. リファラーポリシーの欠如

  13. TLS/SSL (=Transport Layer Security/Secure Socket Layer:セキュアソケット層) のバージョン、設定、脆弱な暗号、または期限切れの証明書に関する報告

  14. 非セッション Cookie における HTTPOnly または Secure フラグの欠如

  15. ホストヘッダインジェクション

  16. コンテンツスプーフィングおよびテキストインジェクション

  17. 認証されていないフォームまたはセンシティブなアクションを伴わないフォームでの CSRF (=Cross-site request forgery:クロスサイトリクエストフォージェリ)

  18. Self-XSS (=Self Cross-site Scripting)

  19. Email のベストプラクティス (SPF: Sender Policy Framework、DKIM: DomainKeys Identified Mail、DMARC: Domain-based Message Authentication, Reporting, and Conformance) の欠如

  20. ブラックハット SEO (=Search Engine Optimization:検索エンジン最適化) 手法の活用

  21. 攻撃者とローカルアカウントを共有している場合にのみ有効な攻撃 (例:公共図書館、インターネットカフェにおいて発生するケース)

    1. メモリをスキャンしてデータを抽出する行為

    2. マルウェアをインストールする行為

    3. CA (=Certificate Authority:認証局) 証明書をインストールし、HTTP プロキシをセットアップして通信を復号化可能にする行為

  22. ブロードキャストストーム (=一斉同報通信無限循環嵐) を物理的に発生させる行為

    仮想環境で証明できる場合を除きます。

対象外の脆弱性 (=ポリシー違反)

  1. 物理的な攻撃 (例:財産 (インフラ、施設、データセンター等) に対する物理的な攻撃)

  2. OP (=Operator) や関係する者に対するソーシャルエンジニアリング (フィッシングを含む)

  3. マルウェアを故意に投稿、送信、アップロード、リンクすること

  4. 迷惑メッセージ (=スパム) を送信すること

  5. サービスの停止につながる可能性のある行為 (DoS (=Denial of Service:サービス拒否攻撃) 、DDoS (=Distributed Denial of Service attack:分散型サービス拒否攻撃) 等)

  6. 偽の概念実証で、マルウェアをインストールさせること

There aren’t any published security advisories