jaws-ug三都物語 2013 春 よりセキュアなaws環境 構築事例 ~pci dss対応~
DESCRIPTION
2013.3.9に行われたJAWS-UG三都物語で発表した資料です。 PCI DSS対応事例紹介のロングバージョン。CDP実践編VPC/CloudFormationからの事例紹介になってます。TRANSCRIPT
JAWS-UG三都物語 2013 春
よりセキュアなAWS環境構築事例
~PCI DSS対応~
後藤 和貴@kaz_goto
facebook.com/kaz.goto
自己紹介プロフィール
アイレット株式会社 cloudpack エバンジェリストJAWS-UG 副代表
出没するJAWS-UG: 東京、大阪、福岡、宮崎、 浜松、静岡、鹿児島、沖縄、名古屋、札幌、 北陸、熊本、長崎、神戸、岩手
受賞歴: AWS SAMURAI 2012/2013!! (個人) 2011年度パートナー特別賞(会社)
好きなAWSサービス: プレミアムサポート
好きなCDP:
@kaz_gotofacebook.com/kaz.gotoslideshare.net/kaz.goto
勉強会&懇親会
6/2(土)~6/3(日) JAWS-UG大阪
6/6(水)~6/7(木) JAWS-UG神戸
9/7(金)~9/10(月) 明星和楽参加
10/6(土)~10/7(日) JAWS-UG名古屋
10/16(火)~10/21(日) Cloud Days Fukuoka 2012、JAWS-UG鹿児島
11/11(日)~11/13(火) JAWS-UG札幌
11/17(土)~11/19(月) JAWS-UG沖縄
11/26(月)~12/2(日) AWS re:Invent 2012+Amazon本社訪問
12/11(火)~12/14(金) UP 2012
12/15(土)~12/17日(月) JAWS-UG大阪+営業
1/20(金)~1/21(土) JAWS-UG北陸
2/8(水)~2/11(土) JAWS-UG福岡、JAWS-UG熊本
2/14(火)~2/15(水) JAWS-UG札幌
2/18(土)~2/19(日) JAWS-UG大阪
2/21(火)~2/22(水) JAWS-UG仙台
3/7(水)~3/9(金) Cloud Days Osaka 2012
3/30(金)~3/31(土) JAWS-UG長崎
4/17(火)~4/22(日) AWS Summit 2012 NYC
4/25(水)~4/29(日) JAWS-UG沖縄
5/16(水)~5/17(木) JAWS-UG札幌
JAWS-UG計16回 / 出張合計32回83日間
アジェンダcloudpack紹介
CDP実践 VPC/CloudFormation
PCI DSS準拠事例
プレゼント(謎)
AWSの足りない部分を補完した月額費用固定型フルマネージドホスティング
24時間365日サーバー運用・保守
電話/メールによるサポート
初期費用なし(移行作業含む)
月額5万円からのスタート
日本円で請求書発行
フルマネージドサービス/リソース監視ディスク使用量、メモリ使用量、プロセス数、Webサーバー・DBサーバー死活...
バックアップ/リストアEBSスナップショットを利用した二世代(過去二日分)バックアップ
アクセス制御(ファイアーウォール)適切なセキュリティグループを設定、OS・ミドルウェアレベルでさらに細かな設定も対応可能
定額課金・請求書払い
従量課金では予算計画が立てられない
クレジットカードでUSドル決済では利用料の予測が難しい
Amazon Web Servicesでは...
月額固定+日本円請求書発行
バースト保障
キャンペーンなど急激なアクセス増加へ合わせてインフラ準備するのは不可能
いつあるかわからないピークのために予め準備できない
追加料金無しでスケールアウト(7インスタンス日まで)
続きはウェブでcloudpack クラウドパック
まずVPCの話
ほぼ反応なし...
VPC関連アップデート1/11 【AWS発表】 クラウドに専用線接続できるAWS Direct Connectが東京リージョンでも利用可能に
1/24 【AWS発表】 Virtual Private Cloudの中でRelational Database Serviceが利用可能に
2/6 【AWS発表】 Elastic MapReduceの新機能:メトリクス、Hadoopのアップデート、VPC、そしてクラスタコンピュートのサポート
4/26 【AWS発表】 Virtual Private Cloudの中でクラスターコンピュートインスタンスが利用可能に
5/18 【AWS発表】Amazon RDSのリードレプリカがVPC内でも作成可能に
6/12 【AWS発表】プライベートIPを負荷分散できるELBが登場!
7/7 【AWS発表】VPC内の単一EC2インスタンスに複数のIPアドレス関連づけることが可能に!
8/17 Additional RDS for Oracle Features - VPC Support, Oracle Application Express (APEX) and Oracle XML DB
8/15 【AWS発表】AWS Direct Connect - 新しいロケーションとコンソールサポート
9/14 【AWS発表】Amazon RDS for SQL Server が VPC内で利用可能に
9/17 【AWS発表】Amazon VPCに2つの新機能が追加 - BGPをサポートしないデバイスでもVPCに接続可能に
10/19 【AWS発表】Virtual Private Cloud (VPC) 内でEC2のマイクロインスタンスが起動可能に!
11/1 【AWS発表】 AWS Elastic Beanstalk - Rubyのサポート開始、さらにVPC統合も可能に
新規のお客さんはかなりの確率でVPC利用
設計が細かく毎回手作業は危険
かつ毎回同じ設計をしている
たとえば...
VPCネットワーク構成
サブネット作成指針
ルーティング
• Public - インターネットとInbound/Outbound可
• Protected - インターネットへNAT経由でOutboundのみ可
• Private - インターネットへのアクセス不可(社内へは可)
IPアドレス固定・任意
• 自動でIPが付与されるELB/RDS/Auto Scaling利用とわけるため
セキュリティグループ接続用途別に作成
Functional Firewallパターン
• EC2標準• データベース(MySQL/Oracle)Operational Firewallパターン
• cloudpackからアクセス(監視・メンテ)• 踏み台へのアクセス• NATへのアクセス• 管理画面へのアクセス
Functional Firewallパターン
ルールをグループ化し、グループ単位での設定や各サーバーへの適用を行うことができるものもある。このグループの単位を機能ごと(WebやDBなど)にすることで、機能に関する設定をグループ内で一元管理できるようになる。
Operational Firewallパターン
ルールをグループ化し、グループ単位で設定したりサーバーに適用したりできる。このグループという単位をシステムにアクセスできる組織などにすることで、非機能要件的なアクセス制限に関する設定を使いやすく分割/一元管理することができる。
メンテナンス用NATサーバーメンテナンスのときだけNATを利用して外部へアクセス
例: yumアップデート
OnDemand NATパターン
OnDemand NATパターン
NATを仮想サーバーで実現し、OSパッケージのアップデートなどのメンテンス時だけ起動するようにしておけば、コスト効率がよくなる。APIを利用してNAT(仮想サーバー)の起動と停止を自動化することも可能である。
踏み台サーバーサーバーメンテナンス時のアクセス経路
定型化できる部分が多い
これらすべて自動化
これらすべて自動化=
CloudFormation
https://github.com/suz-lab/suz-lab-centos-ami/tree/master/share/cloudfromation
カスタマイズしたい場合もOK
くわしくはこちらhttp://blog.suz-lab.com/2012/12/cdp-templates.html
メリットテンプレートを利用して、必要なときに起動する(構成を作る)ことが簡単にできる
CloudFormationなら面倒な構成を一瞬で構築可能=作業時間短縮
すでにテスト済みの環境を構築するのでフルテストは不要=信頼性が高い
設計そのものがテンプレートされることで、再利用が可能で、かつ設計上のミスも発生しにくくなる
PCI DSS対応の話
PCI DSSとはクレジットカードブランド5社により策定された、クレジット業界のセキュリティ基準クレジットカード会社は加盟店に対し要求を満たさない場合にペナルティを科したり保険料率に差をつけたりしている
米国では「PCI DSSの重要部分に適合しない場合、刑事罰を受ける」と法制化している州も
データの漏洩などが発生した場合にPCI DSS運用を正しく行っていたことを30日以内に証明できると、金融機関からの基礎を回避することができると規定している州も
12の要件から細かくドリルダウンした実装レベルでの明確な規定がされているクレジット業界以外でのグローバルなセキュリティ基準として対応するケースが多い
業務委託先も含めて対応が必要
http://coiney.com/
System ChallengePCI-DSS compliant on the cloud?Mostly, PCI-DSS on own server.
Differences between cloud vs. own server.
AWS Management Console logging?
DMZ, WAF implementation?
NTP server?
Antivirus software?
System auto-lockout?
Log, Log, and LOG! i.e. Firewall log? File consistency? File monitoring?
Coiney社の資料より抜粋
クラウド上でPCI DSSを取ることができるのか?必要な対策を講じることができるのか?
cloudpack(に期待したこと)Leverage cloudpack knowledge
Discussion with PCI consultants
Establish the PCI-compliant environment on AWS
Coiney社の資料より抜粋
AWS上でのシステム構築ノウハウ提供PCI DSS準拠支援会社とコラボ
どう対応したのか
PCI DSS要件要件1: カード会員データを保護するために、ファイアウォールをインストールして構成を維持する
要件2: システムパスワードおよび他のセキュリティパラメータにベンダ提供のデフォルト値を使用しない
要件3: 保存されるカード会員データを保護する
要件4: オープンな公共ネットワーク経由でカード会員データを伝送する場合、暗号化する
要件5: アンチウィルスソフトウェアまたはプログラムを使用し、定期的に更新する
要件6: 安全性の高いシステムとアプリケーションを開発し、保守する
要件7: カード会員データへのアクセスを、業務上必要な範囲内に制限する
要件8: コンピュータにアクセスできる各ユーザに一意の ID を割り当てる
要件9: カード会員データへの物理アクセスを制限する
要件10: ネットワークリソースおよびカード会員データへのすべてのアクセスを追跡および監視する
要件11: セキュリティシステムおよびプロセスを定期的にテストする
要件12: すべての担当者の情報セキュリティポリシーを整備する
PCI DSS要件要件1: カード会員データを保護するために、ファイアウォールをインストールして構成を維持する
要件2: システムパスワードおよび他のセキュリティパラメータにベンダ提供のデフォルト値を使用しない
要件3: 保存されるカード会員データを保護する
要件4: オープンな公共ネットワーク経由でカード会員データを伝送する場合、暗号化する
要件5: アンチウィルスソフトウェアまたはプログラムを使用し、定期的に更新する
要件6: 安全性の高いシステムとアプリケーションを開発し、保守する
要件7: カード会員データへのアクセスを、業務上必要な範囲内に制限する
要件8: コンピュータにアクセスできる各ユーザに一意の ID を割り当てる
要件9: カード会員データへの物理アクセスを制限する
要件10: ネットワークリソースおよびカード会員データへのすべてのアクセスを追跡および監視する
要件11: セキュリティシステムおよびプロセスを定期的にテストする
要件12: すべての担当者の情報セキュリティポリシーを整備する
プロジェクト体制
•PCI DSS準拠⽀支援•QSA
•インフラ構築•PCI DSS準拠対策
•PCI DSSレベル1サービスプロバイダ
システム概念図
対応サマリFirewall設定
セキュリティソフトウェア導入
アカウント管理
アクセス記録・ログ集約管理
脆弱性対策
Firewall一旦すべてアクセス不可
必要な箇所を許可
サーバー毎の通信許可
個別のセキュリティグループ(サブネットは通信要件毎に分けている)
セキュリティソフトウェア導入Trend Micro Deep Security
IPS/IDS/改ざん検知/Firewall/WAF/ログ監視
ServerProtect
ウィルス対策(リアルタイムスキャン)
http://jp.trendmicro.com/jp/products/enterprise/tmds/pcidss/
アカウント管理サーバー毎ではなく個人毎のアカウント
OpenLDAP導入・権限管理
パスワード有効期限
90日
ロックアウト対応6回以上パスワードトライされたらロック
アクセス記録・ログ集約管理ログ管理
EC2インスタンス内に1週間分残す
fluentd経由でログサーバーへまとめ、S3へアーカイブ
[参考] FluentdでWeb Storage Archiveパターンhttp://blog.cloudpack.jp/2013/01/aws-‐‑‒news-‐‑‒cdp-‐‑‒web-‐‑‒storage-‐‑‒archive-‐‑‒fluentd.html
アクセス記録・ログ集約管理Management Consoleアクセス制限とログ記録
多要素認証に加えて誰が何をしたか記録が必須
プロキシ経由のみアクセス可
プロキシサーバー上でアクセスログ記録
[参考] Squid経由でAWSマネジメントコンソールにアクセスしてソースIP制限や認証やログ取得http://blog.cloudpack.jp/2013/02/aws-‐‑‒news-‐‑‒squid-‐‑‒aws-‐‑‒console-‐‑‒ip-‐‑‒log.html
脆弱性対策ミドルウェア最新化
Apacheはパッケージでは不可だったため、最新版ソースをコンパイル
• IPA(独立行政法人 情報処理推進機構)の定めるCVSS 4.0以上(レベルIII危険+レベルII警告)はすべて対策必須のため
Deep Security仮想パッチ
ソフトウェアのセキュリティパッチ提供前に脆弱性を保護
パッチ適用後は自動的に外れる
AWSはPCI DSSレベル1準拠レベル1サービスプロバイダとして認定
EC2/S3/EBS/VPC/RDS/ELB/IAMがPCI検証済み
cloudpack担当範囲
日経コンピュータ
AWS導入事例ページ
プレスリリース(PCFさんと提携リリース画面キャプチャ)
ワンストップでサービス提供
•PCI DSS準拠⽀支援•QSA
•インフラ構築•PCI DSS準拠対策
エンドユーザー
•PCI DSSレベル1サービスプロバイダ
PCI DSS準拠インフラ構築サービス
AWS上でPCI DSS対応するなら
最後に
今日会場に来た皆さんにプレゼント
PCI DSS Basic CloudFormationhttps://github.com/suz-lab/suz-lab-cloudformation/blob/master/pattern/suz-lab_0302_admin_firewall.json