top of page

Cato Cloud の IPS を検証する

更新日:2022年3月18日


こんにちは。 株式会社フーバーブレイン SE の香取です。


本日は Cato Cloud の IPS 機能を試します。せっかくある機能なので、ちゃんと効いているのかな?を調査したいと思います。


目次

  1. WAN に IPS は必要なのか?

  2. 仮説と結果

  3. 検証環境の構築

  4. Cato Cloud の準備

  5. 1. IPS 設定

  6. 2. Cato Client 同士が通信できる様にする。

  7. 3. Cato Cloud 接続状態の確認

  8. スキャン実行

WAN に IPS は必要なのか?

Security NEXT - 2019/12/26 「Emotet」の脅威 - 組織やビジネスへの影響を考える

脆弱性を利用した不正アクセスはインターネットからの攻撃に限らず、侵入後の横展開にも用いられます。WAN を伝い、全拠点・モバイルユーザーにまで被害を及ぼす可能性があります。


この様な脅威に対し、ひとつの対策で万全とは言えません。パッチの適用やエンドポイントセキュリティとともに、ネットワークのセキュリティ対策を行い、多層防御を実現することが重要です。









Cato Cloud は SASE として、NSaaS(Network Security as a Service)の各種機能を含みます。

今回は IPS の機能を確認します。


仮説と結果

仮説 Cato Cloud では GVM(OpenVAS)のスキャンを攻撃と見なし、IPS で阻止する。攻撃を止めたことがログに記録される。

先に結果を言います。

成功!!

Cato Cloud IPS で、スキャンを阻止できました。 ログにも記録されました。


検証の環境構築・作業が長くなるため、先に結果を言ってしまいました。

「どの様な検証を行ったのか」については、この後に。


検証環境の構築

いつもの3分PoC 環境を少し改造して、この様な構成にしています。

victim として Metasploitable2 を使用します。既知の脆弱性がたくさん含まれている仮想マシンです。VMware イメージ(vmdk)ですが Hyper-V用(vhdx)に NHC で変換しました。 Hyper-V で起動すると NIC を認識しないため、こんな時は一旦シャットダウンして「レガシーネットワークアダプタ」を追加です。うまく行きました。

しかし、そのままでは問題があります。 OSが Ubuntu 8.04(2008年物!)と古く、Cato Client に対応していません。仮に Cato Cloud に接続できるとしても victim を(検証用ではありますが)WAN に…。心理的な抵抗も多少あります。

そうだ! TCP Proxy を使おう。

クラウドアクセラレーションのことを話すときに良く出てくる言葉ですね。 今回は意味が違い、victim が LISTEN しているポートを vm02 で代わりに(vm02自体のポートであるかの様に)受ける形です。 厳密には「脆弱性診断の対象としては不適切」なのですが、今回の検証程度ならこれで十分です。

ちなみに、この TCP Proxy は socat + xinetd です。 下記の FTP 用と同じ形で、プロトコル毎のファイルを作成しました。


vm02:~$ cat /etc/xinet.d/victim-ftp
service ftp
{
 port = 21
 socket_type = stream
 protocol = tcp
 wait = no
 user = root
 server = /usr/bin/socat
 server_args = stdin tcp-connect:victim:21
 disable = no
}

詳細な構築方法を書くと記事が非常に長くなってしまいます。惜しみつつカットです。また別の機会にスライド等で共有いたします。

それでは、vm04 の GVM で vm02 をスキャンしてみましょう。



スキャン結果 High 16 Medium 35 Low 1 Sevrity(重大度)10.0(High)

OK! 十分に脆弱化しています。


Cato Cloud の準備

準備はとてもシンプルです。

  1. IPS 設定

  2. Cato Client 同士が通信できる様にする。

  3. Cato Cloud 接続


行うことはシンプルなのですが、肝心要の部分ですので管理ポータルの画面を用いた解説をいたします。


1. IPS 設定

Security → Treat Protection


画面上部のスイッチを ON にするだけです(IPS 機能はオプションです。PoC時、または IPS 機能を契約している場合に、本機能をご利用頂けます)。


Malicious File のアイコンは「Block」の意味、Traking はアラートメールの設定です。

中央に TLS Inspection というリンクがあります。HTTPS 等の暗号化された通信も検査する設定です。

物理機器の場合はスループットが気になりますがCato Cloud は SASE であり、スループットは桁違い!」なので、ON にしておくことをおすすめします。


2. Cato Client 同士が通信できる様にする。

Netwoking → Network Rules


一番上にルールを追加しています。今回は検証のため、What列を「Any」にして「All VPN Users グループの端末同士は何の通信でも通る」という設定にしておきます。


この「Cato Client の同士の通信」は地味ですが、かなり便利な機能です。

例えば Web会議中に「ちょっと自分のローカル(WSL)で動かしている開発中のアプリにアクセスしてみてくれる?」なんて時に使えます。開発用サーバへのデプロイなど、ひと手間をかけずに済みます。


また、拠点と作業場所が離れているときに「SSH の踏み台サーバにグローバルIPアドレスを割り当てられる」とは限りません。

こんな時に、踏み台サーバを Cato Cloud に接続しておくと大変便利です。


3. Cato Cloud 接続状態の確認

My Network → Topology


CatoTester01 FuvaBrain  vm02(gvm: dist)  Ubuntu 18.04  10.41.14.104  TCP Proxy:オリジンは victim(Metasploitable2)


CatoTester02 FuvaBrain  vm04(gvm: src)  Kali Linux 2020.3  10.41.48.1  Debian用の Cato Client を使用して接続しました。


Cato Cloud に接続した状態でも vm02 の TCP Proxy が効いていることを確認します。

vm04:~$ telnet 10.41.14.104 23
Trying 10.41.14.104...
Connected to 10.41.14.104.
Escape character is '^]'.

______      _____ __ ___   ___| |_ ___ ____ __| | ___ (_) |_ __ _||__ || ___|___ \  | '_ ` _ \ / _ \ __/ _` / __|'_ \| |/ _ \| | __/ _` | '_ \| |/ _ \ __) | || || ||  __/ || (_| \__ \ |_) || (_) || || (_|| |_) | |  __// __/|_||_||_|\___|\__\__,_|___/ .__/|_|\___/|_|\__\__,_|_.__/|_|\___|_____|                            |_|                                                                       

Warning: Never expose this VM to an untrusted network!
Contact: msfdev[at]metasploit.com
Login with msfadmin/msfadmin to get started

metasploitable login: 

おお!バッチリ!!


スキャン実行

検証のクライマックスです! 皆様、すでに結果はご存じのはずですが、今しばらくお付き合いください。



実際にスキャンを開始すると、ずっと 1% から進みません。スキャンを停止し、Cato Cloud の管理ポータルで確認します。

Analytics → Event Discoversy → [Select Preset: IPS]


大量にログが記録されていました。内1つを見てみると、この様に IPS でブロックされていることが確認できます。



IPS の話から逸れてしまいますが、Cato Cloud のログは管理ポータルから CSV としてエクスポートできます。また、ログ監視・管理を他のシステムで行う場合は Log Exporter という機能を使用します。


Exporter は 30秒毎に新しいイベントを S3 バケットに送信します。


画面下の色が薄くて良く見えないボタンは「DOWNLOAD CLIENT SCRIPT」と「CHANGE ACCESS TOKEN」です。このスクリプトを使い、他のシステムは S3 バケットにあるログを取得できます。

結果を先に述べてしまいましたが、Cato Cloud の IPS は、しっかりと機能しているということが確認できました。

次に IPS について調べる際には「Windows の victim に対し、比較的新しい脆弱性を利用する」など、してみたいと思います。Cato Cloud に含まれる他のセキュリティ機能についても調査・検証を行っていきます。

今後とも、よろしくお願いいたします。


Cato クラウドに関するお問い合わせは、ぜひこちらまで。





閲覧数:24回0件のコメント

最新記事

すべて表示
問い合わせる
bottom of page