皆さんは利用しているサービスに脆弱性を見つけたらどうするでしょうか?このような第三者によるセキュリティ報告の仕組みとして、本日は「security.txt」を紹介します。
security.txt はセキュリティに関する情報を連携するために標準化されたテキストファイルです。 このファイルをWebサイト上の所定のパスに配置することで、脆弱性等を発見した第三者からサイト管理者への情報提供が容易になります。security.txt は以下のように記載されます。
このファイルをWebサイトの /.well-known/security.txt に配置することで、連絡先等に関する情報を宣言できます。
# #から始まる列はコメントを表します
# 連絡先情報
# セキュリティについての連絡先を記載します
Contact: mailto:security@example.com
Contact: tel:+123456789
Contact: https://example.com/contact-security.html
# 暗号通信のための PGP 鍵
# 報告者がレポートを暗号化するのに使用します。
Encryption: https://example.com/pgp-key.txt
# セキュリティ公開のポリシー
Policy: https://example.com/security-policy.html
# 謝辞
# 通常、報告済みのセキュリティ情報とその報告者等を記載します
Acknowledgments: https://example.com/acknowledgments
# 受け付け言語の優先度
Preferred-Languages: en, ja
# 有効期限
# 必須項目です。1年以内が推奨されます。
Expires: 2024-01-01
security.txt を設置する効果としては以下が挙げられます。
security.txt にセキュリティ報告ポリシーや連絡先、報奨金情報などを掲載することで、 ホワイトハッカーは情報漏洩や脆弱性情報等の問題を素早く報告することができます。これはホワイトハッカーコミュニティとの良好な関係構築にも役立ちます。このような報奨金制度を運用する際にはバグバウンティプラットフォームの利用も有効ですが、サイト自体に security.txt を設置することでプラットフォームを経由しないホワイトハッカーからも情報を受け取れる可能性が向上します。
security.txt を設置し、そのセキュリティ報告ポリシーを公開することは、セキュリティに対する組織の姿勢が前向きであることを表明できます。 脆弱性があっても隠蔽する組織より、積極的に報告を受けて改善に取り組む組織の方が信頼されることでしょう。security.txt の設置だけではWebサイトの脆弱性は無くなりませんが、その姿勢により組織の信頼性向上につながると言えます。
security.txt を導入する際の注意事項を紹介します。
security.txt には連絡窓口を掲載する必要があり、この窓口に大量のスパムメールが届く場合があります。この問題の軽減策としてはスパムフィルタが挙げられますが、他にも「バグバウンティ プラットフォームを利用する」方法もあります。 バグバウンティ プラットフォーム を利用することで、セキュリティ報告以外の連絡をプラットフォーム側で選別することができます。
また、security.txt は継続的に保守する必要があります。security.txt が実際の報告先やポリシー、報奨金等と乖離がある場合、ホワイトハッカーコミュニティとの良好な関係が築けません。 security.txt には必ず有効期限を記載する必要があるため、積極的に短い有効期限(1年以内)を設定し、 定期的にポリシーを更新することが推奨されます。
最後に一番重要なこととして、security.txtを設置する際には必ず基本的なセキュリティ対策を施すことです。security.txt を設置したからと言って、脆弱性が勝手に修正される訳ではありません。security.txt が改ざんされるようでは目も当てられません。脆弱性診断などで脆弱性の洗い出しと対策をしたうえで、より高度な攻撃への備えとしてバグバウンティを活用することが重要です。
お見積り・ご相談など、お気軽にご相談ください
サイトTOPへ