SlideShare uma empresa Scribd logo
1 de 66
CMSのセキュリティ対策と
Movable Type の安全な運用方法について
2016年11月2日
シックス・アパート株式会社
長内毅志
自己紹介
–長内 毅志 (おさない たけし)
–2011年~ Movable Typeプロダクトマネージャー
–2014年~ ディベロッパーリレーションマネージャー
エバンジェリスト
アジェンダ
•CMSのセキュリティと攻撃の実際
•Movable Type の安全な構築
•クラウド環境構築のポイント
•Movable Type の最新情報とラインアップ
•コミュニティ
CMSのセキュリティと攻撃の実際
データ出典:JPCERT/CC インシデント報告対応レポート
グラフ:http://www.nca.gr.jp/2013/web201303/
ガンブラー
http://www.ipa.go.jp/security/txt/2013/07outline.html
ウェブサイトに改ざんでよく使われる手法
http://www.ipa.go.jp/security/txt/2013/07outline.html
•CMSの管理権限を奪取してウェブサイトを改ざん
•CMSの公開ディレクトリに任意のファイルをアップロ
ードしてウェブサイトを改ざん
CMSに関するハッキングの傾向
•20%はCMSのコア部分にある脆弱性への攻撃、80%
はプラグインなど周辺プログラムの脆弱性を狙った
攻撃
BSI「Content Management Syttem」より
https://www.bsi.bund.de/DE/Publikationen/Studien/CMS/Studie_CMS.ht
ml
Via http://phxsac.com/wp-content/uploads/2013/06/CMS-Hacking.pdf
もっとも多いパターン
•使用されているCMSを識別して攻撃
http://phxsac.com/wp-content/uploads/2013/06/CMS-Hacking.pdf
コード内の識別情報
• オープンソースCMSが脆弱なわけではない
• 活発なプロジェクトは固く作らており、パッチの供給も早い
• MTも同様、セキュリティ対応は早い
• FingerPrint(指紋)が紛れ込むことが多いことが問題
• 管理画面のURL特定=>攻撃につながる
ブルートフォースアタック(総当り攻撃)
イラスト:「2014年版 情報セキュリティ10大脅威」より
http://www.ipa.go.jp/security/vuln/10threats2014.html
ブルートフォースの例
[30/Aug/2014:22:09:48 +0900] "POST /wp-login.php HTTP/1.0" 200 5529 "-" "-"
[30/Aug/2014:22:09:49 +0900] "POST /wp-login.php HTTP/1.0" 200 5529 "-" "-"
[30/Aug/2014:22:09:50 +0900] "POST /wp-login.php HTTP/1.0" 200 5529 "-" "-"
[30/Aug/2014:22:09:53 +0900] "POST /mt.cgi HTTP/1.0" 200 5529 "-" "-"
[30/Aug/2014:22:09:54 +0900] "POST /mt.cgi HTTP/1.0" 200 5529 "-" "-"
[30/Aug/2014:22:09:55 +0900] "POST /mt.cgi HTTP/1.0" 200 5529 "-" "-"
[30/Aug/2014:22:09:56 +0900] "POST /mt.cgi HTTP/1.0" 200 5529 "-" "-"
[30/Aug/2014:22:09:58 +0900] "POST /mt.cgi HTTP/1.0" 200 5529 "-" "-"
ファイルアップロード攻撃(バックドア)
イラスト:「2014年版 情報セキュリティ10大脅威」より
http://www.ipa.go.jp/security/vuln/10threats2014.html
その他
•SQLインジェクション
•CSRF
•XSS
–主にソフトウェアの脆弱性を付くもの
CMSをセキュアに保つために
•ジェネレーター情報はできる限り消去
•管理画面は特定させない
•ステージング構成はセキュリティ的に強い
–構築・運用の手間は考慮の必要あり
•パッケージやプラグインは常に最新の状態にアップ
デート
Movable Type の安全な運用
Movable Type の安全な運用のために
•Movable Type を安全に運用するためのポイント
最新版を使う
•最新版を使う
管理画面にBasic認証をかける
•管理画面にBasic認証をかける
CGIスクリプトの名称を変える
•環境変数の設定で変更可能
–AdminScript
•管理プログラムの CGI スクリプト名を設定します
–UpgradeScript
•アップグレードスクリプトを設定します
使わないCGIスクリプトの権限を変える
•使わないCGIスクリプトの権限を変える
–MTのコメント機能を利用していない
•mt-comments.cgi の実行権限を無くす
–トラックバック機能を利用していない
•mt-tb.cgi の実行権限を無くす
例
–Data API 機能を利用していない
•mt-data-api.cgi の実行権限を無くす
–ログフィード機能を利用していない
•mt-feed.cgi の実行権限を無くす
–公開サイトで MTの検索機能を利用していない
•mt-search.cgi, mt-ftsearch.cgi の実行権限を無くす
パスワードの強度を上げる
文字種の数 4桁 6桁 8桁
10種
(数字のみ)
1万 100万 1億
26種
(英小文字)
約46万 約3億 約2千億
62種
(英数字)
約1500万 約570億 約220兆
94種
(英数記号)
約7800万 約6900億 約6100兆
「Web担当者フォーラム」より
http://web-
tan.forum.impressrd.jp/e/2014/05/09/17197/page%3D0,6
ロックアウト設定をする
ジェネレーター情報の消去
アップロードファイルの制限設定
•AssetFileExtensions
–アップロードできるファイルの種類を制限
•DeniedAssetFileExtensions
–アップロードできないファイルを設定
CMSサーバーと公開サーバーの分離
•Movable Typeセキュリティ対策ガイド
• http://www.movabletype.jp/guide/movable-type-security-guide.html
ここまでのまとめ
•常に最新版へアップデートすることが改善防止につ
ながる
•Movable Type の設定を調整することで、さらに安全
性は高まる
クラウド上でCMSを構築・運用する際のポ
イント
この章について
•一般的なクラウドサービスについて言及
(Microsoft Azure、AWS)
(PowerCMS クラウド、Movable Type クラウド版など、クラウド基盤
を利用したCMSサービスは「クラウドCMSサービス」と称します)
クラウド上でのCMS構築
•クラウド+CMS
=> Virtual Machine、DB、データストレージが中心とな
る
•クラウドの特性を理解して利用が吉
クラウドにデータを預けるのは心配?
•10億円を保管するなら自宅? 銀行?
•銀行なみのセキュリティ?
クラウド事業者のセキュリティレベルは高い
•Azureなら
–国際規格 (ISO 27001、HIPAA、FedRAMP、SOC 1/2)
–英国 (G-Cloud)
–オーストラリア (I-RAP)
–シンガポール (MTCS)
出典: https://azure.microsoft.com/ja-jp/support/trust-center/compliance/
Azure 仮想マシンのダウンタイム
•Azure 仮想マシンの稼働率 99.9996%
–40.07分のダウンタイム
画像及びデータはCloudSquare (https://cloudharmony.com/cloudsquare)
via “Publickey” (http://www.publickey1.jp/) より
AWSのダウンタイム
•AWS EC2の稼働率 99.9992%
–2回の障害 16.88分のダウンタイム
画像及びデータはCloudSquare (https://cloudharmony.com/cloudsquare)
via “Publickey” (http://www.publickey1.jp/) より
肝は「構成」
•クラウドのメリットは「構成が柔軟」なこと
–冗長構成 (仮想マシンの複数構成)
–Geoレプリケーション (異なる地域へのデータ保全)
–ディザスタ・リカバリ
•データ保全、システムの可用性
クラウドのセキュリティ
•不必要なポートは開放しない
–(クラウドCMSサービスを利用する場合は特に意識する必要はな
い)
•仮想ネットワークサービスを活用して設定を
–Azure ならVirtual Network
–AWSならVPC
Microsoft Azureでのセキュリティ設定
AWSでのセキュリティ設定
セキュリティチェックは要注意
•各種セキュリティチェック
–ペネトレーションテスト
–ポートスキャン
•そのままでは攻撃とみなされる
クラウドのセキュリティチェックは申請が必要
•Microsoft Azure での侵入テスト申請
–http://blogs.msdn.com/b/dsazurejp/archive/2014/10/15/micro
soft-azure-penetration-test-request.aspx
•侵入テスト AWS セキュリティセンター
–https://aws.amazon.com/jp/security/penetration-testing/
セキュリティチェックポリシーは事前にすり合わせを
•事前に確認と手続きを
•サーバー管理担当者やシステム構築担当者との手
続きが必要
•クラウドCMSサービスの場合、サービス提供者へ問
い合わせを
インフラへの理解は運用・構築の工数を削減
•運用のトラブルを未然に防げる
–Azureなら
•Virtual Machine
•Web Apps
•Storage
–専門家になる必要はない
•サービス事業者へ聞けば良い
クラウドサービス型CMSの構築は仕様に準じて
•クラウドサービス型CMSの場合、サーバーのルート
権限は使えない
•仕様内の構築が望ましい
–プログラム的に負荷の高いカスタマイズは運用継続性の足かせ
になるケースがある
•サポートをうまく活用する
Movable Type を利用したクラウドCMSサービス
•PowerCMS クラウド
–Movable Type + PowerCMSのクラウドサービス
–高機能、エンタープライズ
•Movable Type クラウド版
–Movable Type のクラウドサービス
–ブログ、中小から大規模サイトまで
ここまでのまとめ
•クラウドの特性を理解したシステム構築が肝
•セキュリティチェックは事前のすり合わせを
•クラウド基盤の理解はスムーズな運用に繋がる
•クラウドCMSサービスを利用する際は無理なカスタマ
イズをしない
Movable Type ラインアップ
最新バージョン
Movable Type 6.3.2
パフォーマンス改善
MT6 からの新機能「Data API」
•REST 形式のAPI
•Movable Type のデータを読み込み・書き込み・保存
可能
•JSON形式でデータ取得
Movable Type のラインアップ
•Movable Type
•Movable Type クラウド
•MovableType.net
Movable Type クラウド版
•クラウド環境でMTを提供
•サーバー保守、メンテナンスはシックス・アパートが
担当
•月額5000円~
サーバー配信機能
•外部サーバーへhtml送信
•ステージング構成が簡単
バックアップ機能
•1日に1度データをバックアップ
•いつでも復旧可能
MovableType.net
•Webサービス型CMS
•カスタムフィールドが利用可能
•GitHub上のテーマと連携可能
•低価格(2500円/月~)
自由度低
(ウェブサービス型)
高
(ソフトウェア型)
手軽さ
複
雑
容
易
MT on AWS
•AWS marketplace で提供
•microインスタンスは無料(AWS使用料別)
MTコミュニティとイベント
全国に広がるMTユーザーグループ
• MT蝦夷
• MT東北
• MT東京
• MTなごや
• MT愛媛
• MT鹿児島
• MT関西
• MT広島
• MT福岡
• MT長野
• MT ∗/ NIIGATA(新潟)
• MT SAGA
• MT熊本
MTDDC Meetup TOKYO 2015
200人以上が参加
MTDDC Meetup TOKTO 2016 開催
65
11月12日(土)お台場で開催!
ご清聴ありがとうございました

Mais conteúdo relacionado

Semelhante a 20161102 cms security

20140824 mt tokyo_slideshare
20140824 mt tokyo_slideshare20140824 mt tokyo_slideshare
20140824 mt tokyo_slideshare
Six Apart
 
20150209 movable type seminar
20150209 movable type seminar20150209 movable type seminar
20150209 movable type seminar
Six Apart
 
Solution semniar vs2013_multi_device-20140310
Solution semniar vs2013_multi_device-20140310Solution semniar vs2013_multi_device-20140310
Solution semniar vs2013_multi_device-20140310
Shotaro Suzuki
 
CMS四天王への攻撃デモを通じて、WordPressの効果的な防御法を学ぼう
CMS四天王への攻撃デモを通じて、WordPressの効果的な防御法を学ぼうCMS四天王への攻撃デモを通じて、WordPressの効果的な防御法を学ぼう
CMS四天王への攻撃デモを通じて、WordPressの効果的な防御法を学ぼう
Hiroshi Tokumaru
 
2013年度enPiT特設講義-iisec-2013-11-09-セキュアシステムのインターネットと SNS上での構築とその課題
2013年度enPiT特設講義-iisec-2013-11-09-セキュアシステムのインターネットとSNS上での構築とその課題2013年度enPiT特設講義-iisec-2013-11-09-セキュアシステムのインターネットとSNS上での構築とその課題
2013年度enPiT特設講義-iisec-2013-11-09-セキュアシステムのインターネットと SNS上での構築とその課題
Ruo Ando
 
20130129 movable type_seminar
20130129 movable type_seminar20130129 movable type_seminar
20130129 movable type_seminar
Six Apart
 

Semelhante a 20161102 cms security (20)

20140824 mt tokyo_slideshare
20140824 mt tokyo_slideshare20140824 mt tokyo_slideshare
20140824 mt tokyo_slideshare
 
20150209 movable type seminar
20150209 movable type seminar20150209 movable type seminar
20150209 movable type seminar
 
ディレクターからみたMovable Type + PowerCMSの優位性
ディレクターからみたMovable Type + PowerCMSの優位性ディレクターからみたMovable Type + PowerCMSの優位性
ディレクターからみたMovable Type + PowerCMSの優位性
 
2017年のセキュリティ 傾向と対策講座
2017年のセキュリティ 傾向と対策講座2017年のセキュリティ 傾向と対策講座
2017年のセキュリティ 傾向と対策講座
 
「最近のwebアプリケーションの脆弱性やそれを悪用する攻撃の動向」OWASP Kansai
「最近のwebアプリケーションの脆弱性やそれを悪用する攻撃の動向」OWASP Kansai「最近のwebアプリケーションの脆弱性やそれを悪用する攻撃の動向」OWASP Kansai
「最近のwebアプリケーションの脆弱性やそれを悪用する攻撃の動向」OWASP Kansai
 
Data API ことはじめ
Data API ことはじめData API ことはじめ
Data API ことはじめ
 
Solution semniar vs2013_multi_device-20140310
Solution semniar vs2013_multi_device-20140310Solution semniar vs2013_multi_device-20140310
Solution semniar vs2013_multi_device-20140310
 
CMS四天王への攻撃デモを通じて、WordPressの効果的な防御法を学ぼう
CMS四天王への攻撃デモを通じて、WordPressの効果的な防御法を学ぼうCMS四天王への攻撃デモを通じて、WordPressの効果的な防御法を学ぼう
CMS四天王への攻撃デモを通じて、WordPressの効果的な防御法を学ぼう
 
安全なWebアプリ構築1回
安全なWebアプリ構築1回安全なWebアプリ構築1回
安全なWebアプリ構築1回
 
2013年度enPiT特設講義-iisec-2013-11-09-セキュアシステムのインターネットと SNS上での構築とその課題
2013年度enPiT特設講義-iisec-2013-11-09-セキュアシステムのインターネットとSNS上での構築とその課題2013年度enPiT特設講義-iisec-2013-11-09-セキュアシステムのインターネットとSNS上での構築とその課題
2013年度enPiT特設講義-iisec-2013-11-09-セキュアシステムのインターネットと SNS上での構築とその課題
 
20160717 csc sec_bd
20160717 csc sec_bd20160717 csc sec_bd
20160717 csc sec_bd
 
Signature & Model Hybrid Platform
Signature & Model Hybrid PlatformSignature & Model Hybrid Platform
Signature & Model Hybrid Platform
 
細工された製品が突然牙をむく「サプライチェーン攻撃」の脅威
細工された製品が突然牙をむく「サプライチェーン攻撃」の脅威細工された製品が突然牙をむく「サプライチェーン攻撃」の脅威
細工された製品が突然牙をむく「サプライチェーン攻撃」の脅威
 
デブサミ2013【15-C-8】セキュリティ要求仕様モデルプランで日本は変わるか?(百瀬昌幸氏)
デブサミ2013【15-C-8】セキュリティ要求仕様モデルプランで日本は変わるか?(百瀬昌幸氏)デブサミ2013【15-C-8】セキュリティ要求仕様モデルプランで日本は変わるか?(百瀬昌幸氏)
デブサミ2013【15-C-8】セキュリティ要求仕様モデルプランで日本は変わるか?(百瀬昌幸氏)
 
Browser andsecurity2015
Browser andsecurity2015Browser andsecurity2015
Browser andsecurity2015
 
AWS re:Invent Security re:Cap 2018 ( Deep Security x Security Hub )
AWS re:Invent Security re:Cap 2018 ( Deep Security x Security Hub )AWS re:Invent Security re:Cap 2018 ( Deep Security x Security Hub )
AWS re:Invent Security re:Cap 2018 ( Deep Security x Security Hub )
 
MTDDC Meetup NAGOYA 2014 Keynote
MTDDC Meetup NAGOYA 2014 KeynoteMTDDC Meetup NAGOYA 2014 Keynote
MTDDC Meetup NAGOYA 2014 Keynote
 
20130129 movable type_seminar
20130129 movable type_seminar20130129 movable type_seminar
20130129 movable type_seminar
 
20180224 azure securitycenter
20180224 azure securitycenter20180224 azure securitycenter
20180224 azure securitycenter
 
Agile and Modeling in embedded systems safety and security
Agile and Modeling in embedded systems safety and securityAgile and Modeling in embedded systems safety and security
Agile and Modeling in embedded systems safety and security
 

Mais de Six Apart

Mais de Six Apart (20)

20180723 okubo mtc_loud_handson
20180723 okubo mtc_loud_handson20180723 okubo mtc_loud_handson
20180723 okubo mtc_loud_handson
 
20180709 pronet study
20180709 pronet study20180709 pronet study
20180709 pronet study
 
20180709 aws handson_public
20180709 aws handson_public20180709 aws handson_public
20180709 aws handson_public
 
20180702 okubo mtc_loud_handson
20180702 okubo mtc_loud_handson20180702 okubo mtc_loud_handson
20180702 okubo mtc_loud_handson
 
20180625 dev relenglish_public
20180625 dev relenglish_public20180625 dev relenglish_public
20180625 dev relenglish_public
 
20180628 sappor alibaba_event
20180628 sappor alibaba_event20180628 sappor alibaba_event
20180628 sappor alibaba_event
 
20180411 monaca ug_lt
20180411 monaca ug_lt20180411 monaca ug_lt
20180411 monaca ug_lt
 
20180326 mt azure_handson_translation
20180326 mt azure_handson_translation20180326 mt azure_handson_translation
20180326 mt azure_handson_translation
 
20180228 jazug
20180228 jazug20180228 jazug
20180228 jazug
 
20180228 aws handson_public
20180228 aws handson_public20180228 aws handson_public
20180228 aws handson_public
 
20180214 okubo mt_cloud_handson
20180214 okubo mt_cloud_handson20180214 okubo mt_cloud_handson
20180214 okubo mt_cloud_handson
 
20171023 mt azure_handson
20171023 mt azure_handson20171023 mt azure_handson
20171023 mt azure_handson
 
20170922 cms security_public
20170922 cms  security_public20170922 cms  security_public
20170922 cms security_public
 
20170926 aws handson_public
20170926 aws handson_public20170926 aws handson_public
20170926 aws handson_public
 
20170921 smartphone apli_seminar_public
20170921 smartphone apli_seminar_public20170921 smartphone apli_seminar_public
20170921 smartphone apli_seminar_public
 
20170905 dev rellt_public
20170905 dev rellt_public20170905 dev rellt_public
20170905 dev rellt_public
 
20170801 monaca ug_lt_public
20170801 monaca ug_lt_public20170801 monaca ug_lt_public
20170801 monaca ug_lt_public
 
20170713 smartphone apli_seminar_public
20170713 smartphone apli_seminar_public20170713 smartphone apli_seminar_public
20170713 smartphone apli_seminar_public
 
20170624 cms idobata_kaigi
20170624 cms idobata_kaigi20170624 cms idobata_kaigi
20170624 cms idobata_kaigi
 
20170609 dev rel_meetup
20170609 dev rel_meetup20170609 dev rel_meetup
20170609 dev rel_meetup
 

20161102 cms security