脆弱性診断のイメージ

脆弱性診断とは?

サーバ環境を脆弱性診断

脆弱性診断とは、ネットワーク・OS・ミドルウェアやWebアプリケーションなどに脆弱性がないか診断することです。脆弱性診断を実施することでネットワーク/サーバ、Webアプリケーションのセキュリティの現状を確認することで攻撃者からの悪意ある攻撃や情報漏えい事故などのリスクを未然に防ぐことができます。
個人情報やWebサービスをサイバー攻撃から守る第一歩としてセキュリティ対策をするためには、まずセキュリティの問題点(脆弱性)を見つけることが必要です。 脆弱性診断は、ウイルス対策の実施やOSやアプリケーションのバージョンアップなど基本的な対策の次に必要とされる対策であるとともに、比較的安価かつ短期間での実施、結果確認ができます。個人情報漏洩やサイバー攻撃などによる多大な被害を未然に防ぐ、非常に費用対効果の高いセキュリティ対策です。

脆弱性とは?

攻撃者は脆弱性をつき企業の機密情報や個人情報などを搾取したりWebサイトを改ざんをします

脆弱性と言うと、少し難しい表現になりますが、簡単に言うとセキュリティの問題点、例えば弱点とか穴と考えていただければと思います。
例えばWebサイトは、今や情報提供や製品・サービスの販売などに欠かせないツールになっています。世界中どこからでもアクセスでき、閲覧する人たちに伝えたい情報を表示し伝達することができます。サイトを通じて購入するときなど個人情報を入力することもあります。それゆえにサイトに掲載されている情報はしっかり管理される必要があります。誰でも見ることや情報を入力することはできるが、サイトの情報を書き換えたり、情報を追加できるのはそのサイトの管理者だけである必要があります。
ところが、もしもそのサイトの情報を誰かが勝手に書き換えたり、サイトに入力された個人情報を抜き取ることができたら大変な事になります。これがサイトの改ざんや個人情報の流出と言われている問題です。なぜそのようなことが起こるのか?それは、そのサイトに外部から侵入できる穴や情報を書き換えるようなことができる弱点があるからです。このような穴や弱点は絶対にあってはいけません。そのためには、まず穴や弱点、つまり脆弱性があるのか?ということをしっかりと調べておく必要があります。

脆弱性診断の必要性と目的

サーバ環境のセキュリティ対策

脆弱性診断はサイトやWebアプリケーションに正しい情報が掲載され、正しい動作をし、それを利用することが安心、安全であることを確認するセキュリティ対策です。インターネットは私たちの日常生活で欠かせないものになり、アクセスデバイスもPCからスマートフォンへと広がり、様々なコンテンツやアプリケーションから情報を得たり、サービスの提供を受けたり、物品の購入が出来たりするようになっています。対面ではない仮想空間において信頼性は大変重要な要素で、信頼できるという大前提のもとで個人情報などのやりとりができます。脆弱性診断は、もちろん第一義としてセキュリティの問題点を発見することで、サイトが改ざんされるのを防止したり、個人情報が流出するのを防ぐために必要なことです。もう少し広い視点で考えるとインターネットを安心、安全に利用できるための信頼の礎を築くことを目的としています。様々なセキュリティ対策のなかでももっとも基本的な対策であり、サイトやWebアプリケーションを管理している場合は、必ず実施していただきたいと思います。

脆弱性を放置すると、どのようなリスクがあるのか?

悪意のある第三者から脆弱性を利用され、外部から不正アクセスされ機密情報の漏えいやパソコンがウィルスに感染するなどの深刻な事態を招くことになります。具体的に3つの代表的な例を上げてご説明します。

  • 攻撃者からのチャンスが拡大する

    玄関のドアが壊れて泥棒が侵入している

    脆弱性を知らずに放置するとどのようなリスクがあるのでしょう。例えば家で考えてみましょう。玄関のドアが壊れていて、それを知っている人なら誰でも開けて入れる状態になっているのが、脆弱性を放置しているということになります。泥棒など犯罪者が、それを知ったら、いつでも自由に侵入できることになってしまいます。家に置いてあった金品が盗まれるのですが、玄関のドアが壊れていることを知らずにいると、なぜこんなことが起こるのかわからず、犯罪者はドアを確認して、まだ侵入できると知ったら、同じようなことを何度も繰り返すことができます。脆弱性があるということは侵入をしようとする人にチャンスを与える事になります。家の玄関はもとより、どの扉もしっかり鍵をかけて、容易に侵入できないようにしておくのが当たり前のように、サイトも常に脆弱性がないことを確認しておく必要があります。

  • ウイルス感染の危険性がある

    パソコンがウィルスに感染している

    脆弱性を、家のドアが壊れていて侵入できる状態という例で説明しました。家の場合は金品の窃盗が目的の場合が多いでしょう。それではサイトやWebアプリケーションの脆弱性を狙う犯罪者はどのようなことをするのでしょうか?目的や狙いはいろいろあります。改ざんすることで自己顕示するような愉快犯から、政治的な主張をしたり、後述するような金銭目的の犯罪も増えています。イメージを傷つけるような情報やデータの改ざんという場合もありますが、多くの場合は、いわゆるマルウェアと呼ばれる、不正な動作や本来の意図とは別の有害な動作をさせるような悪意のあるソフトウェアを忍び込ませます。ワーム、トロイの木馬。スパイウェア、キーロガーなどいろいろなマルウェアがありますが、もっとも一般的なものはウイルスといわれるものです。サイトやアプリケーションにアクセスした場合に感染し、被害が拡大していきます。つまり、脆弱性があるサイトやWebアプリケーションとそれを管理、運営している会社だけでなく、そこにアクセスしたり、利用したりするお客様にも被害が広がる事になります。このような問題への対策やツールはいろいろとありますが、まず脆弱性がないか確認して、解消しておくことが第一歩になります。人間で言えば健康診断です。病気になったら薬を飲んで治すのではなく、未病の段階で早めに対策をして健康を管理することが大切です。

  • 金銭目的の犯罪発生の可能性がある

    パソコンがマルウェアに感染している

    脆弱性を利用したサイトやWebアプリケーションへの侵入は、当初は改ざん目的などが多かったのですが、近年は金銭を目的にした犯罪が多くなっています。不正アクセスによって搾取された個人情報が売買されたり、クレジットカード情報が盗まれて不正利用されたりしています。また管理者権限を乗っ取ったり、不正にダウンロードした個人情報をもとにして、身代金を要求する、ランサムウェアと呼ばれるマルウェアが増えてきています。当初は個人が対象だったランサムウェアも、近年は企業が対象になっており、WannaCryと呼ばれたマルウェアは多くの企業や公的機関が攻撃の対象になり、社会的な脅威として広く知られるようになりました。サイバー犯罪は、ビットコインなど仮想通貨の広まりとも関係し金銭がからんだビジネスの様相を呈しており、このような被害にあわないためにも、脆弱性を調べ、発見し、修正するなど対策を講じておくことが急務になっています。

脆弱性診断についてのよくある質問

初めて脆弱性診断を実施する際はイメージがつきにくく様々な疑問点が存在します。実施頻度や種類、診断箇所などをピックアップし一般的な視点や当社が提案するユースケースと合わせて解説をしてみましたのでご参考下さい。

脆弱性診断の実施頻度はどのくらいが良いのか?

年間カレンダー

例えば自社のWebアプリケーションの設定や脆弱性が無いか確認をする場合は1年に1回程度と機能追加などの変更が実装された場合に脆弱性診断を実施すると良いでしょう(※参考情報:JPCERT/CC「Webサイトへのサイバー攻撃に備えて」

サイバー攻撃、標的型攻撃は、新たな、高度かつ革新的手法が使われ、攻撃対象も日々変化しています。サイバー犯罪者たちが、シンプルなツールやクラウドサービスなどを使い、重大な脆弱性を悪用してWebサイトへ攻撃することによってもたらされる被害が急増しています。Webサイトのセキュリティを守るためには、常に外部からの脅威に備えておく必要があります。定期的に脆弱性診断を実施することで情報漏えい事故などのリスクを未然に回避することができます。
またECサイトなど大量の個人情報を扱っている企業にとって、不正アクセスなどによる情報漏えいは、ビジネスに致命的な影響を及ぼします。自社サイトに直接的な被害はなくても、脆弱性が悪用されてWebサイトを攻撃の踏み台にされる場合もあります。常に外部からの脅威に備え、定期的な脆弱性診断を実施することで、自社だけでなくサプライチェーン全体のセキュリティを守ることができます。

脆弱性診断には、どのような種類があるのか?

脆弱性診断には2種類ある

脆弱性診断には「ツール診断」と「手動診断」があります。ツール診断はコーポレートサイトを費用を抑えて診断する場合やWebアプリケーションを開発時に手早く検査したい場合におすすめです。また、手動診断はECサイトのセキュリティ検査や個人情報を大量に取り扱っているWebアプリケーションを診断する際に適しております。ツール診断と手動診断の見分け方の例は以下のページをご参考ください。

脆弱性診断の診断箇所はどこなのか?

脆弱性診断の診断箇所はサーバとクライアントで大きく2つに分けられます。具体的な該当する箇所は次の説明を御覧ください。また、当社はWebサイト/Webアプリケーションのタイプやサーバやネットワーク機器で構成されているシステム構成によって異なるという考え方でご提案をさせていただいており、「脆弱性診断のユースケース一覧」としてまとめておりますので、合わせてご参考下さい。

サーバサイド

サーバサイドとはサーバに保存しているWebアプリケーション全体を示すことや、Webアプリケーションの機能を追加する際に用いるWeb APIを示したり、サーバOSやネットワーク、ミドルウェアなどプラットフォームを示す3種類に分類されます。それぞれ脆弱性診断の方法は大きく分かれますので、利用するツールやエンジニアの手動診断の方法も変わります。また一般的に脆弱性診断と言えばサーバサイドの診断と捉えて置くと間違い有りません。次で説明をするクライアントサイドはWebアプリケーションの中でもjavascriptなど部分的に特定した箇所だったり、近年利用されてきたモダンWebであるSPAやPWAといった特殊なWebアプリケーションやスマートフォンにインストールをするモバイルアプリを対象としたものです。

クライアントサイド

クライアントサイドの脆弱性はパソコンやスマートフォンのブラウザで動作をする言語javascriptに関連しています。javascriptはWebページの動作(振る舞い)を制御するためにscript言語というもので命令文を書きます。主にhtml5とjavascriptで作られたWebページで、javascriptの使い方を誤ったり、過去の古い方式の書き方を多用しているとWebサイトの脆弱性が見つかってしまうため気をつけなければいけません。主に代表的な例として以下2つ挙げます。

Type0:DOM based XSS(htmlを直接操作する古いjavascriptメソッドを多用し続けるのは危険)
※ クロスサイトスクリプティング(XSS)

html内のDOM(Document Object Model)とは、htmlマークアップがなされた資源をリソース要素の木構造で表現し操作可能にする仕組みのことです。DOMはHTML文書やXML文書をオブジェクトの木構造モデルで表現することで、javascriptのようなプログラムで制御することができhtmlの内容を書き換えるような事もできます。
脆弱性の例は以下の3つに分類されると言われています。

  1. リンク情報を動的に出力する処理に問題がある
  2. アクセス解析用のタグの設置方法に問題がある
  3. javascriptライブラリに問題がある

例えば、javascript内にURLのアドレスが書かれている場合は、javascript内のURLを書き換えてしまうことでユーザが意図しないWebサイトに誘導し騙すこともできます。このような攻撃方法を「クロスサイトスクリプティング(XSS)」と呼び、偽造したサイトに誘導することでユーザが入力した個人情報を盗み取ることを目的とした攻撃を実行します。

【出典】独立行政法人情報処理推進機構 技術本部セキュリティセンター(IPA):IPAテクニカルウォッチ「DOM Based XSS」に関するレポート〜 javascriptでHTMLを操作するアプリは要注意 〜

javascriptでリダイレクトやフォワードを多用し続けるのも危険
※ 未検証のリダイレクトとフォワード

リダイレクトやフォワードといったURLの向きを変えたり転送させたりしユーザを別のURLに強制移動させることをjavascriptで多用することは推奨されていません。リダイレクトやフォワードは一般的には不特定多数のユーザが見ることの出来ない「.htaccess」ファイルに記述するか管理者のみアクセスができるディレクトリに保存されているプログラムで制御するなどの方法で行われます。これらをあえてjavascriptで記述をする場合には以下のように書かれます。

・リダイレクト(向きを変える)
response.sendRedirect("移動先のページ");
・フォワード(転送)
application.getRequestDispatcher("転送先のページ").forward(request,response);

javascriptファイルは不特定多数のユーザがアクセスできるディレクトリに保存されているため、悪意のある攻撃者から標的型攻撃を受けてしまいjavascript内のページのURLを書き換えられてしまうとユーザは気が付かず意図しないサイトへ誘導されてしまいます。この事も上記の例と同様に「クロスサイトスクリプティング(XSS)」と呼ばれます。Webアプリケーションの構造上、javascriptでページ強制移動を行わなければいけない場合は主に以下の内容に気をつけて記述をすることで対策できます。

  • オープンリダイレクターを作り込まない(あるURLを開くと自動的に他のページにジャンプするリダイレクト機能が、攻撃者によって任意の外部ページへのリダイレクターとして利用可能になっている問題)
  • 任意の場所へ遷移(移動)可能なフォワーダーを作り込まない
  • リダイレクトやフォワードの使用をできる限り避ける
  • ユーザパラメータで移動先を決定しない
  • 移動先のパラメータが必要な場合、提供された値の検証を行う
  • 移動先を限定する(移動先のドメインのリスト化)

【出典】独立行政法人情報処理推進機構 技術本部セキュリティセンター(IPA):IPAテクニカルウォッチ「DOM Based XSS」に関するレポート〜 javascriptでHTMLを操作するアプリは要注意 〜

脆弱性診断の実施費用

アイティーエムは、お客様のニーズに合わせて選べる複数の脆弱性診断をご用意しています。また1回の診断から回数無制限まで様々なプランをご用意しています。ぜひお気軽にご相談ください。各サービスの詳細は表の下のボタンより価格表ページにジャンプします。

価格例

ツール 手動
Webサイト/Webアプリケーション脆弱性診断 WebSiteScan
【年間2回チケットプラン】
198,000 円(診断2回)〜

【年間回数無制限プラン】
300,000 円/年
(診断回数無制限)
WebSiteScan Pro
【手動診断プラン】
50,000 円(1遷移)〜
スマートフォン用サイト脆弱性診断 WebSiteScan
【年間2回チケットプラン】
198,000 円(診断2回)〜

【年間回数無制限プラン】
300,000 円/年
(診断回数無制限)
WebSiteScan Pro
【手動診断プラン】
50,000 円(1遷移)〜
OS・ネットワーク・ミドルウェア脆弱性診断 SiteScan 2.0
【年間1回チケットプラン】
70,000 円(1IP)〜

【年間回数無制限プラン】
216,000 円/年(3IP)
WebSiteScan Pro
【手動診断プラン】
50,000 円(1遷移)〜
モバイルアプリ脆弱性診断 AppChecker
【ツール診断】
300,000円(1App/ID/回)
AppChecker Pro
【手動診断】
1,000,000円〜(1式)
Web API脆弱性診断 AppChecker
【ツール診断】
300,000円(1App/ID/回)
AppChecker Pro
【手動診断】
1,000,000円〜(1式)

対象サービス

セキュリティ診断・脆弱性診断サービス

SiteScanシリーズ

お客さまのネットワーク/サーバー、Webアプリケーションの脆弱性を洗い出し、攻撃者からの悪意のある攻撃や情報漏えい事故などのリスクを未然に回避するためのセキュリティ診断サービスです。他社が設計・構築したシステムでも診断可能ですので、システムの懸念点を抱えているお客さまに広くご提供可能です。お客さまが抱えている課題に合わせて、 SiteScan2.0WebSiteScanWebSiteScanProの3つのシリーズよりお選びいただけます。

モバイルアプリ向けセキュリティサービス

Appchecker/AppChecker Pro/AppProtect

モバイルアプリは、小売、銀行、旅行、ファストフードなど様々な業種で利用が広がっています。特に昨今はモバイル端末を使ったキャッシュレス決済が注目を集めています。モバイルデバイスの利用用途が拡大し、個人情報や現金同様の支払い機能を有することによって、サイバー犯罪の対象としてハッキングの脅威は高まり、モバイルアプリに絡んだ不正利用や不正アプリによる被害が増加し続けています。
アイティーエムは、モバイルデバイスの新たなる領域への拡大と、それに伴うモバイルアプリへの求められる強固なセキュリティ対策としてモバイルアプリ向けセキュリティサービスを提供します。

利用例(お客様の課題)

お問い合わせ

Contact

サービス、記事、サイトに関するお問い合わせはお気軽にどうぞ

メールからのお問い合わせ

メール

メールでのご質問やお問い合わせなどを承ります。

お電話からのお問い合わせ

電話アイコン
土日・祝祭日を除く。AM9:30 − PM6:30