SQLインジェクション
SQL Injection
えすきゅーえるいんじぇくしょん
他の資格での定義
Webアプリケーションの入力欄に不正なSQL文を挿入し、データベースを不正に操作する攻撃手法。情報の漏えいや改ざん、データの削除などを引き起こす。
Webアプリケーションの入力フォームなどからSQL文を挿入し、データベースを不正に操作する攻撃。データの漏えい、改ざん、削除などの被害をもたらす。入力値のバリデーションやプレースホルダの使用で対策する。
Webアプリケーションの入力フォームなどに不正なSQL文を注入し、データベースを不正に操作する攻撃手法。データの窃取、改ざん、削除、認証回避などの被害を引き起こす。プレースホルダの使用やエスケープ処理で対策する。
Webアプリケーションの入力値にSQL文の断片を挿入し、意図しないSQL文をデータベースに実行させる攻撃手法。データの不正取得、改ざん、削除が可能になる。プレースホルダ(バインド変数)の使用やエスケープ処理が主な対策。
Webアプリケーションの入力値を通じて不正なSQL文を挿入・実行させる攻撃手法。データの不正取得、改ざん、削除などが可能になる。対策としてプレースホルダ(バインド機構)の使用、入力値の検証、エスケープ処理、最小権限のDBアカウント使用がある。
関連キーワードの用語
関係モデルにおいて、属性がとりうる値の集合。例えば「年齢」属性のドメインは正の整数、「性別」属性のドメインは{'男','女'}など。SQLではCHECK制約やデータ型で制限を実現する。
関係モデルに対する操作を数学的に定義した代数体系。選択、射影、結合、和、差、直積、商などの演算からなる。SQLの理論的基盤であり、問合せ最適化の基礎となる。
関係代数の基本演算の1つで、リレーションから指定した条件を満たすタプルを取り出す操作。SQLのWHERE句に対応する。記号σ(シグマ)で表される。
関係代数の基本演算の1つで、リレーションから指定した属性のみを取り出す操作。重複するタプルは除去される。SQLのSELECT句の列指定に対応する。記号π(パイ)で表される。
関係代数の演算で、2つのリレーションを共通の属性値に基づいて結合する操作。自然結合、等結合、θ結合などの種類がある。SQLのJOIN句に対応する。
関係代数の演算で、2つのリレーションの全タプルの組合せを生成する操作。結果のタプル数は両リレーションのタプル数の積となる。SQLのCROSS JOINに対応する。