短.be

入力バリデーション

2025年9月17日 · 約 1 分で読めます

セキュリティ

入力バリデーション (Input Validation) とは、ユーザーからの入力データが期待する形式、型、範囲、長さに合致するかを検証するプロセスです。SQL インジェクション、XSS、コマンドインジェクションなど、多くの Web 攻撃の第一防衛線として機能します。

入力バリデーションには、ホワイトリスト方式 (許可する値のパターンを定義) とブラックリスト方式 (拒否する値のパターンを定義) があります。セキュリティの観点では、ホワイトリスト方式が推奨されます。ブラックリスト方式は、攻撃パターンの網羅が困難であり、新しい攻撃手法に対して脆弱になりやすいためです。<% if (typeof amazonTag !== 'undefined' && amazonTag) { %><a href="https://www.amazon.co.jp/s?k=入力バリデーション%20セキュリティ&tag=<%= amazonTag %>" target="_blank" rel="nofollow noopener noreferrer" class="amazon-inline-link">Amazon の関連書籍</a><% } else { %>Amazon の関連書籍<% } %>も参考になります。

短縮 URL サービスでは、ユーザーが入力する URL のバリデーションが特に重要です。URL の形式チェック (プロトコルが http:// または https:// であること)、長さの制限、危険なスキーム (javascript:、data:) の拒否、ブラックリストドメインのチェックなどを実装します。

バリデーションはクライアントサイドとサーバーサイドの両方で実施すべきです。クライアントサイドのバリデーションはユーザー体験の向上に寄与しますが、攻撃者はクライアントサイドのチェックを容易にバイパスできるため、サーバーサイドのバリデーションが必須です。<% if (typeof amazonTag !== 'undefined' && amazonTag) { %><a href="https://www.amazon.co.jp/s?k=Web%20アプリ%20セキュリティ%20実装&tag=<%= amazonTag %>" target="_blank" rel="nofollow noopener noreferrer" class="amazon-inline-link">Web アプリセキュリティの実装書</a><% } else { %>Web アプリセキュリティの実装書<% } %>も役立ちます。

関連用語

短縮 URL を作成してみませんか?

無料で URL を短縮する