診断結果にみる情報セキュリティの現状
~2019年下半期 診断結果分析~

Share

Security NEWS TOPに戻る
バックナンバー TOPに戻る

SQAT® Security Report 2020年春夏号

BBSecの診断について

当社では、Webアプリケーション、ネットワーク(プラットフォーム)、スマホアプリ、IoT、パブリッククラウド、ソースコード、標的型攻撃に対するリスク可視化等、様々な局面における診断サービスを提供することで、お客様のニーズにお応えしている。

当社の脆弱性診断サービスは、専門技術者による高精度の手動診断と独自開発のツールによる効率的な自動診断とを組み合わせ、検出された脆弱性に対するリスク評価について、右表のとおりレベル付けしている。お客様のシステム特性に応じた脆弱性の検出、リスクレベルの評価、個別具体的な解決策の提供が適切に行えるよう、高い頻度で診断パターンを更新し、診断品質の維持と向上に努めている。

2019年下半期診断結果

当社では、2019年7月から12月までの6カ月間に、14業種延べ537企業・団体、4808システムに対してシステム脆弱性診断を行った。情報セキュリティ対策に重きを置く企業・組織側の姿勢もあり、診断案件数は年々増加している。脆弱性の検出率は以下のとおりである。

脆弱性診断脆弱性検出率2019年下半期

診断の結果、Webアプリケーション診断では、脆弱性が検出されたシステムが全体の81.5%と、前年同期(2018年下半期)の84.9%に比べて微減しているものの、依然として高い割合である。ネットワーク診断においては、脆弱性検出率はシステム全体の47.8%であり、2017年下半期以降、減少傾向にあるが、およそ半数のシステムに何らかの脆弱性が検出されている。

検出された脆弱性のうち、早急な対処が必要な「高」レベル以上のリスクと評価された脆弱性は、Webアプリケーションでは26.9%、ネットワーク診断では30.4%検出されている。前年同期比(2018年下半期「高」レベル検出率:Webアプリケーション27.6%/ネットワーク診断 17.8%)でいうと、Webアプリケーションはほぼ横ばいだったが、ネットワークは12.6ポイント増えておりリスクレベルの高い脆弱性が増加傾向にある。当サイトでは、 「2019年下半期カテゴリ別脆弱性検出状況」とし、当社診断で検出された脆弱性を各性質に応じてカテゴライズし、評価・分析をした結果をまとめた。以降、診断カテゴリごとに検出数が多かったものの中から、特筆すべきことに焦点を当ててリスクや対策を述べる。

Webアプリケーション診断結果

Webカテゴリ結果の31.4%を占める「システム情報・ポリシーに関する問題」のうち、最も検出数が多かったのは、「脆弱なバージョンのOS・アプリケーションの使用」である。脆弱なバージョンのOS、アプリケーションを使用している場合、既知の脆弱性の影響を受ける可能性がある。最新バージョンへのアップデートが望ましいが、システム環境における制約等の理由でバージョンアップができないのであれば、必要なセキュリティパッチがすべて適用されていることを確認すべきである。

次にWebカテゴリ結果の検出割合が多かったのは、19.7%を占める「セッション管理に関する問題」。最も検出されたのは、「不適切なセッションタイムアウト」であった。ログインセッションのタイムアウト値が適切に設定されていないと、長時間操作を行わずアイドル状態のままでもセッションが維持されることから、セッションハイジャック等の攻撃が成功する確率が高まるほか、サービス運用妨害(DoS)攻撃につながる可能性もある。セッションタイムアウトは、Webアプリケーションのデフォルト設定として一般的に採用されている30分が望ましいが、ユーザビリティを考慮してタイムアウト値を長くする場合は、追加のリスク緩和策を講じることが推奨される。

ネットワーク診断結果

NWカテゴリ結果の52.3%が「通信の安全性に関する問題」であった。なかでも、「推奨されない暗号化方式の受け入れ」(検出割合は右表を参照)の検出数がトップであり、第2位の「推奨されないSSL/TLS通信方式の使用」と比べて2倍以上の差がある。

サーバがブロック長64ビットのブロック暗号をサポートしている場合、誕生日攻撃(birthday attack)を介して長い期間暗号化されたセッションを復号・解読される「SWEET32」と呼ばれる攻撃の影響を受ける可能性がある。「NVD(National Vulnerability Database)」などに本脆弱性の影響を受ける製品は公表されており、ベンダからも正式な対策が公開されていて、ベンダ情報を参照のうえ対策することが望ましい。

SSL/TLS通信において、強度の低い暗号化方式(RC4、3DESなど)が許容されていると、既知の脆弱性を悪用した攻撃(平文回復攻撃など)により、攻撃者に暗号化されたデータが解読される危険性がある。また、強度が低いハッシュアルゴリズム(SHA-1など)が許容されていると、衝突攻撃に弱くなり証明書の偽造等が可能となる恐れがある。鍵長が128ビット未満の暗号方式については、総当り(Brute-Force)攻撃への耐性が低く、中間者(Man-in-the-Middle)攻撃などの標的になりうる。強度の低い暗号化方式やハッシュアルゴリズムは使用を停止し、SSL/TLSによる通信の保護には鍵長が128ビット以上の暗号化方式を実装するべきである。SSHプロトコルにおいても、攻撃者に暗号文を解読される恐れがあるため、脆弱な暗号化方式およびハッシュアルゴリズムを許容しないことが望まれる。

カテゴリ別の検出結果詳細についてはこちら

Security NEWS TOPに戻る
バックナンバー TOPに戻る


資料ダウンロードボタン
年二回発行されるセキュリティトレンドの詳細レポート。BBSecで行われた診断の統計データも掲載。
お問い合わせボタン
サービスに関する疑問や質問はこちらからお気軽にお問合せください。

Security Serviceへのリンクバナー画像
BBsecコーポレートサイトへのリンクバナー画像
セキュリティ緊急対応のバナー画像
セキュリティトピックス動画申し込みページリンクへのバナー画像

Webアプリケーションに求められる「二極のスコープ」による診断

Share

Security NEWS TOPに戻る
バックナンバー TOPに戻る

SQAT® 情報セキュリティ瓦版 2020年1月号

Webアプリケーションの脆弱性は時として深刻な被害にもつながる、看過できない脅威です。「攻撃者の視点」でセキュリティホールを特定する脆弱性診断に加え、「開発者の視点」から問題を特定するソースコード診断も重要です。前者はアプリケーションの「外」から脆弱性を検出するのに対し、後者はアプリケーションの「内」から問題部位をピンポイントで検出します。両者を連携させることが、Webアプリケーションのセキュリティを効果的に高めるカギになります。


脆弱性はどこから生まれるか

そもそも、Webアプリケーションでセキュリティの脅威となる脆弱性が生まれるのは、「プログラムの処理において、開発者が意図していない動作が行われないようにする」という点で適切な制御ができていないことに原因があります。

Webアプリケーション開発において広く利用されているPHPで検出された脆弱性の例を挙げましょう。2019年10月、nginxとPHP-FPMを組み合わせた一部の環境で、PHPプログラムの内部処理の不具合により不正なリモートコードが実行され得る脆弱性(CVE-2019-11043)が発見されました。この脆弱性は、具体的には、「使用される値(URL)に対して、入力値としての妥当性が確認されないことを想定しておらず、適切に制御されない」という不備に起因するもので、サポートが終了しているバージョンおよび対策済みバージョン未満のすべての現行版が影響を受けました。

PHPは、WordPressをはじめとする多くのWebアプリケーションで利用されており、当該脆弱性の影響は、PHPベースのアプリケーションを開発する多くの組織に及んでいます。警察庁の最近の調査によれば、同庁のインターネット定点観測においても、当該脆弱性を狙った攻撃を目的とする探索行為が観測されています。

Webアプリケーションを開発する組織は、こうした脆弱性の影響により、さまざまな対応に追われることになります。開発言語の脆弱性に加えて、アプリケーションのプログラミングで発生する脆弱性も、発覚がライフサイクルの後工程になればなるほど、対応のための負荷が増大します。なお、後者の脆弱性については、開発サイクルの可能な限り手前の工程で問題を特定・解消できていれば、修正にかかるコスト、影響範囲ははるかに小さく済みます。その意味で、Webアプリケーションのソースコードを点検することには、大きな意義があります。

 

Webアプリケーションの構造

プログラムは、「入力」→「ロジック」→「出力」の3つの処理で構成されています。脆弱性を作り込まないためには、これらすべての処理を制御し、意図しない動作が起きないようにすることが重要であり、「入力」「ロジック」「出力」の各処理が適切に制御しているかを、「内部」すなわちソースコード診断により検証し、あわせて、「外部」から確認できる挙動(リクエスト・レスポンス)を検証することで、問題の検出精度を高めることができます。

なお、こうした二極からの検証は、「ホワイトボックステスト」、「ブラックボックステスト」とも呼ばれます。前述したように、車の検査に例えるとわかりやすいかもしれません。両者にはそれぞれ異なる役割があり、両者を組み合わせることで、より信頼度の高い検査をすることが可能になります。

 

脆弱性に関する業界ガイドライン

業界標準のガイドラインもWebアプリケーションの脆弱性を評価する際に役立ちます。代表的なものとして、本稿では「OWASP Top 10」と「CWE Top 25」をご紹介します。

OWASP Top 10は、Webアプリケーションの脆弱性を、「悪用のしやすさ」、「蔓延度」、「検出しやすさ」、「技術面への影響」、「ビジネスへの影響」といった観点からランク付けし、最も重大なWebアプリケーションセキュリティリスク(「Most Critical Web Application Security Risks」)Top 10を選出しています。一方、CWE Top 25は、ソフトウェア開発で起こり得るプログラミングエラーを体系的に分類した項目リストであるCWE(共通脆弱性タイプ一覧)をベースにしたものです。リストの各項目に対し、米国の脆弱性情報データベースNVDの評価を加味して危険度のスコアを算出し、最も危険性が高いと評価されるソフトウェアエラー(「Most Dangerous Software Errors」)Top 25を選出しています。

Webアプリケーションの観点でいうならばOWASP Top 10が「ブラックボックステスト」であり、CWE Top 25は「ホワイトボックステスト」と考えることができます。

 

 

攻撃活動を先んじて制する

Webアプリケーションの脆弱性は、攻撃者にとって魅力的な標的です。悪用可能な脆弱性を常に探している彼らは、Webアプリケーションの構造設計やロジックを想定して仮説を立て、解析・検証し、特定の状況・環境・条件下において発現する不具合を見つけ出そうとします。お気づきでしょうか?実は、こうした攻撃者の行動パターンの裏をかくこと、攻撃者の行動に先んじてそれを阻むような手を打つことが、セキュリティ対策になり得るのです。いち早く脆弱性を見つけ、問題を解消することが重要です。この意味でも、リリース前に問題の検出に取り組むことは重要です。ソースコードレビューや単体試験などの段階でのソースコード診断は、効果的なタイミングの一例となります。

 

上流での対処を促進

脆弱性になるべく上流工程で対処する取り組みを促進することも重要です。たとえば、近年注目を集めているアプローチで、「シフトレフト」というものがあります。これは、ソフトウェア開発で生じる各種課題への対処をできるだけライフサイクルの早期の段階へとシフトさせていこうという考え方で、手戻りを防ぎ、品質を落とすことなく時間やリソースを効果的に節減することを目指すものです。セキュリティ対策においては、プログラムが想定しない動作をしないことを検証するための工程を前倒しすることで、セキュリティ強化・コスト削減・生産性向上といった面からも着実な成果が期待できます。開発ライフサイクルに明示的にセキュリティを組み込む、「DevSecOps」を推進するのも一案です。

リリースの直前でプログラムの問題が発覚した場合、状況によっては設計を根本から見直す必要が生じるかもしれません。リリース後の診断で重大な脆弱性が明らかになった場合は、サービス停止という事態もありえます。問題の修正にかかるコストや時間は、発覚が後になるほど膨らみ、致命的なビジネス損失を招く恐れがあります。早期の段階で不具合検出のためのリソースを投入することは、結果として最良の費用対効果を得られることにつながります。

 

 

「二極のスコープからの診断」がカギ

開発工程において常に生み出される可能性がある―これが、Webアプリケーション脆弱性に見られる1つの特徴です。リスクを最小化するカギは、できるだけ上流で脆弱性の芽を摘む体制を構築し、かつ、「内と外」の二極から脆弱性評価を行うことです。複眼的な軸を持つことは、評価の客観性を向上させ、対策時の優先度の判断や、サービスの継続・改修といった経営的意思決定におけるスピードと精度を高めることにもつながります。自組織の脆弱性診断では何を見ているのか?―こう自問してみて心もとなく感じた方は、ぜひ、この二極がカバーできているかを、改めて確認してみてください。

Security NEWS TOPに戻る
バックナンバー TOPに戻る


資料ダウンロードボタン
年二回発行されるセキュリティトレンドの詳細レポート。BBSecで行われた診断の統計データも掲載。
お問い合わせボタン
サービスに関する疑問や質問はこちらからお気軽にお問合せください。

Security Serviceへのリンクバナー画像
BBsecコーポレートサイトへのリンクバナー画像
セキュリティ緊急対応のバナー画像
セキュリティトピックス動画申し込みページリンクへのバナー画像