セキュリティ
Waline コメントシステムのセキュリティは私たちが最も重視している点です。ここでは Waline のセキュリティについて説明します。
コメントのセキュリティ
XSS 攻撃の防止
Waline はサーバー側で DOMPurify を使って各コメントの入力をフィルタリングし、潜在的な XSS 攻撃を防ぎます。そのため、<iframe> やあらゆる形式のスクリプトは使用できません。
リンク追跡の防止
すべてのリンクには自動的に rel="noreferrer noopener" が設定され、target="_blank" で新しいウィンドウに開かれます。
悪意あるコンテンツの埋め込み防止
コメント欄に送信可能なフォームを作成して他の訪問者に情報を送信させる行為を防ぐため、
<form>と<input>は使用できません。スタイルを使ってウェブサイトのページを改変したり、自分のコメントのスタイルを変更してスパム広告を埋め込んだりする行為を防ぐため、
<style>タグと要素のstyle属性は利用できません。メディアの自動再生機能の悪用を防ぐため、
autoplay属性は使用できません。
なりすましの防止
Waline はアカウントシステムに対応しているため、ユーザーにアカウントでの登録とログインを強制できます。これにより、訪問者が他人のコメントを偽装することはできなくなります。
この機能を有効にするには、クライアントとサーバーの両方でログイン必須の設定を行う必要があります。詳しくは login と LOGIN を参照してください。
サイトのセキュリティ
頻度制限
コメントの乱用を防ぐため、Waline はコメント元の IP を制限します。デフォルトでは、同じ IP は 1 分間に 1 件のコメントしか送信できません。この制限は サーバーリファレンス → 環境変数 で変更できます。
連投の防止
Waline はコメント入力時に既存のコメントを検出し、類似度が高すぎるコメントを検出した場合はそのコメントを拒否します。これにより、ある程度の連投を防ぐことができます。
コメントの承認
サイトが悪意ある攻撃を受けているとき、敏感な時期、または多忙なときには、コメント承認機能を有効にできます。詳しくは サーバーリファレンス → 環境変数 を参照してください。
コメント承認を有効にすると、すべての新しいコメントはデフォルトで非表示になります。Waline の管理画面または該当ページのコメント欄でコメントを確認・承認できます。表示されるのは承認したコメントのみです。
データのセキュリティ
Waline はサーバー側を持つため、コメントデータや閲覧数を改ざんすることはできません。
また、サーバー側で DISABLE_USERAGENT と DISABLE_REGION 変数を設定すると、ユーザーのコメントの UA や地理位置情報を他の人が閲覧できないようにできます。
