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
760
Other Decks in Technology
See All in Technology
マルチモーダル / AI Agent / LLMOps 3つの技術トレンドで理解するLLMの今後の展望
hirosatogamo
37
12k
Terraform Stacks入門 #HashiTalks
msato
0
360
Storybook との上手な向き合い方を考える
re_taro
2
300
SRE×AIOpsを始めよう!GuardDutyによるお手軽脅威検出
amixedcolor
0
190
CDCL による厳密解法を採用した MILP ソルバー
imai448
3
170
『Firebase Dynamic Links終了に備える』 FlutterアプリでのAdjust導入とDeeplink最適化
techiro
0
150
初心者向けAWS Securityの勉強会mini Security-JAWSを9ヶ月ぐらい実施してきての近況
cmusudakeisuke
0
130
Lambda10周年!Lambdaは何をもたらしたか
smt7174
2
110
B2B SaaSから見た最近のC#/.NETの進化
sansantech
PRO
0
910
SREが投資するAIOps ~ペアーズにおけるLLM for Developerへの取り組み~
takumiogawa
1
460
心が動くエンジニアリング ── 私が夢中になる理由
16bitidol
0
100
Platform Engineering for Software Developers and Architects
syntasso
1
520
Featured
See All Featured
The Pragmatic Product Professional
lauravandoore
31
6.3k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
246
1.3M
How to train your dragon (web standard)
notwaldorf
88
5.7k
Fantastic passwords and where to find them - at NoRuKo
philnash
50
2.9k
Fashionably flexible responsive web design (full day workshop)
malarkey
405
65k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
8
900
10 Git Anti Patterns You Should be Aware of
lemiorhan
655
59k
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
[RailsConf 2023] Rails as a piece of cake
palkan
52
4.9k
Building Applications with DynamoDB
mza
90
6.1k
For a Future-Friendly Web
brad_frost
175
9.4k
Embracing the Ebb and Flow
colly
84
4.5k
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