SQLインジェクションとは
SQLインジェクションとは第三者がSQLコマンドを悪用してのDBへ不正にアクセスし、情報を改ざんしたりするサイバー攻撃のことです。
対策
対策は以下のやり方があるみたいです。
対策 |
---|
SQL文の組み立ては全てプレースホルダで実装する{ |
SQL文の組み立てを文字列連結により行う場合は、エスケープ処理等を行うデータベースエンジンのAPIを用いて、SQL文のリテラルを正しく構成する。 |
ウェブアプリケーションに渡されるパラメータにSQL文を直接指定しない。 |
エラーメッセージをそのままブラウザに表示しない。 |
データベースアカウントに適切な権限を与える。 |
SQLインジェクションの実演
こちらの動画のハッキングを紹介されていたのでよかったら見てください。
SQLインジェクションを扱っているUdemy
N + 1問題
DBで同じ問題で扱われます。よかったら目を通しておいてください。
資料