WEBアプリを開発する上でセキュリティ対策は特に重要です。
最近ではスマホの普及もあり、セキュリティに対する意識が上がってきていると思います。
しかし、一言でセキュリティといっても、開発する側は様々な観点から対策をしなければなりません。
そこで、IPA(独立行政法人 情報処理推進機構)が配布している「安全なウェブサイトの作り方」と「セキュリティ実装 チェックリスト」をご紹介します。
11項目のセキュリティをチェック(改訂第7版)
チェックリストに記載されている内容を抜粋して紹介しますが、攻撃する側も対策する側も日々進化していますので、これがすべてではありません。
ただ、以下の11項目を最低限クリアしていれば、余程の事がない限り問題ないでしょう。
- SQLインジェクション
- OSコマンド・インジェクション
- パス名パラメータの未チェック/ディレクトリ・トラバーサル
- セッション管理の不備
- クロスサイト・スクリプティング
- CSRF(クロスサイト・リクエスト・フォージェリ)
- HTTPヘッダ・インジェクション
- メールヘッダ・インジェクション
- クリックジャッキング
- バッファオーバーフロー
- アクセス制御や認可制御の欠落
CMSやフレームワークの脆弱性にも注意
開発する上でCMSやフレームワークは欠かせない存在になっています。
いくら自分でセキュリティ対策を頑張っても、それ以外の要因で問題が起こることもあります。
JVN(Japan Vulnerability Notes)の脆弱性対策情報データベースで自分が利用しているCMSやフレームワークの脆弱性を知っておきましょう。
参考として、例を2つ挙げておきます。
WordPress
世界的に最も有名なCMS(Content Management System)の一つ。
WordPress本体だけでなく、プラグインの脆弱性も調べることができます。
Laravel
Laravelは今最も注目をされているPHPフレームワークです。
その人気は、特に日本で多く使われているcakePHPを凌ぎ、トップに躍り出ました。
Laravel 4時代から使っていますが、報告されている脆弱性は現在ところ1件です。
(Laravel 5.4.22 未満の 5.4.x)セキュリティ対策は終わりがありません。
皆さん、頑張っていきましょう!
- Original:https://minory.org/web-application-security.html
- Source:Minory
- Author:管理者