16歳少年でも可能な
不正アクセス
SQLインジェクション
対応策とは?

16歳少年でも可能な不正アクセス SQLインジェクション対応策とは?


16歳が不正アクセス、個人情報12万件盗んだ疑い

不正に入手した他人のIDやパスワードで買い物サイトにアクセスしたとして宮城県警は30日、不正アクセス禁止法違反などの疑いで、千葉県成田市の高校1年生の男子生徒2人を仙台地検に書類送検したと発表した。

(2016年9月30日 朝日新聞デジタル)より抜粋


とどまることを知らない不正アクセス
背景には簡単に手に入る知識やツールが

この事件で書類送検された生徒は、 「SQLインジェクション」という手口を使い、ホテル予約サイトなどが設置しているサーバーに不正アクセス、個人情報を盗み出した。

SQLとは、データベースへの問合わせ(Query)命令文を、組立てて(Structured)、実行するためのコンピュータの言語(Language) 。 そして、Webアプリケーションのセキュリティ上の不備を意図的に利用し、アプリケーションが想定しないSQL文を実行させることにより、データベースシステムを不正に操作する攻撃方法がSQLインジェクションだ。

SQLインジェクションのイメージ

SQLインジェクションのイメージ

SQLインジェクションによる不正アクセスは、2008年くらいから急増し始めたが、現在もとどまるところを知らない。その理由としては、ネット上で知識やウイルス作成ツール等が比較的簡単に入手できるからと推察される。つまり、ある程度の知識があれば、少年でもサイバー犯罪を行える環境があるわけだ。

あなたの会社は大丈夫?
SQLインジェクションの可能性をチェック!

では、どのような場合、SQLインジェクションを受けやすいのだろうか。
下記のような項目にあてはまるウェブサイトは、攻撃を受ける可能性があると考えられるので、脆弱性がないか、一度チェックしてみたほうがよいだろう。

(1)DBを使っている。
(2)システムの保守を行っていない。
(3)システムを構築してから8年以上経つ。
(4)友人・知人(専門のウェブ制作会社以外)に制作してもらった。

SQLインジェクション対策は難しくない
時間と予算を確保し、実行することをおすすめする

SQLインジェクションへの根本的な対処方法としては、ウェブアプリケーションを改修し、脆弱性を修正することだ。具体的な対応としては、IPAの「SQLインジェクション対策について」を参考にするとよい。

専任のシステム担当者がいないなど、社内で確認することが難しい場合は、ウェブサイトを制作した会社にチェックと修正を依頼することをおすすめする。
しかしながら、 ウェブアプリケーションを改修し、脆弱性を修正するには、それなりの時間と手間がかかる。それゆえ、多くの企業ではなかなか保守に手が回っていないというのが現状のようだ。

根本的な解決にはならないが、すぐできる対処法として、「WAF」を導入するという選択肢もある。
WAF (Web Application Firewall)は、 Webサイト上のアプリケーションに特化したファイアウォール。Webサイトの前面に配置することで、 SQLインジェクションのような、Webアプリケーションの脆弱性を悪用した攻撃を検出・防御してくれる。
以前は、コスト面や扱いの難しさから、予算と人員をしっかりと確保できる企業でないと導入できないものだったが、近年、クラウド型製品の登場で、専任担当者のいない中小企業でも手に届くようになった。
導入を検討したいという方は、「クラウド型WAF」で検索すると、さまざまな製品が出てくるので自社に合った製品を探してみてはいかがだろうか。