COLUMN COLUMN
2022.10.31 /
TLPT:脅威ベースペネトレーションテストによるセキュリティ実効性評価
2018年10月19日、金融庁の報道発表資料として「『金融分野におけるサイバーセキュリティ強化に向けた取組方針』のアップデート」の中で「脅威ベースのペネトレーションテスト(Threat Led Penetration Test(TLPT))」が明記され、金融機関が取り組むべき方針を打ち立てました。
それ以来TLPTは金融機関にとどまらず、あらゆる業界の大企業を中心に注目を集める一方で、以前から行われてきたペネトレーションテストとの違いや、TLPTのシナリオの設定の専門性や特殊性、テスト結果の有効な活用など、セキュリティに関する高度な知識が必要とされることから、社内のセキュリティ担当だけではテストの進行手順などで行き詰まることも多くあります。
今回は改めてTLPTとは何なのか、通常のペネトレーションテストとの違いや目的、実施する上での要素などについてまとめることでTLPTをより効果的に実施するための一助になればと思います。
TLPTとは
近年、サイバー攻撃は高度化・複雑化の一途を辿っており、攻撃を検知・防御し即座に対応することが困難となっています。
また自社のセキュリティ対策がどのような攻撃にどの程度耐えられるかについて知りたいと思うものの、それを明確にすることは非常に難しくセキュリティ対策に対して客観的に評価することも難しいといえます。
セキュリティ対策の評価方法として以前からあるものに「脆弱性診断」や「ペネトレーションテスト」があります。
「脆弱性診断」はサイバー攻撃を受けた場合にシステムに対する侵害につながる可能性のある脆弱性を特定し、ランク付けして報告することが目的です。
脆弱性診断の評価範囲は非常に網羅的ですが、自動化ツールなどで定型化できることから、場合によっては数分で評価することも可能です。
ただし脆弱性診断の目的は侵害の可能性の特定であり、実際起こりうる侵害レベルやその侵害に対してどの程度有効かについてまでは評価しません。
「ペネトレーションテスト」は脆弱性診断よりも分野を限定して、現在のセキュリティ対策が実際の攻撃に対してどの程度有効に機能するかについて評価するものです。ペネトレーションテストでも自動化できる部分もありますが、多くは手動のプロセスが中心となっており、複数のテストのレベルを調整しながらおこなっていくため、数日から数週間かかる場合もあります。
これらのテストは基本的には定形的なテストであり、現状のセキュリティレベルの概要を確認し攻撃に対して脆弱な項目を把握することができます。
ところが実際のサイバー攻撃は定型的ではありません。攻撃者は攻撃対象となる会社のセキュリティ対策に潜むいくつかの弱点を分析して、それらの弱点をどのように攻撃すれば有効なのかを探りながらより的確な攻撃方法を選択・変更していきます。
そのような考え方は、普段守ることを専門とするITセキュリティ担当は持ち合わせていません。
攻撃者としての考え方を持った専門的なセキュリティ技術者(ホワイトハッカーなど)が実際に攻撃することで、定型的なテストでは見つけることのできない、潜んだ危険性を浮かび上がらせることができます。
これがTLPTの主たる目的です。
TLPTにより解決できること
TLPTにより解決できることには大きく2つあります。
1.現在適用しているセキュリティ対策の有効性の把握
セキュリティ対策を実施している情報セキュリティ管理責任者(CISO)や経営陣の多くは、現在のセキュリティ対策がどの程度有効なのかが把握できず、実際に掛けている費用が適切なのか、どこまでお金をかけるべきなのかについて、常に不安に感じています
TLPTを適切に実施することにより、現在のセキュリティ対策の有効性を見える化し、どの分野の対策が十分なのか不足しているのか把握できることで、本当に必要な分野への対策に費用などのリソースを効果的に配分することができます。
2.万が一侵害された場合の被害の把握
セキュリティ対策の範囲は非常に広く、その度合は青天井ともいえます。かといってセキュリティ対策にかけられる予算には限度があります。
もし侵害された場合に想定される被害はどのくらいの範囲で、どの程度深刻なのか。その程度によってはむしろある分野のセキュリティは現在の程度に留めておいて、かける費用に見合う別の分野への対策をもっと拡充するべきかなどの割り切りができるはずです。
被害想定と対策にかかる費用を検証し対策に優先順位をつけておこなうことで、よりコストパフォーマンスの高い対策が可能になります。
Threat-Led(脅威ベース)とは
TLPTの中にあるTL(Threat-Led)とは「脅威ベース」と訳されています。
これはどういうことなのでしょうか。
脅威ベースに相対する言葉として使われる「Vulnerability-Led(脆弱性ベース)」について考えてみましょう。
脆弱性診断や一般的なペネトレーションテストは脆弱性ベースと言われます。
脆弱性ベースの考え方は様々なセキュリティ対策全体を俯瞰して確認し、その中に潜む脆弱性を網羅的に見つけることに対しては有効です。
それに対して「Threat-Led(脅威ベース)」は攻撃者の立場に立って、攻撃方法やシナリオを考えるという意味です。
攻撃対象の企業のどこに対してどのような手段を使って攻撃をすれば求める成果(情報の窃取や破壊、サービス停止、身代金要求など)を得られるのかを考えて攻撃方法を組み立てる、ということです。
これは将棋の中で相手の手を読むのと似ているといえます。
将棋の中では自分の駒と相手の駒を見比べて、どうすれば相手の防御を切り崩して相手を追い詰めることができるかをいろいろな角度から仮説を立てて、自分と相手の攻守を何手も先まで読んでいきます。それと同様に攻撃者が求める成果を得るために様々な脅威インテリジェンスを活用して相手の弱点を分析し、その弱点を的確に突く攻撃シナリオを考える。この思考方法がThreat-Led(脅威ベース)となります。
脆弱性ベースと脅威ベースどちらが正しいということはありません。どちらも状況によって必要なものですが目的が異なります。
脆弱性ベースは潜在する脆弱性を洗い出すことを目的としているのに対して脅威ベースは実際の攻撃に本当に耐えられるかを確認するためのものです。
それぞれの手法によるテストを効果的に実施することで、セキュリティ対策はより強固なものになるはずです。
TLPTの基礎的要素
TLPTを実施する上で必要な要素について金融庁ではG7での見解をもとにして
「脅威ベースのペネトレーションテストに関するG7の基礎的要素(TLPTのG7基礎的要素)」をまとめています。
これらは基本的に金融機関を対象にして考えられたものですが、企業が実施する上でも通じる部分があります。
1.スコープ設定とリスクマネジメント
スコープとはテストの影響範囲ともいえるものです。TLPTをおこなう上では現状のシステムに対して実際に攻撃をおこなうことでそのシステムに施されたセキュリティ対策が実際に攻撃に耐えられるかを確認し評価する必要があります。テストによってシステムの脆弱性を確認し、問題点を浮き彫りにするまでが目的なので、それが検証できる範囲とレベルを関係者と十分に確認し設定するべきです。また、検証範囲にサプライチェーン関係者も含まれる場合、検証するプロセスや技術、事前に確認する人を特定しつつ情報を共有して進めなければいけません。テストの効果を上げるにはその関係者はできるだけ限定する必要があるためスコープの設定は非常に重要です。
また、テストをおこなう際には、実際に起こりうる影響や資産への実害、サービスや業務が中断してしまうようなリスクを減らすようリスク管理を徹底しておく必要があります。テストを続けることが企業や関係者にとって許容できないほどのリスクになる危険性が
あると判断したら、すぐ中断できるようにしておく必要があります。
関係者は、テストで見つかった脆弱性の分類方法や、何を持って侵入成功とするかという指標などについて相互に確認し、企業側のリスクマネジメントのフレームワークに整合性を持たせつつ、発見された脆弱性に対する重要性・優先度を示すことができるようにします。
2.リソース確保
TLPTは、現実の世界で実際に発生しているサイバー攻撃を疑似的に実施し、現在のセキュリティシステムへの侵害に対する能力を確認し高めるテストで、本番環境で実施することになります。外部のペネトレーションテストプロバイダーを選定する際には、高い専門知識を持っている、倫理規程を遵守できる、万が一の場合の損害賠償保険の対応などの要素を満たす企業などを選定する必要があります。
3.脅威情報
TLPTの実施前に、企業側の現状のセキュリティ環境で実際に発生し得るサイバー攻撃をもとにシナリオを作成します。作成する脅威シナリオは原則として、オープンソースなど一般的に収集可能な情報から分析された脅威インテリジェンス(攻撃者側の意図、能力、設備等の関連情報を整理・分析することで、使用可能にした知識情報)をもとに作成されます。テスト対象の企業への攻撃者となりうるのはどのような集団か、攻撃目的や、実行してくる技術や手法をリスクやトレンドに応じて立案します。
4.ペネトレーションテスト
レッドチームおよびブルーチームと言われる攻撃を仕掛ける側と受ける側に分けて、実際の攻防を擬似的に作り出します。以下のようにチーム分けをおこないます。
レッドチーム:
テスト実施者のグループで、テスト対象に対して擬似的サイバー攻撃を実施する攻撃者グループになります。実際のサイバー攻撃を疑似的に実施できるハッキング技術に精通したメンバーで構成されます。
ブルーチーム:
攻撃者グループ(レッドチーム)に対して、企業側のセキュリティ状況を維持し情報システムの利用を防御するグループになります。企業側で組織を攻撃から守るSOCやCSIRTといったセキュリティチームで構成されます。
ホワイトチーム:
前述のレッドチームとブルーチームのテスト上での関与を調整するグループになります。
計画の立案や実施体制、⽇程調整だけでなく、テストにおけるルールの実効性の確保、テスト状況監視、発生する問題の解決、意図された方法でのテスト実施を監督します。
テストではレッドチーム側は事前に検証した攻撃シナリオから実行しうる様々な攻撃を選んで仕掛けて侵入を試みます。
対してブルーチームは、レッドチーム側から仕掛けられるサイバー攻撃に応じて検知・防御・対応を行います。
5.完了および改善
レッドチームの攻撃に対しブルーチームが検知、防御、対応できた(できなかった)方法やタイミングを評価します。また技術面だけでなく、企業側のサイバーセキュリティ関連のスタッフや防御行動のプロセスなどの観点からも課題を検証します。
評価・検証結果に基づいて企業のサイバーレジリエンスを強化するための改善策を作ります。この改善結果は機密事項にもなるため、安全な方法で適切な関係者にのみ共有し、必要な改善計画を作成・実行していきます。
6.類型化したデータ
サイバーレジリエンスの改善に貢献するため、テスト結果をもとにした類型化したデータを作成し、関係者間で共有します。各業務間で共通する脆弱性を特定し、できるだけ類型化すべきですが、必要に応じて独自のフレームワークが必要になることもあります。
効果的なTLPTをおこなうには
TLPTは現状のセキュリティ対策を多角的に検証し、内部にいると見逃してしまいがちな脆弱性をあぶり出すことができるものです。
ただ、効果的なTLPTを安全に実施するには、サイバー攻撃に関する専門的かつ広範な知識が必要です。
また、TLPTを実施するにあたりテスト全体を管理するホワイトチームには、テストの効果と安全性のバランスを取りながら実施することのできる、経験豊富なスタッフが必要ですが、そのような人財を社内のみで確保するのは非常に困難であることがほとんどです。
外部の信頼できるペネトレーションテストプロバイダーであれば、自社内では気が付かない視点での攻撃シナリオの立案ができ、外部の人間であることでむしろ社内の様々な条件を障壁として考慮しないテスト実施が可能になる面もあります。
TLPTの実施を検討する場合はシナリオ立案や運用などについて、外部のペネトレーションプロバイダーに意見を聞くことも重要であるといえます。
弊社の「脅威ベースのペネトレーションテスト」では、既知の攻撃手法だけではなく、未知の攻撃手法を想定した脅威シナリオの策定、および脅威シナリオに準じた実際の侵入テストを実施。企業の包括的なシステムを対象とし多層防御の観点から企業のインシデントレスポンス体制(防御・検知・修復能力)を評価しています。お気軽にお問い合わせください。