SQLインジェクションとは

MySQLなどのSQLデータベースとWEBプログラムを使用しているWEBサイトでサイト内のプログラムを不正操作する事でSQLのデータ取得や改善されてしまう脆弱性の事をいいます。
SQLインジェクションに脆弱性があるとSQLに保存されている個人情報の流出の危険があります。

いままで世界中でSQLインジェクション攻撃により、会員情報やメールアドレスの情報やカードデータの情報が流出したケースがあります。

SQLインジェクションの標的

ハッカー(クラッカー)はデータベースを的にしますが、昔のサーバーシステムならともかく、現在のサーバーのデータベースに直接攻撃する事はできません。
SQLインジェクションの標的はデータベースにアクセスしているWEBサイトやWEBアプリケーションです。

WEBサイトやWEBアプリケーションの穴、脆弱性を探り、攻撃をしかけてきます。

SQLベースのアプリケーションに対する攻撃には、主にエラーベースSQL攻撃、ブラインドSQLインジェクション攻撃、自動SQLインジェクション攻撃があります。

ネットで配布されているアプリケーション(オープンソースなど)におけるSQLインジェクションの脆弱性、アプリで使用されるデータベースの補足的な脆弱性などは注意する必要があります。

SQLインジェクションの対策

SQLインジェクション対策は必須です。
プログラムのコーディングで防げるところは防がなくてはなりません。
特に狙われる言語がPHPです。直接ページに埋め込まれている場合は注意が必要です。

SQLインジェクション攻撃に有効なサーバーアプリケーション

SQLインジェクション攻撃に有効なのが、WAF(ウェブアプリケーションファイアウォール)という機能です。

日本の共用レンタルサーバーなどでも下記にあるようなサーバー会社は機能追加して、SQLインジェクションを防御しています。

【ホームページ用】法人・中小企業向けレンタルサーバーのおすすめと比較【2019年度版】

ハッキングの手口はますます巧妙になってきています。

Webサイトなどは個人情報の取得などで狙われます。
対策する必要がありますので気を付けていきましょう。