Sophos Central Server ProtectionでCentOS7を保護してみた

2018.01.31

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

Sophos Server Protectionは、サーバーにインストールして使用するアンチマルウェア製品です。
マルウェアとはコンピュータウイルス、トロイの木馬、ワームなど悪意のあるソフトウェアの総称です。

Sophosのアンチマルウウェア製品には3つのライセンス(参考)がありますが、クラウド型のCentral Server ProtectionをCentOS 7に導入し、動作確認するまでを紹介します。

事前準備

検証ライセンスの申し込み

検証ライセンスはこちらから申し込めます。
Central Server Protectionを含め、様々な製品を1ヶ月間試せます。

Webページから申し込むと、Sophos Centralへのログイン情報が送付されます。
Sophos Centralはクラウド型の管理サーバーです。
Server Protectionの設定は、Sophos Centralで一括管理します。

システム要件の確認

保護対象がSophos Anti-Virus for Linux: システム要件を満たすか確認します。
Sophos Anti-Virus for Linuxには、バージョン10とバージョン9がありますが、Sophos Centralを利用時にシステム要件を満たす場合、バージョン10がインストールされます。
よって、"バージョン 10 によってサポートされているシステム要件"を確認しましょう。
保護対象のEC2は、AWS Marketplaceから起動しました。
検証環境では、いずれも問題ありませんでした。

※ 補足
クラウド管理型 Sophos Anti-Virus for Linux バージョン 10 は、Sophos Linux Security(SLS) に名称が変更される予定です。

システム要件 検証環境 結果
対応ディストリビューション CentOS Linux release 7.4.1708 (Core)
64ビット (x86_64) 64ビット (x86_64)
GNU C Library (Glibc) 2.11 以降 2.17-196.el7_4.2
Kernel 2.6.32 以降 3.10.0-693.11.6.el7
空きディスク容量 最低 1 GB -
メモリ 1 GB 以上を推奨 t2.micro

オンアクセス要件の確認

Sophos Anti-Virus for Linuxでは、fanotifyまたはTalpaを利用して、オンアクセス検索します。
fanotifyは、カーネルに含まれるファイルシステムの状態変化を通知する機能です。
TalpaはSophosが提供する機能です。
こちらの"TalpaBinaryPacks.txt"とOS、カーネルバージョンを照らしあわせると、事前にコンパイルされたTalpaバイナリパックを利用できる事がわかります。
今回は、事前にコンパイルされたTalpaバイナリパックを利用します。

インストールと初期設定

インストーラの実行

Sophos Centralから、インストーラをダウンロードします。

インストーラーを実行すると、SAV 10.3.0がインストールされました。
SAVはSophos Anti-Virusの事です。

[centos@ip-172-31-17-89 ~]$ sudo sh ./SophosInstall.sh
Installing Sophos Anti-Virus for Linux with arguments: []
Downloading medium installer
Checking we can connect to Sophos Central (at https://mcs-cloudstation-us-east-2.prod.hydra.sophos.com/sophos/management/ep)...
Finished downloading the medium installer.
Running medium installer (this may take some time)
Updating directly from Sophos.
Extra files updating is disabled. You can change updating settings using /opt/sophos-av/bin/savsetup.

Installing Sophos Linux Security....
Selecting appropriate kernel support...

Installation completed.
Your computer is now protected by Sophos Linux Security.
次のバージョンにアップデートしました - SAV: 10.3.0、エンジン: 3.69.2、データ: 5.47
sdds:SOPHOS からの Sophos Anti-Virus のアップデートに成功しました
Current install does not support Message Relays
Saving Sophos Cloud credentials
Registering with Sophos Cloud
Starting Sophos Cloud Management Client
Now managed by Sophos Cloud
[centos@ip-172-31-17-89 ~]$

Sophos Centralを確認すると、EC2が認識されています。

言語設定

Sophos Centralの言語設定を変更します。
日本語も対応しています。

サーバーグループの追加

グループを作成する事で、グループ単位でポリシーを設定できます。
サーバーの役割(Web,DB,バッチなど)ごとにサーバーグループを分けて、ポリシーを適用すると良いでしょう。

Webサーバーグループを作成し、EC2を割り当てました。

ポリシー設定

ポリシーは、以下の7種類あります。
Linuxでは、脅威対策とアップデートの管理を利用できます。

  • 脅威対策
  • 周辺機器コントロール
  • アプリケーションコントロール
  • Webコントロール
  • ロックダウン
  • データ流出防止
  • アップデートの管理

脅威対策

脅威対策-概要

トロイの木馬/ワーム/コンピュータウイルスなどの脅威の検索を行います。
推奨設定を利用しつつ、必要な箇所を変更します。
特に、定期スキャンスケジュールや検索除外はシステム個別で設定する形になるかと思います。
変更時はこちらが参考になります。
OSごとに利用できる機能が異なりますが、コンソール上ではわかりやすい形で表示されています。

脅威対策-ポリシー作成

ポリシーの追加を選択し、脅威対策ポリシーを作成します。

ポリシー名は、「Webサーバーポリシー」としました。
Webサーバーグループに割り当てます。

推奨設定をベースに"スケジュール検索"のみ変更しました。
毎日午前12:00に検索します。

アップデートの管理

アップデートの管理-概要

製品アップデートを行う曜日と時間を設定します。

アップデートの管理-ポリシー作成

ポリシー名を「Webサーバーポリシー」とし、Webサーバーグループに割り当てます。
アップデートのスケジュールは、水曜日の午前01:00としました。

動作確認

オンアクセススキャン

テスト用のEICARファイルをダウンロードすると、脅威を検知しました。

[centos@ip-172-31-17-89 ~]$ curl -O http://www.eicar.org/download/eicar.com
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100    68  100    68    0     0     33      0  0:00:02  0:00:02 --:--:--    33
[centos@ip-172-31-17-89 ~]$
******************** Sophos Linux Security 警告 ********************
脅威 "EICAR-AV-Test" が次のファイルで検出されました
"/home/centos/eicar.com".

ファイルはまだ感染しています

**********************************************************************
[centos@ip-172-31-17-89 ~]$

ファイルを開こうとすると、アクセス拒否されます。

[centos@ip-172-31-17-89 ~]$ cat /home/centos/eicar.com
cat: /home/centos/eicar.com
******************** Sophos Linux Security 警告 ********************
脅威 "EICAR-AV-Test" が次のファイルで検出されました
"/home/centos/eicar.com".

ファイルへのアクセスが拒否されました

**********************************************************************
: 許可されていない操作です
[centos@ip-172-31-17-89 ~]$

Sophos Centalでもマルウェアが検出された旨がわかります。

メールでも通知されます。
ユーザー側でメールサーバーを用意せずとも通知できるのは素晴らしいですね。

感染ファイルの駆除

テストファイルを削除します。
savscan -remove /home/centos/eicar.comを実行します。
実行後にlsコマンドを実行し、ファイルが削除された事を確認しました。

[centos@ip-172-31-17-89 ~]$ savscan -remove /home/centos/eicar.com
SAVScan ウイルス検出ユーティリティ
バージョン 5.38.0 [Linux/AMD64]
ウイルスデータバージョン  5.47, 2018年1月
15461045種類のウイルス、トロイの木馬、ワームを検出します。
Copyright (c) 1989-2018 Sophos Limited. All rights reserved.

システム日 2018年01月31日, システム時刻 02時11分37秒
以下のオプションスイッチがあります: -remove

IDE ディレクトリ: /opt/sophos-av/lib/sav

以下の IDE ファイルを使用しています: delf-gli.ide
以下の IDE ファイルを使用しています: pdfu-dqw.ide
(中略)
以下の IDE ファイルを使用しています: zbot-lwh.ide

クイックモード検索

>>> ウイルス‘EICAR-AV-Test’がファイル /home/centos/eicar.com に発見されました
/home/centos/eicar.com の削除を実行しますか? (はい[Y]/いいえ[N]/すべて[A]) ? すべて
除去に成功しました

ファイル 1 個を 17秒で検索しました。
1 個のウイルスが発見されました。
1 個のファイル(1 個中)が感染しています。
検出に関する詳細は、ソフォス Web サイトの次のリンクを参照してください。
脅威解析センター: http://www.sophos.com/ja-jp/threat-center.aspx
検索が終了しました。
[centos@ip-172-31-17-89 ~]$ ls -l /home/centos/eicar.com
ls: /home/centos/eicar.com にアクセスできません: そのようなファイルやディレクトリはありません
[centos@ip-172-31-17-89 ~]$

対処が完了したので、Sophos Centralからステータスを変更します。

おわりに

Central Server ProtectionをCentOS 7に導入し、動作確認するまでを紹介しました。
Central Server Protectionは、クラウドの管理サーバーで設定を一元管理できるほか、ユーザー側でメールサーバーを用意せずともメール通知可能です。
Amazon Linuxにも対応しているため、AWS環境でのマルウェア保護の有力な選択肢になるかと思います。

検証環境

  • AMI: CentOS 7 (x86_64) - with Updates HVM ,ami-25bd2743

参考