パロンゴが取り扱いを始めました BAS ソリューションである SafeBreach をご紹介したいと思います。
まず BAS とはなんでしょうか?
まだあまり耳馴染みのない言葉だと思いますが、ブリーチ&アタックシミュレーションの略になります。
情報漏洩や攻撃といった状況を実際の環境にてシミュレートし、その結果、検知できるのか、ブロックできるのかといった観点で自組織のセキュリティ対策の状況を可視化し、リスクを洗い出すことができるというものです。
セキュリティを考える上で、来てほしくないのは「本番の舞台」、すなわちリアルなインシデントですよね。
それを防ぐためにみなさん予算や工数を使って日々対策し運用しておられると思いますが、基本的にこの「本番の舞台」ってぶっつけ本番になるのが今までだったと思います。
もちろん例えば訓練メールを投げてみるとか診断系のテストサービスを受けてみるといった形で「本番前に」いろんな取り組みを行うことは以前からなされてきましたが、訓練メールはあくまでも訓練メールですし、診断系のテストやペネトレーションテストもテストのためのテストシナリオであり、「本物」ではありません。
そうすると本番の舞台に備えたリハーサルってのはどうやればいいんでしょう?
部分部分を取り上げた稽古はできるでしょうが、舞台を通したリハーサルってのはやらないでいいんでしょうか?
BAS ソリューションはこの「リハーサル」をやりましょう、というソリューションだとご理解いただくといいんじゃないかと思い、この比喩でいつもご紹介しています。
今も少し触れましたが、実際に攻撃を仕掛けて侵入できるかどうかを確認するといったソリューションですと以前からペネトレーションテストや脆弱性診断に関するソリューションがありました。
それでは BAS とそれらはどういった観点が異なるのでしょうか?
その違いをいくつかの観点でまとめてみたものが下の表になります。
実際に発生した攻撃手法、本物のマルウェア等を使ったよりリアリティのある攻撃をシミュレーションとして実行することで、よりリアリティのある「セキュリティポスチュア」、すなわち自組織の防御力、耐久力が見えてくるというものが BAS になります。
実際の攻撃手法やマルウェアを使うといってももちろんそれらをそのまま実行するわけではありません。それだとただの攻撃ですからね。
それではここから SafeBreach の実際の画面を見ながら流れを解説したいと思います。
SafeBreach は、いくつかの環境にシミュレータをインストールするところから始まります。シミュレータはアタッカー役にもターゲット役にもなることができるように作られています。
例えば、パブリッククラウドサービスにインスタンスを一つ立て、そこにシミュレータをインストールします。このシミュレータには外部のアタッカー役になってもらいます。
さらには DMZ に設置している Web サーバにもシミュレータをインストールします。
さらに、従業員用 PC として標準構成で組まれているような PC を用意し、そこにもシミュレータをインストールします。
DMZ の Web サーバや従業員用 PC は主にターゲット役となるわけですがテストの内容によってはアタッカー役が割り振られるケースもあります。
DMZ は Firewall で守られているケースが多いと思いますがそれはそのまま通常の運用状態としておきます。止める必要はありませんし止めてしまってはシミュレーションの意味がありませんのでそのままです。
従業員用 PC にもおそらく昨今ですと EDR がインストールされていたり、最低でもアンチウイルス製品がいてマルウェアから PC を守るようになっていると思います。これもそのままです。通常の運用状態としておきます。
Firewall のログは SIEM を介して SafeBreach 側と連携するようにしておきます。Block したようなログが SafeBreach 側でも認識できるようにするためです。
同じく EDR やアンチウイルス製品についても API 連携などで SafeBreach 側と連携するように設定します。
さらにはマルウェアをメールに添付して送るような状況のテストを行うために、攻撃側として用いるメールアカウントの設定や、ターゲット側として用いるメールアカウントの設定も行います。
ひとまずここまででおおよそシミュレーションができそうな環境になりました。
それでは早速シミュレーションをいくつか行ってみましょう。
まずは攻撃シナリオの選択からです。
SafeBreach には数多くの攻撃シナリオが組み込まれています。
たとえば Solarwinds を突く攻撃や Lockbit3.0 といった有名な攻撃シナリオや、APT17 や APT29 といった攻撃グループがよく使う手法、あるいは業界カットでよく見られる手法、MITRE の攻撃分類に基づいたベースラインシナリオといった多くのリアルなシナリオが提供されています。
中には US-CERT や FBI がフラッシュアラートを出した攻撃に対応するシナリオもあります。US-CERT や FBI のフラッシュアラートが出ると 24 時間以内に攻撃シナリオ化されますので、最新かつアウトブレイクしている最中の攻撃も自組織上でシミュレーションを走らせることが可能です。
ここではまずは Emotet あたりを試してみましょう。
Emotet をシミュレートするシナリオを選択すると、設定を行うページに移行します。
このページにて、「どのシミュレータを使った」攻撃の「どのステップを実行」するのかといった設定を行います。
一言で「Emotet による攻撃」といってもいろんな攻撃のステップがあります。
メールに添付ファイルとして Emotet がくっついてメールサーバに届き、そのメールがローカルの PC に取り込まれ、添付ファイルがクリックされディスクに書き込まれ、メモリ空間にロードされて実行され、実行後には C2 サーバと通信し、機微な情報を外部へ持ち出す、といったいろんな段階が存在します。
SafeBreach はこれら全ての段階をそれぞれ独立にテストすることが可能になります。もちろん全てのステップを実行してもいいですし、例えばメール受け取りからディスクに書き込まれるかどうかまでをやってみよう、といった形でステップを限定してのテストも実行できます。
ここではひとまず全ステップを実行することにしてみましょう。
どのシミュレータをアタッカー役にし、どのシミュレータをターゲット役にするかを設定します。
外部に設置しているシミュレータをアタッカー役に、従業員用 PC を想定した Windows マシンをターゲット役とします。
さらにはターゲット役となっている Windows マシンのシミュレータにもアタッカー役を割り振ります。
これは、例えば「マルウェアをディスクに書き込めるか」というテストを行うときに必要となります。ディスクに書くという処理はローカルで完結させる必要がありますので Windows マシン上のシミュレータがアタッカー役もこなす必要があるからです。
さてシミュレータの選択も終わりました。攻撃シナリオの各ステップを問題なく実行できるようになっていますので走らせてみましょう。
走らせるためには右上の Run Test のボタンを押して即時実行するか、簡単なスケジュールを設定して自動実行するかが選択できます。
テストの実行が終わったら結果を見てみましょう。
これが結果サマリの画面になります。
Blocked や Prevented となっているものが多くみられますが、Missed、すなわち防御できなかった手法がいくつかあるようですのでその詳細をチェックしてみましょう。
結果詳細画面では、シミュレータがどういう処理をしてどう動いたかといったログを確認することができます。これにより、なぜ Missed となったのか(あるいはなぜ Blocked と判定されたのか)についても詳しく追っかけることができます。
次にヒートマップを見てみましょう。MITRE Enterprise のマトリックスに照らし合わせ、この攻撃シナリオに対するヒートマップを生成することができます。
またあるテストシナリオだけのヒートマップではなく、いろんな観点でのいろんな攻撃シナリオの総合結果としてのヒートマップを生成することもできます。
例えば下のヒートマップを見ると、「境界防御的にうまくいってるところもあるけど、そこを抜けてしまったりすると特権昇格のような動きや C2 との通信といったところを抑える対策がない」というリスクの状態が確認できます。
あるいは攻撃シナリオごとのリスクもレポートとして表現できます。
例えばこれは Wanna Cry に対する自組織のリスクレポート、といった切り口になります。
BAS ソリューション SafeBreach をざっとご覧いただきましたがいかがでしたでしょうか?
来てほしくない「本番」に備えるための「リハーサル」として、ぜひ BAS を使ったリスクの把握をご検討いただき、より効率的効果的なセキュリティ運用やセキュリティ投資にお役立ていただければと考えております。
Comments