あなたの公開している Web サイトや Web アプリケーションの安全性を確保することは重要なことです。コードにおける単純なバグであっても個人情報の漏洩につながり、またそのデータの窃取方法を探している不心得者もそこら中に居ます。以下に紹介する記事では、コードの安全性を確保する際に助けとなる情報を提供しています。

Content Security Policy (CSP)
Content Security Policy (CSP) とは、クロスサイトスクリプティング (XSS) やデータを差し込む攻撃などといった、特定の種類の攻撃を検知し、影響を軽減するために追加できるセキュリティレイヤーです。これらの攻撃はデータの窃取からサイトの改ざん、マルウェアの拡散に至るまで、様々な目的に用いられます。
HTTP Strict Transport Security
HTTP Strict Transport Security(しばしば HSTS と略されます)は、HTTP の代わりに HTTPS を用いて通信を行うよう、Web サイトからブラウザにに伝達するためのセキュリティ機能です。
Public Key Pinning
Public Key Pinning Extension for HTTP (HTTP 公開鍵ピンニング拡張、HPKP)は、偽造された証明書による中間者攻撃を防ぐため、特定の公開鍵と特定の Web サーバを紐付ける(ピン留めする)ように Web クライアントへ依頼するセキュリティ機能です。
Secure Contexts
安全であるために必要最小限な要件をブラウザが満たしている場合、そのブラウザは 安全なコンテキスト(Secure Context) の中にいると考えます。ブラウザは安全なコンテキストの確認を行うことで、ユーザの通信に安全性が確保されている場合のみ利用を許可するべき API を公開できます。
Subresource Integrity
Subresource Integrity (SRI) とは、CDN などから取得したファイルが意図せず改ざんされていないかをブラウザが検証するセキュリティ機能です。SRI を利用する際には、取得したファイルのハッシュ値と一致すべきハッシュ値を指定します。
Transport Layer Security
Transport Layer Security (TLS) における暗号スイートとパラメータを適切に選択することは必要不可欠であり、かつ極めて重要です。これらを適切に選択することは、クライアント・サーバ間における通信の機密性・完全性を維持することにつながります。Mozilla Operations Security (OpSec) チームでは、TLS の設定に必要な項目のリファレンスを wiki で公開しています
あなたのサイトをセキュアにするためには
あなたのサイトをよりセキュアにする方法はいくつもあります。この記事はその方法を紹介するとともに他のより有益な記事へのリンクを掲載しています。
サイト認証ボタン
Firefox における機能の一つに サイト認証ボタン があります。このボタンによって、ユーザは自分が閲覧している Web サイトに関する詳しい情報を知ることができます。
同一オリジンポリシー
同一オリジンポリシーとは、あるオリジンから読み込まれた文書やスクリプトについて、そのリソースから他のオリジンのリソースにアクセスできないように制限するものです。同一オリジンポリシーは Web セキュリティにおける重要な仕組みであり、悪意ある行動を起こしかねないリソースの分離を目的としています。
安全でないパスワード
HTTPS プロトコルは、ネットワーク上での盗聴(機密性)や改ざん(完全性)といった脅威から、ユーザのデータを保護できるように設計されています。 ユーザのデータを扱う Web サイトは、ユーザを攻撃者から守るために HTTPS を使うべきです。HTTPS を使わなければ、ユーザの情報(ログインの資格情報など)が盗まれるのは当たり前になってしまいます。このことを Firesheep が証明したのは有名です。
強度の弱い署名アルゴリズム
ディジタル証明書署名 に用いられる署名アルゴリズムの強度は、証明書のセキュリティにおいて中核を担う要素です。署名アルゴリズムの強度が弱いと、攻撃者が偽の証明書を作成・取得できてしまう可能性が生じます。攻撃者の視点からみると、新しい攻撃手法の発見や利用可能な技術の進歩により、実際に攻撃を実行できる確率は高まっています。したがって、古いアルゴリズムを利用することは推奨されなくなり、最終的には削除されることになります。

Securityコミュニティに参加してください

あなたの好きな方法でディスカッションに参加してください

ドキュメントのタグと貢献者

タグ: 
このページの貢献者: hashedhyphen, takashi
最終更新者: hashedhyphen,