記事一覧へ戻る 本の順番で続きを読む

SQLインジェクションとは?わかりやすく解説

2026/02/10 14:54

SQLインジェクション

読み: エスキューエルインジェクション / 英語: SQL Injection

概要

Webアプリケーションの入力欄にSQL文を挿入して、データベースを不正に操作する攻撃。

詳細解説

SQLインジェクションはWebアプリケーションの代表的な脆弱性です。

攻撃例

ログイン画面で以下を入力:

ユーザ名: ' OR 1=1 --
パスワード: (何でもOK)

→ SQL文が SELECT * FROM users WHERE name='' OR 1=1 --' に変化し、全ユーザでログイン可能に。

対策

  • プレースホルダ(バインド変数): SQL文とデータを分離
  • エスケープ処理: 特殊文字を無害化
  • WAFの導入: 不正なリクエストを検知・遮断
  • 最小権限の原則: DBユーザに必要最小限の権限のみ付与

この記事は「SQLインジェクション」についての用語解説です。学習の参考にしてください。