Deep SecurityのイベントをAWS SNS経由で送付する #DeepSecurity
こんにちはコカコーラ大好き、カジです。
今回はDeep Security as a Service(DSaaS)で利用可能な、Deep SecurityイベントをAWS SNS経由し送付してみましたので紹介します。 DSaaSで昨年の9月ぐらいに機能追加されていて驚きました。シンプルですがAWS SNSを経由して別なサービスに送付して処理も行えるため、この後に期待できそうです。では早速、構築してみます。
構成図
AWS側の設定
IAMの設定
IAM用のポリシーを新規作成し、SNSのPublish権限の設定します。
ポリシーを作成します。
IAM用のポリシーを新規作成し、SNSのPublish権限の設定します。
{ "Version": "2012-10-17", "Statement": [ { "Action": [ "sns:Publish" ], "Effect": "Allow", "Resource": "*" } ] }
上記ポリシーを付与したDeep SecurityがSNSを利用する際に使用するIAMユーザを作成します。先ほどのポリシーを付与します。 IAM > ユーザ > 新規ユーザ作成します。
プログラムでしか利用しないため、チェックボックスを入れます。
最後にcsvファイルが生成されますので、ダウンロードし、後のDeep Security側へ設定します。
SNSの設定
Deep Securityから通知を受信し、AWS SNSのTopicを作成します。 通知を今回は簡単な、Eメールアドレスにしています。
作成した、Topic ARNを後のDeep Security側へ設定します。
作成後に表示されている「Topic ARN」をコピーしておきましょう。Deep Securityの設定に利用します。
通知先のEメール先を設定
承諾(Confim)メールが届きますので、クリックして承諾します。メールの本文は以下になります。
DSaaS(Deep Security as a Service)側の設定
管理>システム設定>SIEM>Amazon SNSに先ほど作成したものを設定するだけです。
「Test Credentials and send notification」でテストが可能です。 テスト後以下のようような本文でSNS経由でEメールが届きます。
通知される内容
EC2でeicarファイルをダウンロードして検知した時のSNSの通知となります。 人間が読む場合は、Deep Securityの通知設定の方が適しています。 以下の結果をもとにAWSの別なサービスで処理を行うためにはこちらの方が良いでしょう。
[{"AMTargetTypeString":"N/A","ATSEDetectionLevel":0,"EngineType":536871936,"EngineVersion":"9.85.0.1008","ErrorCode":0,"EventID":xxx,"EventType":"AntiMalwareEvent","HostAgentVersion":"9.6.2.7516","HostID":XXX,"HostOS":"Amazon Linux (64 bit) (4.4.14-24.50.amzn1.x86_64)","HostSecurityPolicyID":203,"HostSecurityPolicyName":"XXXXXXXX","Hostname":"ip-hogehoge.ap-northeast-1.compute.internal","InfectedFilePath":"/home/ec2-user/eicar.txt","LogDate":"201x-xx-xxT08:xx:08.000Z","MajorVirusType":2,"MajorVirusTypeString":"Virus","MalwareName":"Eicar_test_file","MalwareType":1,"Origin":0,"OriginString":"Agent","PatternVersion":"0.000.00","Protocol":0,"Reason":"Default Real-Time Scan Configuration","ScanAction1":4,"ScanAction2":3,"ScanResultAction1":-81,"ScanResultAction2":0,"ScanResultString":"Quarantined","ScanType":0,"ScanTypeString":"Real Time","Tags":"","TenantID":xxxxx,"TenantName":"hogehoge-Inc.co.jp"},{"AMTargetTypeString":"N/A","ATSEDetectionLevel":0,"EngineType":536871936,"EngineVersion":"9.85.0.1008","ErrorCode":0,"EventID":xxx,"EventType":"AntiMalwareEvent","HostAgentVersion":"9.6.2.7516","HostID":XXX,"HostOS":"Amazon Linux (64 bit) (4.4.14-24.50.amzn1.x86_64)","HostSecurityPolicyID":203,"HostSecurityPolicyName":"XXXXXXXX","Hostname":"hogehoge.ap-northeast-1.compute.internal","InfectedFilePath":"/home/ec2-user/eicar.txt","LogDate":"201x-xx-xxT08:xx:09.000Z","MajorVirusType":2,"MajorVirusTypeString":"Virus","MalwareName":"Eicar_test_file","MalwareType":1,"Origin":0,"OriginString":"Agent","PatternVersion":"0.000.00","Protocol":0,"Reason":"Default Real-Time Scan Configuration","ScanAction1":4,"ScanAction2":3,"ScanResultAction1":-81,"ScanResultAction2":0,"ScanResultString":"Quarantined","ScanType":0,"ScanTypeString":"Real Time","Tags":"","TenantID":31981,"TenantName":"hogehoge-Inc.co.jp"}]
まとめ
いかがでしたでしょうか?簡単に送付が行えますね。今後も別サービスと連携してくると利用方法が広がりそうです。 便利なAWS SNSとの連携ですが今後改善に期待する改善点を1つ言うと、現在のところDeep Securityのポリシー毎に送付可否の制御できません。 そのためDSaaSのアカウントの全イベントが全て送付されます。監視下のあるサーバ(ポリシー)の通知だけ受信したい場合に、受け取る側で選別が必要になります。
参考元
トレンドマイクロのドキュメントは以下となります。