悪意ある第三者からのサイバー攻撃や情報漏えい事故からシステムを守るためにも、システムに脆弱性がないかを調査することは必要不可欠です。
今回は脆弱性診断の必要性についてのご紹介、また脆弱性診断におけるよくある疑問点とその解答について見ていきましょう。
脆弱性診断(セキュリティ診断)とは?
脆弱性診断とは、システム全体のセキュリティリスクを精査し、問題があれば必要な対策を講じることを指します。
OS、サーバー、ネットワーク、アプリケーション等の仕様から脆弱性となりうる箇所を検証して問題点を洗い出していきます。
脆弱性診断はツールを用いたり、専門家が攻撃者の目線での診断するなど、様々な手法を用います。
そもそも脆弱性とは?
脆弱性とは、外部からの攻撃に対するセキュリティ上の欠陥のことを指します。
セキュリティ上の欠陥は、セキュリティホールとも言われています。
脆弱性とセキュリティホールはどちらも同じ意味合いで利用されることが多いですが、セキュリティホールは、プログラムの設計やコーディングのミスが原因でソフトウェアに不具合が起こることを指します。
悪意ある第三者は、システムの脆弱性を悪用して外部からサイバー攻撃を仕掛けてきます。
サイバー攻撃を防ぐことが出来なければ、個人情報の流出や、インターネットバンキングの不正送金など、利用者に甚大な被害を与えかねない問題が発生してしまいます。
脆弱性診断の必要性は?
脆弱性を調査することは、システムの安全性・信頼性を保証するためにも必要不可欠です。
脆弱性診断の必要性とその詳細について、いくつかご紹介します。
セキュリティ脅威が多様化している
近年、セキュリティ事故についてのニュースを見かけることが多くなっていますが、公的機関からの注意喚起等もあり、各企業のセキュリティに対する意識は向上しつつあります。
しかしそれに伴い、攻撃者側はより入念な準備を行い、攻撃の手法を高度化させてきています。様々な方面から攻撃のアプローチをかけてくるため、一般的に販売されているセキュリティソフトを導入するだけでは防ぐことが難しくなってきているのです。
人的な観点まで対策が必要
セキュリティ脅威は、なにもシステム上の問題だけが原因という訳ではありません。
システムの運営者・利用者側のセキュリティ意識も向上しなければなりません。
例えば、社内に届いた宛先不明のメールをうっかり開いてしまってマルウェアに感染してしまうと、それが原因でOSやネットワークに侵入されて攻撃されてしまいます。
また、利用者はシステムへのログイン時のIDやパスワードを第三者に見られてしまうと、簡単に不正ログインを許してしまいます。こうした心理的な隙に付け入りパスワード等の重要な情報を盗み出すことを、ソーシャルエンジニアリングと言います。
日々多様化しつつあるセキュリティ脅威に対しては、人的な観点まで対策する必要があります。
外部脅威と内部脅威の両方への対策が必要
今までは、WEBサービス等の公開されているシステムに対して外部からサーバー攻撃が仕掛けられる、いわゆる外部脅威への対策に企業は力を入れていました。
しかし近年は、マルウェア感染や人為的なミスによる内部情報の流出が非常に増えてきています。
内部に侵入されると、開発中のシステムはもちろん、社員の個人情報、システム利用者の個人情報等が全て流出してしまう危険性があります。
企業の社内ネットワークや、端末のセキュリティ対策等、内部脅威への対策も必要不可欠となっています。
潜在的なセキュリティリスクへの対策も必要
一般的なセキュリティ対策のみを行なっていても、対策が不十分な箇所があります。
例えば、OSのアップデートや、過去に脆弱性で問題となった箇所は修正パッチを適用していれば安全かもしれませんが、ミドルウェアや、システム利用者の端末にインストールしたクライアントソフトについても、随時脆弱性が発見される場合があります。
潜在的に潜んでいるセキュリティリスクへの対策も怠ってはいけません。
脆弱性診断に関するよくある疑問
脆弱性診断を初めて行う場合、実施頻度や診断の種類等、いくつか疑問点が出てくると思います。よくある質問についての解答をまとめてみました。
脆弱性診断の実施頻度は?
日本における情報セキュリティ対策活動の向上に取り組んでいる一般社団法人のJPCERT/CCが、脆弱性の回避及び低減のための点検項目について以下のようにまとめています。
(1) 利用製品 (プラグインなど追加の拡張機能も含む) のバージョンが最新であることの確認
- 目的:製品の脆弱性を狙ったサイバー攻撃を回避・低減するため
- 対象:Web サーバなどの Web システム、Web サイト運用管理用 PC
- 頻度:数週間~1ヶ月に1回程度
(2) Web サーバ上のファイルの確認
- 目的:ファイルが改ざんされていないか、不正に作成されていないかなど、確認するため
- 内容:ファイルのリスト (ファイル名、サイズ、更新日時、ハッシュ値) やバックアップの取得と比較
- 対象:Web サーバ
- 頻度:1週間に1回程度
(3) Web アプリケーションのセキュリティ診断
- 目的:自社の Web アプリケーションに脆弱性や設定の不備が存在しないか確認するため
- 対象:Web アプリケーション
- 頻度:1年に1回程度、および機能追加などの変更が行われた時
(4) ログイン ID とパスワードの確認
- 目的:管理や保守を行う目的の ID やパスワードを、複数のサービスで使いまわしていないか、安易に推測できるものを使用していないかなど、適切な運用がなされているかを確認するため
- 対象:Web サーバ
- 頻度:1年に1回程度
(5) DDoS 対策や、対応体制の確認
- 目的: Web サイトが DDoS 攻撃を受けた場合の対応・手順などを確認し、異常発生時に適切に行動するため
- 対象: Web サーバやネットワーク
- 頻度: 1年に1回程度
出典: JPCERT/CC Web サイトへのサイバー攻撃に備え
1年に1回程度の診断目安のものもあれば、サーバー上のファイルは1週間ごとに診断するべき項目となっています。
脆弱性診断にはどんな種類があるの?
脆弱性診断は、大きく分けて2種類あります。
ツールによる診断
ソフトウェアの開発時に手早く診断したい場合や、診断にかかる費用を抑えたい場合はツールによる診断を行う場合が多いです。
手動による診断
手動による診断は、ECサイトのセキュリティや、大量の個人情報を扱う様な大きなシステム・アプリケーションの脆弱性を診断する際に適しています。
ツールによる診断に比べて深くまで脆弱性を調査出来て、高い精度の診断が可能となっています。
脆弱性診断の費用ってどれくらい?
脆弱性診断の費用は、利用するツールやサービスによって変わってきます。
システムの規模、サイトのページ数等で相場は変わってきますが、20万円前後のサービスから100万円以上のサービスもあります。
脆弱性診断ツールを利用する場合は、無料で利用出来るものもあります。
特に注意が必要な主要な脆弱性は?
ECサイト等、ユーザーの重要な個人情報が保存されているサービスにおける脆弱性は非常に危険です。
クレジットカードの情報を引き抜かれると不正取引を行われて、ユーザー側に甚大な被害を与える可能性があります。
サーバーサイド、クライアントサイド共に脆弱性の診断箇所には注意しましょう。
脆弱性診断ツールは手動診断とどんな違いがあるの?
脆弱性診断ツールは無料で提供されているものも多く、主に自身でツールを利用することになりますが、専門的な知識がない場合は使いこなせない場合が多いです。
手動診断は有料の診断サービスに多く、セキュリティ専門家の知見を活用することが出来て、診断後にはセキュリティ対策についてのアドバイスを受けることも出来ます。
【まとめ】脆弱性診断の必要性は高い
脆弱性診断は、システムの安全性・信頼性を保証するためにも、その必要性は高いと言えます。
さまざまなセキュリティ脅威に対応できるように、システム内で脆弱性となりうる箇所を洗い出して、ツール・手動のどちらの手段が適しているのかを考え診断を行いましょう。