SQLインジェクションとXSSの違い
SQLインジェクションはデータベースへ不正な命令を実行させ、XSSは閲覧者のブラウザへ悪意あるスクリプトを実行させます。
一番大きな違い
攻撃される実行先がデータベースかブラウザかの違い
違いを並べて確認
| 比較軸 | SQLインジェクション | クロスサイトスクリプティング |
|---|---|---|
| 悪用するもの | SQL文の組立て | Webページへの出力 |
| 主な実行先 | データベース | 利用者のブラウザ |
| 基本対策 | プレースホルダでSQLをパラメータ化 | 出力時にHTMLをエスケープ |
入力欄の後に何が起きるか
入力値がSQL命令として連結され、顧客表を読み出すのがSQLインジェクションです。投稿内容がHTMLへ無処理で入り、閲覧者のブラウザでスクリプトとして動くのがXSSです。
被害対象を探す
SQLインジェクション「データベースの不正検索・更新」「SQL文」
クロスサイトスクリプティング「閲覧者のブラウザ」「スクリプト」「Cookie窃取」
FLASHCARDS
ITパスポートを勉強中ですか?
この2語を単語帳で確認し、意味を思い出す練習ができます。