SQLインジェクション

 2020.05.18  株式会社ジェイピー・セキュア

私たちは日頃からインターネットを通じて、Webアプリケーションやサービスを利用し、その恩恵を受けています。その一方でWebサイトの改ざんや情報漏えいといった事件・事故が後を絶たないという実情もあり、Webサイトの運営者はセキュリティに対する正しい知識が身に付ける必要があります。

本稿では、データベースを不正に操作することで機密情報の窃取などを行うSQLインジェクションについて解説します。安心・安全なWebサイトを運営するために様々な攻撃手法についての知識を身に付けるようにしましょう。

データベースとSQL

情報化社会の中、企業はなんらかのかたちでWebサイトを活用することが当たり前となり、Webサイトはビジネスの成長に欠かせない存在となっています。Webの利用者である私たちが日頃から利用している検索サービスやオンラインショッピングなどでは、データベース(Database)が活用されており、重要な役割を果たしています。データベースは、検索や追加、更新、削除などを容易に且つ再利用可能な情報の集まりを指し、略して「DB」とも呼ばれます。データの基地といった意味合いから書類として纏められた電話帳などもデータベースと呼べますが、コンピュータシステムで実現された情報の集まりを指すことが多くなっています。

Microsoft社のExcelで作成され、条件抽出などが行える顧客リストなども立派なデータベースであり、AccessのようにMicrosoft Windows向けのデータベースの管理を目的とした専用ソフトウェアもあります。先述の検索サービスやオンラインショッピングなどにおける情報の活用では、データベース管理システムが活用されており、膨大な情報の中から目的の情報を探し出したり、必要なときにその情報を使用したり更新できるようになっています。Webを通じた各種サービスには、Webサイトという入り口があり、私たち利用者の入力(要求)をデータベースと連携したWebアプリケーションによって、情報の利活用が実現されているのです。

データベースの操作は、SQLというデータベースを操作する言語で行います。データベース管理システムに対して、情報の検索(SELECT文)や追加(INSERT文)、更新(UPDATE文)、削除(DELETE文)といった命令をすることで、データベース上の情報を活用します。

Webを介した利用者からの要求に応じて情報を引き出したり、編集するためにデータベースが活用されており、さまざまなサービスを提供するWebアプリケーションが私たちの日常生活に欠かせない存在となっているのです。

SITEGUARD
ジェイピー・セキュアソフトウェアライセンス価格表

SQLインジェクションとは

先ほど、データベースの操作はSQLによって行うという話をしました。セキュリティを考えたときに、この時点で「不正にデータベースを操作されたらどうなるのだろうか?」とお気付きの方もいらっしゃるかもしれません。そうです、意図していない情報の検索や更新が生じると、機密情報が漏えいしたり、改ざんされるといった事態に陥る恐れがあります。

インジェクションは「注入」を意味し、外部から不正にSQLを操作する攻撃、またはその脆弱性がSQLインジェクションです。SQLインジェクションは、Webアプリケーションの実装の不備を悪用し、アプリケーションが想定しないSQL文を実行させることでデータベースを不正に操作するのです。データベースを直接操作されてしまうことから大規模な情報漏えいにつながる可能性があるなど、対策を怠るととても深刻な被害を受ける恐れがあります。

  • データベースの情報が攻撃者によって盗まれる
  • データベースの情報が攻撃者によって改ざんされる
  • 攻撃者によって会員サイト等の認証を回避される など

SQLを呼び出してデータベース上の情報を扱うWebアプリケーションのサイト運営者、アプリケーション開発者は、SQLインジェクションの脆弱性のない徹底したプログラミングが求められます。

いかがでしょうか?SQLインジェクションがどのようなものかを解説しました。以下の記事ではSQLインジェクションの対策について、開発面での対策のほか、セキュリティ製品を活用した対策を紹介しています。SQLインジェクションについてより詳しく知りたい方は、ぜひ参考にしてください。

関連記事:WAFによるSQLインジェクション攻撃の防御

信頼の純国産ソフトウェア型WAF SiteGuardシリーズ製品概要

SITEGUARD
ジェイピー・セキュアソフトウェアライセンス価格表

RECENT POST「入門」の最新記事


SQLインジェクション
SITEGUARD

RANKING人気資料ランキング

RECENT POST 最新記事

ブログ無料購読

RANKING人気記事ランキング

TOPIC トピック一覧