Alert LogicとAWSを組み合わせてみたらどう?
こんにちは。最近、子供と一緒にスイミングをはじめた大阪オフィスの小林です (@koba_taka)です。
いやー、水泳っていいものですね。その後のビールは大慶至極。ただ、二日酔いでの水泳は色々と危険でした。当時の詳しいお話が気になる方は、お気軽に大阪オフィスまで。ぜひ、勝男で飲みましょう。
さて、この記事はサーバーワークス Advent Calendar 2016 19日目の記事です。
昨日は、 @nagafuchikがMAについて熱く語ってくれました。本日はセキュリティのお話です。少しですが、Alert Logicについて少しだけマジメに書いていきたいと思います。
なぜAlert Logicなの?
ウチが取扱をはじめた & 個人的にAWSでPCI-DSSなどの認証取得するなら便利だなーと思ったのがきっかけです。よくできているなぁーと。そして、あまりAlert Logicについての日本語の参考資料も少なかったので、ザッと書きます。
Alert Logic
- 2002年設立、米ヒューストンを本社に拠点とするセキュリティ会社
- AWS(Amazon Web Services)との親和性の高いセキュリティ製品Alert Logicの提供
- IDS / WAF / SIEMの提供
- 脆弱性診断も実施可能
- 世界中のセキュリティインシデントデータを集約し、ビッグデータ解析
- SOCの提供
↑の内容を、Security as a Serviceとして提供
ちなみにAWS (Amazon Web Services)で提供されているセキュリティのサービスといえば、AWS WAF & AWS ShieldとAWS Inspectorが有名です。AWS Shield Advancedはポチりたいのですが、ビビってポチれていません。どなたか勇気(とお金)をください。($3,000/月です)
では、ここからザックリとセキュリティの話を。
セキュリティを考える上での構成要素をザックリと図示してみました。
左の項目が守るための手段、右に図示しているのが守るものです。
- WAF (Webアプリケーションファイヤーウォール)
- IDS/IPS (不正プログラム・侵入検知など)
- SIEM (ログ収集・解析)
- FIM (改竄検知)
- F/W (ファイヤーウォール)
実際はもう少し細く分けれるのですが、今回はこの要素でAlert Logicをざっと説明していきたいと思います。
F/W
まずは、F/W。AWSでは、ファイヤーウォールの要素としてセキュリティグループとNACL。VPCを利用すれば、標準で利用できます。IPアドレスとサービス単位で通信制御が可能なF/Wです。例えば、アプリケーションの挙動毎に制御したいなどの制御についてはセキュリティグループやNACLのみでは対応できず、Paloaltoなどのアプライアンス導入をオススメしまっす。
AWSまわりはこの資料(P.37-P.39)が詳しく解説してくれています。
FIM
つづいてFIM。File Integrity Monitoringの略。要は改竄検知。改竄検知の機能はAWSでは標準で用意されていません。例えば、AWSでは、Trend Micro社のDeep Securityなどを利用するケースが多かったりします。ちなみにAlert LogicではこちらのFIMについては残念ながら、非対応となります。対応してほしいなー。
SIEM
次にいきます、SIEM。Security Information and Event Management.. セキュリテイ情報&イベント管理.. 一言でいうと、「よりイケてるログ解析管理」を提供します。例えば、ネットワークやアプリケーションなどのログを一元管理収集、データ解析を行うことで、一つのログデータではなく、複数のログデータより相関分析を実施し、アクションを実施します。Alert Logicではこちらの機能がかなり優秀です。世界中の約4,000程のテナントから収集した攻撃情報をビッグデータ解析にかけて、インシデントを判定します。もしかするとSIEMについては、Alert Logicに右に出るものはいないんじゃないかってぐらいのレベルです。(USで独自の特許も取得されてるみたいです)
IDS/IPS
もう言わずと知れたIDS/IPSですね。侵入検知/侵入防御。Alert Logicについては、IDSの機能を提供しております。Trend Micro Deep Securityとの大きな違いはAlert Logicはネットワーク型IDS、Deep Securityはホスト型IDSとなってます。
WAF
最後にWAF。検知処理については、Alert Logic優秀です。しかし、ここで注意点が1点。現状、あくまで検知のみ(防御はしない)となります。(2016年12月 現在)
もし、検知した際に防御を実施する場合、何かのサービスと組み合わせて実装する必要があります。(例えば、AWS WAFとの組み合わせなど)
AWSサービスと組み合わせてみた
そこで、今回はAlert LogicのWAF検知機能とAWS WAFとの連携を実施してみました。
概要はこのような図で実装。
Alert Logicからはアラートとして「攻撃内容と攻撃元のIPアドレス」が記載されたメールが予め通知先に設定したメールアドレスに届きます。
以下、例ですが件名はこのようなメールです。
[alertlogic-notice] Incident #XXXXX: Web server recon attack from X.X.X.X
そこで、このメールを受信した際に、このメール内容と送信元を判定してIPアドレスをブロックするIPアドレスを抽出し、AWS WAFの「IP match conditions」に追記するように設定します。
AWS WAFとの連携の流れ
SOCからのメールトリガーとなるため、SESでの受信設定
↓
Recipient RuleでS3へ格納
↓
Lmabdaで対象IPの抽出
↓
AWS WAFのList更新
(S3に一度格納する理由は、マルチパートでのメールとなるため、直接Lambdaへの渡しを抑制するためとなります。)
主な手順はこの動画でも紹介されてます。(こちらはCloudWatch Logsからの設定となってます。)
こちらの資料も参考になります。
実際に実装してみて
無理矢理感は否めないですが..なんとか、これでAlert Logicの高度な検知情報と防御の仕組みをAWS WAFで実装できるかと思います。また、AWS WAFのIP Rule更新はサービス停止も伴わず、即時反映となるため、そのあたりもステキですね。
ただ、メールでのトリガーとなるため、 開始当初は検知回数や誤検知判定はチューニングを実施して運用に載せる必要があるかと思いますので、その辺り良い仕組みが出来れば、またご紹介します。もし、そのあたりいい案がある方教えていただけると泣いて喜びます。ソースは後日あげたいと思います。
まとめ
Alert Logicはホントにいいサービスです。日本語に対応していない部分や、Trend Micro Deep Securityとの住み分けもありますが、ホントにいいサービスです。(大事なことなのでもう一度)
今回のご紹介したサービス以外に、PCI-DSS認証取得に有用なアプローチを行う機能や、Cloud InsightといったAWS内の環境の脆弱性診断やリスク分析に対応したサービスもあります。是非、Alert Logicに興味をもたれましたら、かるーく飲みながらでもお話できればと思ってます。是非、勝男でお待ちしております!
サーバーワークス Advent Calender 2016
今年の有馬記念は12/25 そう、クリスマスなのです。明日は、SWXのトウショウボーイ?こと@minom3の有馬記念での男気溢れる掛け予想が展開されるハズ! (Questetraなどの話かもしれませんがw ) 期待をしてバトンを渡します!!
でわっ!