security.txtとは?

security.txtはRFC 9116で定義された小さなテキストファイルで、セキュリティ研究者に、ウェブサイトの脆弱性を報告する方法を伝えます。/.well-known/security.txt に配置します。このファイルがないと、不具合を見つけた人は誰にメールすればよいか推測する必要があり、報告を諦めてしまうこともあります。

このファイルには2つのフィールドが必要です。Contactには連絡方法を、Expiresにはファイルが期限切れとなる日付を指定します。RFCでは、Expiresの日付を1年以内に設定することを推奨しています。これにより、少なくとも年に1回はファイルを確認するよう促せます。

ツールの説明

連絡先を1行に1つ入力してください。メールアドレスを入力するとmailto:リンクになり、電話番号を入力すると、空白、ハイフン、ピリオド、括弧を取り除いたtel:リンクになります。それ以外の連絡先には、https://リンクを指定してください。有効期限は今日から1年後に設定され、その日の最終秒をUTCで表記します。Preferred-Languagesはカンマ区切りのリストで、初期値はenです。

任意のフィールドとして、暗号化キー、ポリシー、謝辞、採用情報、canonical URLを指定できます。空のフィールドはファイルに含まれません。

ファイルをコピーするか、security.txtとしてダウンロードできます。その下に表示される注記には、問題点があれば一覧表示されます。問題点には、連絡先がない、連絡先がメールアドレス・電話番号・https://リンクのいずれでもない、有効期限が未設定・過去・1年より先の日付である、URLがhttps://で始まっていない、などがあります。暗号化キーにはopenpgp4fpr:またはdns:の値も指定できます。

RFC 9116では、OpenPGPで署名したバージョンも認められています。このツールでは、署名のないファイルを作成します。

例

連絡先を2件、有効期限を2027-10-21、言語を英語とドイツ語に設定し、URLを3つ指定すると、次のようになります。

Contact: mailto:security@example.com
Contact: tel:+15550100199
Expires: 2027-10-21T23:59:59.000Z
Encryption: https://example.com/pgp-key.txt
Preferred-Languages: en, de
Canonical: https://example.com/.well-known/security.txt
Policy: https://example.com/security-policy

連絡先にはsecurity@example.comと+1 (555) 010-0199を入力しました。

機能

  • メールアドレスや電話番号を、有効な連絡先の形式に変換
  • 入力中に有効期限とリンクを確認
  • ファイルをコピーするか、security.txtとしてダウンロード