ユーザー入力検証

カスタムユーザー入力バリデーション、特に新規ユーザー、新規管理者バッジ、新規ユーザーフィールドに関する実装が可能かどうかご存知の方はいらっしゃいますか?

ペネトレーションテストの結果、これらの領域でHTMLインジェクションやその他の悪意のある入力に対する脆弱性が確認されました。これらの入力をさらに検証してセキュリティを向上させる方法(正規表現を使用するなど、同様の結果を得る別の方法を含む)があるかどうか、ご教示いただけますと幸いです。

よろしくお願いいたします。

「いいね!」 1

はい、モデルにバリデーションを追加する「比較的シンプルな」プラグインを、あなた自身かプロの Discourse プラグイン開発者が作成することは可能です。

もしかしたら、その要望を Marketplace に投稿した方が良いかもしれませんね。

どのフィールドがHTMLインジェクションの影響を受けやすいですか?

「いいね!」 3

まさに私が聞こうとしていたことです。

「いいね!」 1

開発者には私的に伝えてくれるといいですね :slight_smile:

Discourseは、セキュリティ脆弱性の発見に対して報酬を支払う制度に参加しているのでしょうか?

「いいね!」 1

はい、その通りです:hackerone

「いいね!」 2

迅速にお返しいただき、ありがとうございます!

影響を受けるパラメータは以下の通りです:

ユーザー作成:name, title, location, bio_raw

バッジ:name, description, long_description

ユーザーフィールド:name, description

私たちはコミュニティの一員ですが、スタッフではありません。この件については、スタッフからの回答が必要です。ただし、チームが脆弱性とセキュリティに注力していること、および業界標準のフレームワークを採用していることを考慮すると、彼らが回答するまで判断を保留することをお勧めします。

これはあなたが対策を講じる必要があるような問題には聞こえませんが、同時に、すでに何らかの形で対応されている可能性もあります。

「いいね!」 2

もしその設定で HTML インジェクションが許可されているなら、非常に驚きます。ここでお使いのプロフィールを編集して、簡単な例で実証してください。

「いいね!」 2

Meta @Cal へようこそ :wave:

これらのフィールドはサニタイズ/エスケープされています。さらに、Discourse はデフォルトで CSP が有効になっています。

これらもサニタイズされています。また、管理者のみがアクセスでき、CSP も有効になっています。

CSP が有効な状態でユーザー入力に関するセキュリティ問題を見つけた場合は、こちら でお知らせください。

「いいね!」 7