🔄
top of page

Latest Articles

アタック・サーフェース・マネジメント(ASM)を他のツールに連携する方法

  • Pipeline Co. Ltd.
  • 2024年4月15日
  • 読了時間: 6分

アタック・サーフェース・マネジメント(ASM)を他のツールに連携する方法
アタック・サーフェース・マネジメント(ASM)を他のツールに連携する方法

■セキュリティツールを統合することの意味とソリューション

ITセキュリティ市場は多くの解決策で溢れており、進化する脅威に適応するのに苦労しています。これらのソリューション間の統合の欠如は、CISO(最高情報セキュリティ責任者)がIT環境を効果的に保護することを困難にしています。多くのセキュリティソリューションが協調して動作しないと、サイバー攻撃を管理する際の非効率性につながります。


近年、IT自動化の手段としてRed Hat Ansibleが注目されています。セキュリティのための自動化についても活用に向けて研究が活発になってきました。共通の言語を通じてセキュリティ製品を自動化することで、Ansibleを使って統合された修復計画を調整することができます。このアプローチには、広く普及している、単一のセキュリティ主体によって制御されていない、さまざまなセキュリティソリューションを統合するために容易に拡張できる自動化言語が必要です。


Ansibleは、オープンソースの自動化プラットフォームとして、さまざまなセキュリティ、ネットワーク、インフラソリューションと統合しています。世界的に最も貢献されているオープンソースプロジェクトの一つとされています。Red Hatは、Ansibleがセキュリティエコシステムを統合し自動化するデファクトスタンダードになる可能性があります。

一方、監視運用においても、対象はセキュリティだけでなく、IT資源やアプリのイベントなど多方面ありますが、これらが統合されていないと、監視要員を増やす必要があったり、一連の事象として捉えにくかったりして、監視運用に支障が生じます。

これに対するニーズに応える手段として、Zabbixなどの統合監視ツールがあります。ASMツールからのアラートを統合監視ツールに連携できれば、ASMを既存の監視運用に統合することができるはずです。


ここでは、導入したASMツールをどのように既存運用システムと連携し、統合された運用環境を構築できる可能性があるのかを探ります。



■ASMを監視システムに統合して、一元管理するには

代表的な監視システムとして、Zabbixがありますが、ZabbixにはWeb APIが実装されており、これによりZabbix以外のアプリと連携することができるようになります。

すでにZabbixにより統合監視が行われている場合は、Zabbixと連携することを考えると、スムーズにASMを監視運用に取り入れることができるかもしれません。

基本的にZabbix APIはJSONリクエストにより行われます。

Zabbix上のイベントの取り込みはevent.getメソッドを使うことにより、特定ホストの過去のイベント情報を入手することができます。


一方、Zabbixへのイベント送信については、標準APIのドキュメント上にはその記載がありません。しかし、PythonやAWS LambdaのZabbix Senderを利用することができれば、Zabbixへイベントを送信することができます。これにより、監視運用はZabbixで統一したいが、セキュリティを強化するためにASMツールを使い、これをZabbixに連携するということができるようになります。



■ASMでの検知をトリガーとして自動化ツールを起動し、自動対処するには

複数のセキュリティソリューションが自動化を通じて統合することができれば、必要な判断・対処を手動よりもはるかに短く、一定品質で実行できます。

例えば、本番サーバーの疑わしい振る舞いを検知した場合、ファイアウォールのログの詳細度を高めたり、IDSのルールを有効にしたり、といったことがあげられます。


この際、Red Hat AnsibleのPlaybookのような事前に存在し、事前に検証され、事前に承認された自動化ワークフローを使用することで、セキュリティアナリストはオペレーションに時間を取られることなく調査に専念できます。

Red Hat Ansibleは、IT環境の自動化ツールです。このソフトウェアは、システムの構成管理、アプリケーションのデプロイ、タスクの自動化、ITプロセスのオーケストレーションなど、多くのIT運用作業を自動化するために使用されます。

Ansibleの主な特徴は次のとおりです:

  1. エージェントレス: Ansibleはリモートマシンにエージェントをインストールする必要がなく、SSHなどの標準的な通信プロトコルを使用してマシンを制御します。

  2. イデンポテンス: Ansibleのタスクはイデンポテントで、同じタスクを繰り返し実行しても、同じ状態になることを保証します。

  3. 宣言的言語: AnsibleはYAMLで記述されたPlaybookを使用します。これにより、ユーザーはどのような状態になるべきかを宣言的に記述し、Ansibleがその状態を実現する方法を処理します。

  4. 拡張性: Ansibleは数百の組み込みモジュールを持ち、さまざまなシステムやサービスと連携できます。また、カスタムモジュールの作成も可能です。

  5. コミュニティと商用サポート: Ansibleはオープンソースプロジェクトで、活発なコミュニティに支えられています。Red Hatによる商用サポートも提供されており、企業環境での使用に信頼性を加えています。


Ansibleは、その使いやすさと拡張性により、多くの企業や組織で広く採用されています。特に、コードとしてのインフラストラクチャ(Infrastructure as Code, IaC)の概念と相まって、DevOps文化の中で重要な役割を果たしています。

Ansibleのワークフローテンプレートを外部から実行するにはREST APIリクエストを行う必要があります。

REST APIを実行するツールを準備しておき、そこへPOSTリクエストを行ったことをトリガーとして、Ansibleでワークフローテンプレートを実行します。このことをシンプルに構成するためのツールがいくつかあります。ここでは、Ansible TowerとAnsibrestの2つを紹介します。


Ansible Tower(オープンアップストリームはAWX)

Ansible TowerはRed Hatが提供するAnsibleのエンタープライズ版です。これはAnsibleの自動化機能にGUIとREST APIを提供し、より管理しやすく使いやすい形でIT環境の自動化を支援します。主な特徴には、ジョブスケジューリング、ロールベースのアクセス制御、ジョブの実行履歴の追跡、集中化されたダッシュボードなどがあります。これにより、大規模な環境でのAnsibleの運用がより容易になります。なお、無料版としてAWXがあります。これはAisible Towerのアップストリーム版なので、Aisible Towerとの互換性は保証されていません。


Ansibrest

Ansibrest」は、AnsibleをRESTインターフェース経由で操作可能にするソフトウェアです。Ansibleはサーバ構成管理ツールであり、通常は設定ファイルの編集とコマンド実行を基本としています。Ansibrestはこの操作を簡素化し、WebブラウザやWeb APIを通じてAnsibleのPlaybookを実行できるようにします。Node.jsで開発されたAnsibrestは、npmコマンドを使ってインストール可能です。これにより、サーバ管理者が個別にAnsibleを各自のマシンにインストールする必要がなくなり、より効率的な運用が可能になります​



セキュリティツールをWeb APIなどで連携することにより、統合されたセキュリティ体制を構築できる可能性について述べました。

特にAnsibleなど自動化ソリューションは今後の進展が期待されます。これにより、高度に標準化された対処と作業の効率化が可能になるでしょう。


Latest Articles

Latest Articles

bottom of page