【イラストでわかりやすく解説】SQLインジェクションとは?仕組みと対策を紹介
更新日 : 2024年04月25日
昨今の国際情勢の影響もあり、日本へのサイバー攻撃が深刻化しています。 2022年9月にはロシアからのSQLインジェクションが急増しているというニュースもありました。 このSQLインジェクションの被害を受けた場合、その企業は被害者にもなり、加害者にもなりえてしまうため、この事態は他人事ではありません。 本コラムでは、SQLインジェクションとはなにか、攻撃手法の解説や対策をご紹介します。 組織が運営しているウェブサイトのセキュリティ強化を検討しているかたはぜひご覧ください。 |
目次 |
SQLインジェクションとは
SQLインジェクションとは、第三者がSQLコマンドを悪用してデータベースの情報へ不正にアクセスし、情報を搾取や改ざん、削除する攻撃手法を指します。 具体的には、ウェブサイトに設置されたお問い合わせフォームなどの入力フォームに対し、攻撃者が不正に情報を引き出させるSQL文を入力されるケースがあります。 特にECサイトや会員制のウェブサイトでは個人情報がデータベースに格納されていることもあり、より一層の注意を払う必要がありますが、SQLインジェクションは運営主体やウェブサイトの性質を問わず、MySQLやMicrosoft SQL Server、Oracle、DB2などのデータベースを利用するウェブアプリケーションを設置しているウェブサイトであれば存在しうる問題です。 SQLインジェクションの仕組みについて、かみ砕いた説明を下記のイラストにまとめています。(実際のシステムとは若干異なりますのでご了承ください) |
動画でも解説しています
このコラムで解説している内容を動画にしました。動画で確認されたい方はあわせてご覧ください。 |
SQLインジェクションの仕組み(参考元)
想定される被害の影響
SQLインジェクションの被害にあった場合どのような影響があるのか、ウェブサイト運営会社と利用者(ユーザー)それぞれの立場で一例をご紹介します。 ウェブサイト運営者にとっての被害
ユーザー(閲覧者)にとっての被害
ソフトウェア等の脆弱性関連情報に関する届出状況2022年第1四半期の「ウェブサイトの修正に要した脆弱性種別の日数の傾向」によると、31日以上かかった割合が多いのは「SQLインジェクション」でした。被害にあわないための対策、有事の際の対処方法を予め準備することをおすすめします。 参考独立行政法人情報処理推進機構セキュリティセンター(IPA):ソフトウェア等の脆弱性関連情報に関する届出状況[2022年第1四半期(1月~3月)] |
対策
SQLインジェクションの対応策として、IPAが発行している「安全なウェブサイトの作り方」には根本的解決策と保険的対策として下記の通り記載されています。
また、これらに加えて下記の対策も有効と言えるでしょう。
ウェブサイトの開発・運用を外部へ委託している場合も丸投げにはせず、どのようなセキュリティ対策を実施しているのかを確認してみましょう。 |
脆弱性診断とは、必要な理由
脆弱性診断とは、システム上に欠点がないか診断します。 定期的な脆弱性診断の実施はウェブサイトの脆弱性を早期発見につながり、SQLインジェクションなどの脆弱性をついたサイバー攻撃のリスク削減にもつながります。 自社は大企業ではないから運営しているウェブサイトは脆弱性があったとしてもサイバー攻撃に合うはずがない、は誤解です。 弊社エンジニアがWordPressで作ったウェブサイトに、どれくらいサイバー攻撃が来たのか、どんな種類の攻撃を受けたのか検証した結果をブログに記しています。
まずは、自社のウェブサイトに脆弱性があるか現状を把握してみてはいかがでしょうか。JBサービス株式会社では、お客様の運用中のWebページに潜む脆弱性を診断、その結果をレポートとしてご提供します。 |
まとめ
SQLインジェクションとはなにか、攻撃手法や対策方法についてご紹介しました。 安全なウェブサイトを保つためには、SQLインジェクションだけでなく、流行りのサイバー攻撃の情報を定期的に仕入れて、自社が対応できているかどうか確認の上、適応していくことが重要です。 SQLインジェクション以外にも脆弱性をついたサイバー攻撃はさまざま存在します。それぞれのサイバー攻撃の特長や、対策が必要に関して、下記ホワイトペーパーにまとめています。 また対策の最後に記したWAFの選び方についても記載していますので、ウェブセキュリティの強化を検討中の方はぜひダウンロードしてください。 対策例の最後に記載したWAFに関して、JBサービス株式会社ではクラウドWAFサービスを提供しています。 SQLインジェクションを含む一般的なWebアプリケーションへの攻撃を防御に加え、常時SSL/TLS化やWeb脆弱性スキャンなどの機能も含めて、お手軽な月額料金でご提供します。 サービス内容に関しては、下記の関連サービスからご確認ください。 |