Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
WordPress Hardening CheetSheet 8/20
Search
tsb
August 22, 2015
Technology
1
1.1k
WordPress Hardening CheetSheet 8/20
2015/8/20 WASNight 2015 Summer で発表したスライド資料です。
tsb
August 22, 2015
Tweet
Share
More Decks by tsb
See All by tsb
20151206_AWS+Security
tsb
0
780
Other Decks in Technology
See All in Technology
室長と気ままに学ぶマイクロソフトのビジネスアプリケーションとビジネスプロセス
ryoheig0405
0
370
抽象化をするということ - 具体と抽象の往復を身につける / Abstraction and concretization
soudai
21
8.4k
運用しているアプリケーションのDBのリプレイスをやってみた
miura55
1
740
ビジネスモデリング道場 目的と背景
masuda220
PRO
9
560
Platform Engineeringは自由のめまい
nwiizo
4
2.1k
あれは良かった、あれは苦労したB2B2C型SaaSの新規開発におけるCloud Spanner
hirohito1108
2
640
Raycast AI APIを使ってちょっと便利な拡張機能を作ってみた / created-a-handy-extension-using-the-raycast-ai-api
kawamataryo
0
100
(機械学習システムでも) SLO から始める信頼性構築 - ゆる SRE#9 2025/02/21
daigo0927
0
150
クラウドサービス事業者におけるOSS
tagomoris
2
870
オブザーバビリティの観点でみるAWS / AWS from observability perspective
ymotongpoo
8
1.5k
2.5Dモデルのすべて
yu4u
2
880
なぜ私は自分が使わないサービスを作るのか? / Why would I create a service that I would not use?
aiandrox
0
770
Featured
See All Featured
Done Done
chrislema
182
16k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
33
2.1k
A Modern Web Designer's Workflow
chriscoyier
693
190k
Site-Speed That Sticks
csswizardry
4
380
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
7k
Designing for Performance
lara
604
68k
Unsuck your backbone
ammeep
669
57k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
59k
The World Runs on Bad Software
bkeepers
PRO
67
11k
Intergalactic Javascript Robots from Outer Space
tanoku
270
27k
Designing on Purpose - Digital PM Summit 2013
jponch
117
7.1k
Building Applications with DynamoDB
mza
93
6.2k
Transcript
WordPress Hardening CheetSheet Hardening 10 MarketPlace 2015.8.20 @ MP4
陽気なMP4がhardeningをまわす!
MP4 とは MarketPlace4 と呼ばれる4人組です。 Hardening 10 MarketPlace (2015/06/20-21沖縄開催)で 下記のように特殊任務をいただき参加いたしました。 競技に申し込んだものの、競技チームではなく
「専門家としてプロフェッショナルサービスを展開する」側として ご出場いただきたいという実行委員会からの悲報を頂きました。 → つまり、プロとしてお金をいただきチームをサポートする役割!
MP4 自己紹介 @TSB_KZK 鬼軍曹 @delphinz プロジェクトマ ネージャ @sasser_jp セキュリティ コンサルタント @YuhoKameda
脆弱性診断士
MP4 本日の発表内容について 今回、我々MP4でHardeningの経験を元に WordPress Hardening CheetSheet を作成いたしました。 本日は作成経緯からチートシートの内容紹介・活用方法まで 簡単にご紹介いたします。
WordPress Hardening CheetSheet 作成に至る背景 MP4のミッションは 6月20日、 競技当日に沖縄で知ることとなる
競技参加者のミッションをまとめるお仕事のはず・・・ 競技者作成のマニュアルをまとめればいいのか〜 やることは明確だね あれ?提出したのはたった 1チーム?! 脆弱性に特化した内容でチートシートには・・・
ならばつくってしまいましょう! コンセプト: 比較的易しめで、最低限実施すべきセキュリティ 対策を網羅したシートを作成する 対象者: ・WordPress初心者層 ・個人でブログやプラグインを利用しサイトを管理している人 ・中小企業でカスタマイズ・チューニングを実施できる人 ・Hardening参加者(が最初に実施すべき事項)
Summary コンテンツ抜粋: ・WordPressアップデート ・デフォルト設定を変更 ・管理画面のアクセス権限 ・不要なサービス起動の禁止 ・攻撃緩和策の実施 ・ログの管理 ・バックアップ ・個人情報の管理 等々
鋭意取りまとめ中。近日公開予定!
Hardening Projectの教訓について チートシートの一部内容や今後の活動を紹介 いたします。特にHardeningの経験を通じて学んだ 内容をピックアップ。 メニュー: ・WordPressアップデートについて (@sasser_jp) ・脆弱な環境の構築について (@delphinz)
・可用性について (@TSB_KZK)
WordPressアップデートについて (@sasser_jp)
WordPressアップデートについて ▼WordPressアップデート(チートシート抜粋) ・WordPressの最新版が無いか確認する。 - WordPressダッシュボードから最新版を確認する。 コアのアップデート プラグインの アップデート
Hardening 10 MarketPlaceでも・・・ 本体(コア)と3つのプラグインの 脆弱性が攻撃対象に・・・ 既知の脆弱性はアップデートすれば 対処できる
いきなり攻撃はやってくる まずはプラグインの一時停止を検討する 例:FancyBox:画像を拡大表示不可 wp−filemanger : FTPクライアントを利用 Hardening 10 MarketPlaceでは、今回より用意いただいた検証環境が あるので確認してから停止するとなおよし
プラグインの手動アップデートを実施 ①アップデートファイル のダウンロード # cp -pR /var/www/wordpress/wp-content/plugins/fancybox-for-wordpress/ /tmp/ # unzip
-d /var/www/wordpress/wp-content/plugins/ -o fancybox-for-wordpress.3.0.6.zip # diff -qr /tmp/fancybox-for-wordpress/ /var/www/wordpress/wp-content/plugins/fancybox-for-wordpress/ ②プラグインファイル上書き ③ アップデート完了 # 本体(コア)の手動アップグレードは下記参照 http://wpdocs.osdn.jp/WordPress_のアップグレード Hardening の環境ではサーバが直接インターネット上のファイ ルを取得できないので手動アップデートが必要
それでもアップデートできない場合 ▼別のリスク緩和策を検討する ・アクセスを制御 (IPアドレス制御、BASIC認証) ・ログの取得・監視(アクセスログ・エラーログ) ・バックアップを定期的に取得 ・WAF、セキュリティ系プラグインの利用 ・WPSCAN等で脆弱性診断を実施 ・機密情報を保持しない ・インシデント対応の事前準備
Hardeningでは、できる範囲で対策を実装すること
脆弱な環境の構築について (@delphinz)
そもそも検証環境をどうやって用意すべきか WordPressの脆弱性を検証するのって面倒じゃない? よろしいならば構築だ! 残暑お見舞いにhardeningで使われた WordPress脆弱性をつめこんだ 環境構築スクリプトを作成しました! githubにて公開(READMEはあとで書く!) https://github.com/delphinz/vulnerable-wordpress-playbook
WordPress脆弱性詰め合わせの内容 インストールされるパッケージ 項目 属性 バージョン リリース日 WordPress 本体 4.1 2014-12-19
welcart_default テーマ プラグインに準拠 - MailPoet newsletters プラグイン 2.6.6 2014-04-30. fancy box プラグイン 3.0.2 ? wp-file manager プラグイン 1.2 ? Welcart e-Commerce プラグイン 1.2.1 2012-10-5 amazon ami (micro) でおよそ3分前後で構築できます! ※ wpcli の制限で4.1より古いバージョンが入らなかった(汗) amazon ami@ec2 & centos6.6@vmware で検証済み!
環境構築に使用した要素技術 ansible Pythonで書かれたサーバ環境の構成管理ツール。 chefと違ってサーバへのインストール不要! 設定はYAMLファイルとして記述します。 Pythonがわからなくても使えます! http://www. ansible.com/home wpcli wordpresの操作をコマンドラインから行えるようにするツール
WordPress本体、plugin、theme のインストール・アップデートや投稿の管理も可能! http://wp-cli.org/ その他 「awscli」 もサーバの起動・破棄が即座に行えて便利!
今後の展望 盛り込めなかったコト - WordPress以外の脆弱性も入れたかった → shellshckやheartbleed 、サーバ設定不備etc - サンプルデータの投入 → 商品0件、初期画面がwelcartデフォルト画面・・・ -
クローラの実装 → 負荷をかける & チューニングを試してみる - 監視環境のインストール → 負荷を監視してみる ( Pandora FMS がイイよ!) ゆくゆくは 「ぼっちMINI hardening環境」 へ???
可用性について (@TSB_KZK)
可用性は Hardening の永遠の命題 そもそもサイトが停止したらビジネスに直結 他のECサイトが落ちているときはビジネスチャンス wikipedia にも書いてある
可用性を考える 負荷ひとつ取っても正常異常さまざま考えられる 古くはF5連打 DoS 不正パケット系 トラフィック埋める系 バルス! Yahoo砲とかWBS砲とか とにかく、自分にできることをやろう! 対処すべき攻撃
助けてーと叫ぶ
ぜひ聞きたい そのデフォルト設定で、 8時間戦えますか? デフォルト設定だと最大で 256clients x 128MB ≒ 32GB ※memory_limitに依存。デフォルト128MB?
$ cat /etc/httpd/conf/httpd.conf StartServers 8 MinSpareServers 5 MaxSpareServers 20 ServerLimit 256 MaxClients 256 MaxRequestsPerChild 4000
・具体的には何やればいいの? チューニング httpd.conf の設定 MaxRequestsPerChild: デフォルト4000 -> php なら数百以下がベター MaxClients:
メモリ量に応じて。デフォルト256は大きい Keepalive on かつ KeepAliveTimeout 短めに ※ロードバランサ利用時は要注意 キャッシュプラグインの導入 静的ファイルのキャッシュ / ブラウザキャッシュ フロントでの防御 主にiptables。DoS を防ぐ設定を。 “粘り強い”設定を!
まだ足りない? ・よろしい、ならば翼を授けよう APC(Alternative PHP Cache) リバースプロキシの導入(nginx, varnish, etc) mysqlチューニング LAMP
からの脱却。 nginx とか ・最後はお金の力で解決 スケールアップ バランシング CDN
まとめ ”習うより慣れよ” 最後に、まずは体感してください。 MINI Hardening という初心者向けハードニング 競技イベントを定期的に開催していますので、 是非ご検討ください。 ※ 次回は8/29(土)に開催。大阪開催予定も? http://minihardening.connpass.com/
ハッシュタグ #minihardening