業者選びで失敗しないポイントも
今やインターネット環境があれば、PCが無くてもスマホひとつで何でも買える時代となりました。また、感染症対策として、リモートワークで出社しなくても良い働き方も普及しています。しかし、その環境を利用するような、悪質なサイバー攻撃が後を絶ちません。
本記事では、まずはセキュリティ対策の一歩として事業規模・種類問わず需要が高まっている「脆弱性診断」について、なぜそんなに必要とされているのか、具体的にどのような種類があるのか、またどの頻度で診断を実施するのが適正なのか、委託する際の業者選びのポイントなどもご紹介しますので、ぜひ参考にしていただけたら幸いです。
脆弱性診断とは、Webアプリケーション・サーバ・ネットワークなどに「脆弱性」と呼ばれるセキュリティにおける弱点がないかを確認、調査することです。
そのため「セキュリティ診断」「セキュリティテスト」や、「システムの健康診断」とも言われることがあります。
脆弱性(ぜいじゃくせい)とは、セキュリティにおける弱点、問題点、欠陥のことを指します。例えば、内部からしか接続できない環境にも関わらず、外部からその環境への接続に成功してしまう、ログイン権限を付与していない第三者がログインに成功してしまう、これらは脆弱性をついた不正アクセスの例です。
脆弱性の種類は詳しく後述しますが、ネットワーク、Webアプリケーション、サーバ、OS、ミドルウェアだけではなく、スマートフォンやタブレット、スマート家電などのネットワークに繋がる(IoT)機器など、身近な端末にも脆弱性は潜んでいます。
なぜこのような脆弱性が存在するのか、なくならないのかという最大の要因は、人間が設計・開発しているためです。開発者が最新のセキュリティ対策に対して意識が不十分であった、または脆弱性に配慮して開発したが、公開後に新しく脆弱性が発見されることもあります。日々数万種類のマルウェアが発見されているように、攻撃手法の進化に合わせて脆弱性も生まれ続けているのが現状です。
その為、ソフトウェアに脆弱性が発見された場合、一般的には当該ソフトウェアの開発会社等が脆弱性の修正プログラム(パッチ)を作成しセキュリティ対応機関等と連携するか、または脆弱性対策情報として脆弱性の内容とパッチや対策方法を公開し、当該ソフトウェアの利用者へ対策を促します。しかし、その公開された脆弱性情報を攻撃者が入手し、攻撃コード等を作成し、パッチ適用等の対策を実施していないソフトウェアに対して脆弱性を悪用した攻撃を行うことがあります。これが「ゼロデイ攻撃」や「Nデイ攻撃」と呼ばれています。
脆弱性診断の目的は、サイバー攻撃等から組織を守るためのリスクの把握です。
独立行政法人情報処理推進機構(以下、IPA)によると、「攻撃の糸口」は似通っており、脆弱性を突く、ウイルスを使う、ソーシャルエンジニアリング(人間の心理的な隙や、行動のミスにつけ込んで個人が持つ秘密情報を入手する方法)を使う等、古くから知られている手口が使われていると公表しています。(※1)
システム停止や情報漏えい、不正アクセス、データ改ざん(悪質なデータの書き換え)に繋がるような脆弱性が潜んでいないか徹底的に調査し払拭し、安全な環境、安全なWebサイトの維持し続けることは、あらゆる組織で必要ではないでしょうか。そのため、脆弱性診断はどの業種でも、企業規模でも必要とされています。脆弱性診断は業種や企業規模に限らず、必要とされています。
帝国データバンクのアンケート調査(※2)によると、サイバー攻撃を「1カ月以内に受けた」企業は、「大企業」で33.7%、「中小企業」で27.7%、うち「小規模企業」では26.4%となりました。
資金力のある大企業がランサムウェア(身代金要求型ウイルス)の対象として狙われることは予測され、その為に中小企業を経由して大企業の情報を窃取する事案も多く、企業規模が小さくても狙われる危険性にあまり大差がないことがわかります。
脆弱性診断では、診断員が対象の環境に疑似攻撃をし脆弱性の有無の確認するだけでなく、その危険性のレベルを数段階で評価付けします。その結果によって講じるべき対策を見つけることができます。
例えば、「容易に攻撃できてしまうが危険度は低い脆弱性」よりも、「攻撃することは難しいが危険度が高い脆弱性」を優先してシステム改修をするという判断が可能です。
診断を実施するだけでなく、検出されたリスクを見直し改善することが重要です。
(※1)IPA「情報セキュリティ 10 大脅威 2022」
https://www.ipa.go.jp/security/vuln/10threats2022.html
(※2)帝国データバンク「サイバー攻撃に関する実態アンケート」
https://www.tdb.co.jp/report/watching/press/p220306.html
以下は、国内企業で実際にあった被害の例です。もちろんこれら以外にも、多くの被害が報告されています。
2021年10月、某病院が不正アクセスを受け、ランサムウェアに感染し、約8万5,000人分の電子カルテや会計システムにアクセスできず、約2カ月にもわたり通常診療の停止を余儀なくされた。調査によると、病院のVPN装置の脆弱性を悪用して侵入したとみられ、セキュリティ対策の不備が指摘された。
2021年7月、ドラッグストアを運営する某企業のECサイトが不正アクセスを受け、2万5,484件のクレジットカード情報が流出したことを公表した。流出した情報の一部は不正利用されたおそれがあることを確認している。調査によると、何者かが同社サイトシステムに内在していた脆弱性を利用して悪性ファイルを設置し、ユーザーが入力したカード情報を抜き取っていた可能性が高いと判明した。
2022年2月、都内の某大学のサーバーに不正アクセスを受け、同大Webサイトの情報が改ざんされたと発表した。同大サイトの一部にアクセスすると、外部のアダルトサイトへ誘導する表示画面が出る状態になっていたのを同大教員が気づき、急遽サーバを停止し、同サーバで運用していた49ものサイトを一時閉鎖することとなった。調査によると、パスワードを特定された可能性が高く、そこから各サイトに被害が拡大したものと見られている。
特に情報漏えいの事故(インシデント)が発生してしまった場合の対応コストで見ると、調査から復旧、再発防止等にかかる費用の他にも、賠償損害(被害者個人ほか、委託契約における委託元、クレジットカード会社、取引先等の法人)に関する費用や弁護士費用と、億単位で費用がかかることも少なくありません。さらには風評被害や企業イメージの低下による無形損害も想定されます。
私たち人間の場合でも、「今年の健康診断で何も異常がなかったから、一生涯健康でいられる」ということはないように、セキュリティを継続するために脆弱性診断も定期的に実施する必要があります。
どんなに万全の対策を取っている場合でも、悪意を持った攻撃者は、様々な技術手法で日々脆弱性を探って攻撃を試みる動きがあるため、被害に遭う可能性は否定できません。
しかし定期的に診断することで、万が一脆弱性が発生したとしても早期発見でき、被害の回避または低減に繋がります。
自社でガイドライン等があればそれに従って実施を検討する、または診断対象にもよりますが少なくとも1年に1回や、バージョンアップのタイミングなどで実施するのが推奨とされています。
大きく以下の二つがあります。
Webアプリケーション脆弱性診断 |
---|
・会員サイトやECサイトなど、顧客の重要な情報を取り扱うWebサイトなどが対象 ・IPAのデータによると、脆弱性の届出件数の約7割がWebサイトに関すると発表されている(※3) |
プラットフォーム脆弱性診断 (ネットワーク脆弱性診断) |
・ネットワーク、OS、ミドルウェアなど ・対象機器には、サーバー、ルーター、ファイアウォール、PC、IoT機器がある |
(※3)IPA「ソフトウェア等の脆弱性関連情報に関する届出状況[2022年第4四半期(10月~12月)]」
https://www.ipa.go.jp/security/vuln/report/vuln2022q4.html
自動で診断をしてくれるツールが存在します。そのツールを活用して診断を行うことを一般的に「ツール診断」と呼びます。
ツール診断の最大のメリットは、機械が自動で診断してくれるため、短時間かつ低コストで対応できることです。
その反面、機械的に診断するため、ツールが認識するパターンに当てはまらないような巧妙な攻撃は検出できない等精度が低くなりやすく、誤検知(脆弱性ではないが脆弱性ありと判定等)されやすいというデメリットがあります。
「マニュアル診断」と呼ばれることもありますが、「手動」という言葉の通り、専門知識を持つセキュリティエンジニアが自身の目で確認しながら診断を行う方法です。 ツールと違って診断員が対応するため、柔軟に対応でき精度が高いことが最大のメリットです。
一方でデメリットは、手動で実施するという性質上診断に多くの時間を要し、その分費用が高額になってしまうのが一般的です。また、対応する診断員によって診断結果が異なります。経験や知識が豊富なベテラン診断員が対応するのと、まだ経験値が低いスキルが足りない診断員が対応するのとでは、結果に差が出てしまうことが予測されます。
以上のメリット・デメリットをまとめると以下のようになります。
ツール | 手動 | |
診断結果の精度 | △ 誤検知が発生しやすい |
◎ 人の目で確認するため、精度は高い(しかし診断員のスキルに依存する) |
網羅性 | △ ツールの仕様による |
◎ 柔軟な対応が可能 |
スケジュール | ◎ 手動より圧倒的にスピードは早い |
○ ツールの処理速度には劣る |
費用 | ◎ 人件費があまりかからない |
△ 診断員の人件費が含まれる |
このようにツール診断と手動ではそれぞれ長所・短所があるため、お互いの短所を補うように手法を組み合わせるハイブリッド診断が一般的には望ましいです。
対応スピードやコスト面を考慮して基本的にはツールで診断し、精度や網羅性を上げるために補完する形で診断員が手動で診断する方法です。
リモート診断とは、外部環境から遠隔で実施する方法です。診断対象が、通常外部から接続される環境であれば、利用者と同じ条件で接続した診断が可能です。
リモート診断では外部から接続するのに対し、オンサイト診断は内部から診断します。リモート診断に比べて対象の内側からも様々な情報を取得できるため、より細部まで診断が可能となります。しかし診断員が現地へ赴く必要があるため、その分サービス料が高くなる可能性があります。
ペネトレーションテストは「侵入テスト」「模擬ハッキング」とも呼ばれ、攻撃者の視点でゴールを設定した上で、それが実際に成功するかどうかを検証することが目的です。
脆弱性診断は、攻撃のきっかけやヒントとなる弱点をより多く見つけるための網羅的な検査に比べて、ペネトレーションテストではシステムの内部に深く侵入したり、管理者権限の奪取、クラウドサービスから重要なファイルを探し出すなど、攻撃者と同様あらゆる技術ツールを用いて検証します。ここで活躍するのが、悪意のあるハッカーに立ち向かう正義の「ホワイトハッカー」です。
留意点としては、手動での診断のように、実行する人の経験の差によって結果が異なるため、ホワイトハッカー個人のスキルに依存してしまう面があります。
このようなペネトレーションテストも含めて実施するのか、含める必要がないのか、またはあえて脆弱性診断を依頼した業者以外の専門業者に委託するのか等、予算に合わせた検討をお勧めします。
脆弱性診断サービスを提供している事業者が多くいる中でも、どのような視点で選んだ方が良いのか、いくつかのポイントをご紹介します。
経済産業省「情報セキュリティサービス基準」とは、情報セキュリティサービスに関する一定の技術要件及び品質管理要件を示し、品質の維持・向上に努めている情報セキュリティサービスを明らかにするための基準を設けることで、情報セキュリティサービス業の普及を促進し、国民が情報セキュリティサービスを安心して活用することができる環境を醸成することを目的とした基準です。
昨今のサイバー攻撃の増加傾向などもあり、現在多くの情報セキュリティサービスが提供されていますが、セキュリティに関して専門知識をもたないサービス利用者が、サービスの品質を判断しサービス事業者を選定することは困難な状況もあります。
そのため、提供しているサービスが一定の品質の維持向上が図られていることを第三者が客観的に判断し、その結果を台帳等でとりまとめて公開し、利用者が調達時に参照できるような仕組みとして経済産業省がWebサイト上で提示しています。
情報セキュリティサービス基準適合サービスリストとは、経済産業省が策定した「情報セキュリティサービス基準」への適合性を各審査登録機関により審査され、同基準に適合すると認められ、各機関の登録台帳に登録され、併せて「誓約書」をIPAに提出した事業者の各情報セキュリティサービスを掲載するものです。
経済産業省「情報セキュリティサービス基準」
https://www.meti.go.jp/policy/netsecurity/shinsatouroku/touroku.html
実は、脆弱性診断をする診断員として必ず取得するべき資格はありません。その為、様々な機関が診断士として認定するトレーニングや資格を用意しています。
今回取り上げた認定脆弱性診断士(セキュリスト)とは、情報システムのセキュリティテストの知識や技術の習得と、そのスキルを客観的に証明する仕組みです。企業の情報セキュリティ対策に必要な脆弱性診断士の育成を目的に、グローバルセキュリティエキスパート株式会社(以下、GSX社)が開発した教育カリキュラムです。
脆弱性診断には、システムが十分に安全であるかを確認する「検査的な側面」と、安心して利用できるシステムであるかを保証する「監査的な側面」があります。しかし、脆弱性を洗い出すために必要な技術やスキルは明示されておらず、さらに確認した技術者がシステムの安全を保障できるだけのスキルを有しているかを第三者が判断するのは困難でした。そこでGSX社がシステムの脆弱性を判断する各種項目と判断に必要な知識・スキルを明確化、認定資格制度とすることで、システムの安全性を証明するひとつの指標を策定しています。
認定脆弱性診断士(セキュリスト)の詳細
https://www.gsx.co.jp/services/securitylearning/securist/webappnwsecuritytesting.html
こちら以外にも診断員に関する資格がありますので、ぜひ参考にしてみてください。
診断の手法にはツールと手動があり、主に以下の2パターンで診断実施している事業者が多く見受けられます。
前述の通り、本記事では手動も組み合わせたハイブリッド診断をおすすめします。ツールのみによる診断は、「早い」「安い」が魅力のため、一般的な疑似攻撃の定義を診断する程度で良いのかなど、要望に合わせて選択してください。
デジタル庁が、デジタル社会推進標準ガイドライン群のひとつとして、「政府情報システムにおける脆弱性診断導入ガイドライン」を公開していますので、診断項目の参考としてご紹介いたします。
脆弱性種別 | 備考 | |
---|---|---|
1 | SQLインジェクション | |
2 | OSコマンドインジェクション | |
3 | クロスサイトスクリプティング(XSS) | HTMLインジェクション、CSSインジェクション、DOM based XSS 等を含む |
4 | メールヘッダインジェクション | |
5 | HTTPヘッダインジェクション(CRLFインジェクション) | |
6 | evalインジェクション | |
7 | その他のインジェクション | サーバサイドテンプレートインジェクション(SSTI)、相対パスによる上書き(Relative Path Overwrite)等をむ |
8 | ディレクトリトラバーサル(パストラバーサル) | ローカルファイルインクルージョン(LFI)を含む |
9 | セッション管理の不備 | 推測可能なセッション、セッションの盗用、セッションの固定化(セッションフィクセーション)、Cookieの管理不備等を含む |
10 | アクセス制御(認証制御)と認可処理の不備 | 認証回避、ログアウト機能の不備、脆弱なパスワードポリシー、パスワードリセットの不備、復元可能なパスワード保存等を含む |
11 | クロスサイトリクエストフォージェリ(CSRF) | |
12 | クリックジャッキング | |
13 | レースコンディション | |
14 | バッファオーバーフロー | 整数オーバーフローを含む |
15 | ファイルアップロードに関する不備 | 圧縮ファイルの取り扱い(ZIP Bombs 等)を含む |
16 | セキュリティの設定ミス | |
17 | オープンリダイレクト | |
18 | 安全でないデシリアライゼーション | |
19 | サーバサイドリクエストフォージェリ(SSRF) | |
20 | クロスサイトウェブソケットハイジャッキング(CSWSH) | |
21 | XML外部エンティティ参照(XXE) | |
22 | その他の情報漏えいにつながる脆弱性 | エラーメッセージやキャッシュからの情報漏えい等を含む |
脆弱性種別 | 備考 | |
---|---|---|
1 | 脆弱なソフトウェアの利用 | 既知脆弱性の有無を確認 |
2 | 不要なポート、サービス、アカウントの存在 | |
3 | 公開ディレクトリ、ストレージへの非公開情報の保存 | 公開不要なファイルの存在等を確認 |
4 | DNSの設定不備 | オープンリゾルバ、ゾーン転送の設定不備等を確認 |
5 | 暗号化されていない、または脆弱な暗号による通信 | |
6 | サーバ証明書の不備 | |
7 | サーバソフトウェアの設定不備 | 初期パスワードの利用、ディレクトリリスティング等を確認 |
デジタル庁「DS-221 政府情報システムにおける脆弱性診断導入ガイドライン」
https://www.digital.go.jp/resources/standard_guidelines/#ds221
場合によっては、診断の作業期間中アプリケーションやネットワーク、サーバ等に負荷がかかり、一時的にサービスが不安定になる可能性があります。そのため、日中は避けて夜間や土日など利用者が少ない時間帯で依頼した方が良いのか、その場合は指定した日程で対応可能なのか確認が必要です。(平日日中での作業に比べ、人件費で見積もり額が上がる可能性は高いです)
また、開発段階の環境の場合は、あまり診断時間を気にしない場合が多いです。
診断後は、一般的にレポートとして報告書が作成されますので、以下が選定のポイントとなります。
価格が安いだけで業者を選ぶのはとても危険です。要望する診断内容に応じた適正な価格になっているかはもちろん、再診断や報告会の有無等のアフターフォローを含めて、総合的に比較した上で判断する必要があります。
ツールのみで診断項目も少ない場合、比較的価格は安く抑えられますし、一方で手動での診断となれば診断員のパフォーマンスによるため価格はピンキリだということを念頭に検討することをお勧めします。
脆弱性診断を業者に委託する場合の流れについてご説明します。
対象機器、実施期間、システムの環境等の情報を伝え、見積依頼するところからがスタートです。
契約前に開示できる範囲で、以下の情報を揃えておくとスムーズに見積もりを進められます。
Webサイトのドメイン数 |
---|
FQDN(ドメイン名 + ホスト名) |
Webサイトのページ数 |
・画面遷移数 ・リクエスト数 ・パラメータ数 ※これらはシステム開発時に作成される画面遷移図やワイヤーフレームなど、画面構成が分かる資料に記載されていることが多いですが、診断前にはクローリング作業をし正確に計量します。 |
Webサイトの特徴等 |
会員制のWebサイト、商用CMS使用等の特徴等 |
ツール診断と手動診断の選択 |
各手法のメリット・デメリットを把握した上で選択 |
診断する時間帯の指定有無 |
本番環境の場合、避ける時間帯があるのかの確認 |
リモート診断、オンサイト診断の選択 |
オンサイト診断の必要があるのか確認 |
グローバルIPアドレス数 |
---|
プライベートアドレス数 (ローカルIPアドレス) |
社内LANなど内部サーバの場合に必要 |
機器のOS、ミドルウェア等の情報 |
ルータ、ファイアウォール、IDS/IPS等 |
リモート診断、オンサイト診断の選択 |
オンサイト診断の必要があるのか確認 |
「ITトレンド(利用率No.1の法人向けIT製品の比較・資料請求サイト)」
https://it-trend.jp/security_assessment_service/ranking
前述した「業者選びのポイント」等をご参考いただきながら、自社に合う業者を決定します。
契約手続きや診断日程の調整などの摺り合わせします。
実施期間は、依頼する対象や内容で大きく異なります。また、ツール診断の場合最短1日~としているサービスもありますし、手動で診断を依頼する場合は数か月かかるのが一般的です。
また実施期間中は対象の環境が不安定になる可能性があるため、万が一に備えて自社でも事前にバックアップを取得しておくことをお薦めします。
診断結果は、報告書(レポート)として納品されます。内容で不明点があれば問い合わせ、または報告会で確認します。
診断結果から脆弱性が発見された場合、優先順位の高いものから早急に対策を施す必要があります。
対策を施した後、必ず再診断してください。
代表的なセキュリティ団体が必要な診断項目を掲げていますので、参考にしてみてください。
リクエスト数とは、実際にWebブラウザから対象のWebアプリケーションに対して発生するHTTPリクエスト数を指します。実際に発生するHTTPリクエストをカウントするため、非同期通信やシングルページアプリケーションなど、画面が変わらない場合もカウントするため、画面遷移数よりも診断対象の漏れを防ぐことができます。
診断実績1500社以上!
資格を持ったセキュリティエンジニアが検証。
さらに高品質なツールを使い、
必要性や網羅性の高いセキュリティ項目を診断します。
LOADING...