Web Form セキュリティ

inputフォームのセキュリティ対策

email タイプの入力は、 クライアント側でエラー検証されるのが普通です。 しかし、これでセキュリティ対策が行われたと考えるのは間違いです。 クライアント側の検証は簡単に無効に出来るので、 サーバーに不正なデータを送信される恐れがあります。 ウェブサイトは デザイン、使用方法など あらゆる面で警戒が必要になります。 ウェブサイトから、 パスワード、メールアドレス、クレジットカードのデータが漏洩する危険にさらされています。 あるいは、ウェブサイトが変更されたり、 自分のウェブサイトにログインできなくなる恐れもあります。 そのためセキュリティ対策が必須になります。

ウェブサイトの脅威

よく知られているウェブサイトの脅威には、 クロスサイトスプリプテイング(XSS)、 SQL インジェクション、 クロスサイトリクエストフォージェリー(CSRF) があります。 簡単に説明しておくと、 クロスサイトスプリプテイング(XSS)は、 ウェブサイトからクライアントサイドのスクリプトを挿入する攻撃です。 SQL インジェクションは、 データへのアクセス、変更、削除する攻撃です。 クロスサイトリクエストフォージェリーは、 ユーザーの同意なしでアクションを実行する攻撃です。

サーバーサイド Web フレームワーク

サーバーサイド Web フレームワークは こういった攻撃に対する、 防御メカニズムを備えているので、 必ず使う必要があります。 サーバーサイドウェブフレームワークは、 ウェブアプリケーションの作成、保守、 および拡張を容易にするソフトウェアフレームワークです。 こういったサーバーサイドウェブフレームワークは、 多数存在します。 代表的なものには、 Python言語系 Django、Flask JavaScript言語系 Express、Angular、Vue.js、React.js Ruby言語系 Ruby on Rails PHP言語系 Laravel Microsoft系 ASP.NET Perl系 Mojolicious Java系 Spring Boot 等があります。 どれを使うかは自由ですが、 将来性のあるもの、 使いやすいものが良いかもしれません。 しかし、それぞれに個性があって、 変更は容易ではないので、 慎重に選択する必要がありそうです。