Recommended
PDF
PPTX
AtCoder Beginner Contest 002 解説
PDF
PDF
Elasticsearch勉強会#44 20210624
PDF
MHA for MySQLとDeNAのオープンソースの話
PPTX
Spring Boot ユーザの方のための Quarkus 入門
PDF
AWS Black Belt Online Seminar 2018 Amazon DynamoDB Advanced Design Pattern
PPTX
Kaggle days tokyo jin zhan
PPTX
今だから!Amazon CloudFront 徹底活用
PDF
関西CVPRML勉強会2018 岡本大和 Unsupervised Feature Learning Via Non-Parametric Instanc...
PDF
Developer's summit 2021 [19-D-5]なぜ今、ローコードなのか
PDF
20201008 AWS独自設計推論チップInferentiaとInf1インスタンス
PDF
PDF
[DL輪読会]Relational inductive biases, deep learning, and graph networks
PDF
PDF
TECHTALK 20200923 Qlik Sense+Qlik NPrinting でセルフサービスBIから定型帳票の配信までをカバー
PDF
NextJS - Online Summit for Frontend Developers September 2020
PDF
20210216 AWS Black Belt Online Seminar AWS Database Migration Service
PPTX
PDF
PDF
Apache Kafka 0.11 の Exactly Once Semantics
PPTX
Kubernetes環境に対する性能試験(Kubernetes Novice Tokyo #2 発表資料)
PPTX
アナザーエデンPC版リリースへの道のり 〜WFSにおけるマルチプラットフォーム対応の取り組み〜
PPT
PDF
PDF
PPTX
Andsec Reversing on Mach-o File
PPTX
Seastar:高スループットなサーバアプリケーションの為の新しいフレームワーク
PDF
PPTX
WordPressでも意識したいアクセシビリティ 〜「優しいウェブサイト」作りをはじめよう〜
More Related Content
PDF
PPTX
AtCoder Beginner Contest 002 解説
PDF
PDF
Elasticsearch勉強会#44 20210624
PDF
MHA for MySQLとDeNAのオープンソースの話
PPTX
Spring Boot ユーザの方のための Quarkus 入門
PDF
AWS Black Belt Online Seminar 2018 Amazon DynamoDB Advanced Design Pattern
PPTX
Kaggle days tokyo jin zhan
What's hot
PPTX
今だから!Amazon CloudFront 徹底活用
PDF
関西CVPRML勉強会2018 岡本大和 Unsupervised Feature Learning Via Non-Parametric Instanc...
PDF
Developer's summit 2021 [19-D-5]なぜ今、ローコードなのか
PDF
20201008 AWS独自設計推論チップInferentiaとInf1インスタンス
PDF
PDF
[DL輪読会]Relational inductive biases, deep learning, and graph networks
PDF
PDF
TECHTALK 20200923 Qlik Sense+Qlik NPrinting でセルフサービスBIから定型帳票の配信までをカバー
PDF
NextJS - Online Summit for Frontend Developers September 2020
PDF
20210216 AWS Black Belt Online Seminar AWS Database Migration Service
PPTX
PDF
PDF
Apache Kafka 0.11 の Exactly Once Semantics
PPTX
Kubernetes環境に対する性能試験(Kubernetes Novice Tokyo #2 発表資料)
PPTX
アナザーエデンPC版リリースへの道のり 〜WFSにおけるマルチプラットフォーム対応の取り組み〜
PPT
PDF
PDF
PPTX
Andsec Reversing on Mach-o File
PPTX
Seastar:高スループットなサーバアプリケーションの為の新しいフレームワーク
Viewers also liked
PDF
PPTX
WordPressでも意識したいアクセシビリティ 〜「優しいウェブサイト」作りをはじめよう〜
PDF
WordCamp Tokyo2016itkaasan
PDF
CMSとしてのWordPress - WordPressで管理するランディングページ -
PDF
わぷー5周年 〜誕生から現在、未来〜 WordCamp Tokyo 2016ver
PDF
WordCamp Tokyo2016-WooCommerceのすすめ
PDF
Security, more important than ever!
PDF
レスポンシブデザイン前提のWordPressの表示速度高速化の考え方
PDF
PDF
ノンプログラマーのためのWordPressテーマ作成ステップアップ術
PPTX
PDF
PDF
より多くの人へ届けるために Webコンテンツで 「ちょっと」気をつけたいこと
PDF
超初心者向け・オンライン勉強会のススメ(WordCamp Tokyo 2016 LT スライド)
PDF
PDF
PDF
PDF
著名PHPアプリの脆弱性に学ぶセキュアコーディングの原則
PDF
Cloud OnAir #04 今話題の機械学習・GCP で何ができるのか?
PDF
【プレゼン】見やすいプレゼン資料の作り方【初心者用】
Similar to CMS四天王への攻撃デモを通じて、WordPressの効果的な防御法を学ぼう
PPTX
Webサイトをめぐるセキュリティ状況と効果的な防御方法(WordPress編)
PDF
PDF
WordBench YAMAGUCHI at Ube
PPTX
デバッガでWordPress本体やプラグインの脆弱性を追いかけてみよう
PPTX
脆弱性は誰のせい? PHP、MySQL、Joomla! の責任やいかに
PDF
PDF
WordCamp Kansai 2014 セキュリティ&バックアップ
PDF
PDF
web屋が教えるWordPressのセキュリティー対策
PPTX
WordPressとリスク管理 at 第42回 WordBench大阪
PPTX
PDF
PDF
PDF
安全なプラグインに必要なこと: 脆弱性届出状況に見る傾向と対策 (WordCampTokyo 2017)
PDF
PDF
PPTX
0325できる?どうやる!word pressのセキュリティ運用
More from Hiroshi Tokumaru
PPTX
SPAセキュリティ入門~PHP Conference Japan 2021
PPTX
PPTX
脅威分析の手法によりウェブサーバーにウイルス対策ソフトが必要かを検証する
PPT
PPTX
PPTX
introduction to unsafe deserialization part1
PPTX
SSRF対策としてAmazonから発表されたIMDSv2の効果と破り方
PPTX
XXE、SSRF、安全でないデシリアライゼーション入門
PPTX
ウェブ・セキュリティ基礎試験(徳丸基礎試験)の模擬試験問題
PPTX
オニギリペイのセキュリティ事故に学ぶ安全なサービスの構築法 (PHPカンファレンス2019)
PPTX
Railsエンジニアのためのウェブセキュリティ入門
PPTX
PPTX
PPTX
PPTX
PPTX
PPTX
PPTX
『例えば、PHPを避ける』以降PHPはどれだけ安全になったか
PPTX
PPTX
SecurityとValidationの奇妙な関係、あるいはDrupalはなぜValidationをしたがらないのか
CMS四天王への攻撃デモを通じて、WordPressの効果的な防御法を学ぼう 1. 2. 徳丸浩の自己紹介
• 経歴
– 1985年 京セラ株式会社入社
– 1995年 京セラコミュニケーションシステム株式会社(KCCS)に出向・転籍
– 2008年 KCCS退職、HASHコンサルティング株式会社設立
• 経験したこと
– 京セラ入社当時はCAD、計算幾何学、数値シミュレーションなどを担当
– その後、企業向けパッケージソフトの企画・開発・事業化を担当
– 1999年から、携帯電話向けインフラ、プラットフォームの企画・開発を担当
Webアプリケーションのセキュリティ問題に直面、研究、社内展開、寄稿などを開始
– 2004年にKCCS社内ベンチャーとしてWebアプリケーションセキュリティ事業を立ち上げ
• 現在
– HASHコンサルティング株式会社 代表 http://www.hash-c.co.jp/
– 京セラコミュニケーションシステム株式会社 技術顧問 http://www.kccs.co.jp/
– 独立行政法人情報処理推進機構 非常勤研究員 http://www.ipa.go.jp/security/
– 著書「体系的に学ぶ 安全なWebアプリケーションの作り方」(2011年3月)
「徳丸浩のWebセキュリティ教室 」(2015年10月)
– 技術士(情報工学部門)
3
3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. ケータイキット for Movable Type の脆弱性 (CVE-2016-1204) に関する注意喚起
各位
JPCERT-AT-2016-0019
JPCERT/CC
2016-04-26(新規)
2016-05-06(更新)
<<< JPCERT/CC Alert 2016-04-26 >>>
ケータイキット for Movable Type の脆弱性 (CVE-2016-1204) に関する注意喚起
https://www.jpcert.or.jp/at/2016/at160019.html
I. 概要
アイデアマンズ株式会社のケータイキット for Movable Type には、OS コマンドインジェクションの脆弱
性 (CVE-2016-1204) があります。この脆弱性を悪用された場合、当該製品が動作するサーバ上で任意の OS
コマンドを実行される可能性があります。
本脆弱性や影響の詳細については、以下を参照してください。
Japan Vulnerability Notes JVNVU#92116866
ケータイキット for Movable Type に OS コマンドインジェクションの脆弱性
https://jvn.jp/vu/JVNVU92116866/
なお、本脆弱性を悪用した攻撃活動が確認されているとの情報があります。
15https://www.jpcert.or.jp/at/2016/at160019.html より引用
15. 16. ケータイキット for Movable Typeは何が問題だったか?
• ImageMagickのconvertコマンドを用いて画像変換をしている
# わりとよくある
• convertコマンドのパラメータについて
– バリデーションを十分していない
– エスケープもしていない ← こちらが主原因
• ファイル名については、ファイルの存在チェックがあり、攻
撃は難しい
• convertに渡すパラメータはノーチェック
• OSコマンドインジェクションが可能
17
17. 18. 19. 20. 21. SQLインジェクションを試す
22
SELECT * FROM users WHERE name = 'user2' ;SELECT sleep(10) -- , '
user2' AND status = 1
キー名に追加のSQL文を書く
実際に呼び出されるSQL文
name[2 ;SELECT sleep(10) -- ]=&name[2]=user2
SELECT * FROM {users} WHERE name = :name_2 ;SELECT sleep(10) -- ,
:name_2 AND status = 1
プレースホルダの後ろに追加のSQL文が現れる
詳しくは http://blog.tokumaru.org/2014/10/drupal-sql-injection-cve-2014-3704.html 参照
22. 23. 24. 25. 26. 27. MySQLの仕様確認
$ mysql test -u root -p
mysql> CREATE TABLE test (test varchar(256))
DEFAULT CHARSET=utf8;
mysql> INSERT INTO test VALUES ('今日のお昼は吉野家にするよ');
mysql> INSERT INTO test VALUES ('今日のお昼は𠮷野家にするよ');
mysql> SELECT * FROM test;
+-----------------------------------------+
| test |
+-----------------------------------------+
| 今日のお昼は吉野家にするよ |
| 今日のお昼は |
+-----------------------------------------+
2 rows in set (0.00 sec)
28
𠮷野家から先がなくなる
UTF-8の4バイト文字を登録しようとすると、そ
の文字を含め、それ以降が切り詰められる!!
28. 29. 30. 「WordPress」の「WP Mobile Detector」プラグインに脆弱性
コンテンツ管理システム(CMS)「WordPress」のプラグインである「WP
Mobile Detector」にゼロデイ脆弱性が発見された。同プラグインは、モバ
イル機器の種類を検出し、最適なかたちでコンテンツを提供するためのも
のであり、1万を超えるウェブサイトで使用されているという。
この脆弱性はPlugin Vulnerabilitiesの研究者らによって発見され、米国時
間5月31日に同社ブログで発表された。
同社の研究者らが潜在的な問題に気付いたのは、WP Mobile Detectorを
インストールしていないCMSのドメインに向けて、同プラグインのファイ
ルであるblog/wp-content/plugins/wp-mobile-detector/resize.phpに対する
HEADリクエストが送られてきたのがきっかけだ。
研究者らによる詳細な調査の結果、これは「何者かがプラグインに存在
する脆弱性を攻撃する前に、同ファイルの存在をチェックしている」可能
性が高いという結論に達した。
セキュリティ企業Sucuriによると、このゼロデイ脆弱性自体は「容易に悪
用できる」ものだという。同脆弱性により、簡単なPOSTリクエストを送信
するだけで、悪意のあるファイルをウェブサイトにアップロードし、バッ
クドアとして機能させることが可能になる。
31http://japan.zdnet.com/article/35083773/ より引用
31. WP Mobile Detector Vulnerability Being Exploited in the Wild
For the last few days, we have noticed an increasing number of websites
infected without any outdated plugin or known vulnerability. In most
cases it was a porn spam infection. Our research team started to dig into
the issue and found that the common denominator across these
WordPress sites was the plugin WP Mobile Detector that had a 0-day
arbitrary file upload vulnerability disclosed on May 31st by the Plugin
Vulnerabilities team. The plugin has since been removed from the
WordPress repository and no patches are available.
The vulnerability is very easy to exploit, all the attacker needs to do is
send a request to resize.php or timthumb.php (yes, timthumb, in this
case it just includes resize.php), inside the plugin directory with the
backdoor URL. This vulnerability was publicly disclosed May 31st, but
according to our firewall logs, the attack has been going since May 27th.
The good news is that all our customers have been protected via the
Sucuri Firewall virtual hardening engine.
This is one of the payloads we are actively seeing in the wild:
32
https://blog.sucuri.net/2016/06/wp-mobile-detector-vulnerability-
being-exploited-in-the-wild.html より引用
32. 脆弱な resizer.php のソース(冒頭)
<?php
if (isset($_REQUEST['src'])) {
$path = dirname(__FILE__) . "/cache/" .
basename($_REQUEST['src']);
if(file_exists($path)){
// 省略
}else{
file_put_contents($path,
file_get_contents($_REQUEST['src']));
// file_get_contentsのファイル名はバリデーション等していない
// file_put_contentsのファイルは、./cahce/ディレクトリに
// すなわち、局所的に見ると、ディレクトリトラバーサル脆弱性
33
33. JPCERT/CCからの注意喚起
【5】WordPress 用プラグイン「WP Mobile Detector」に任意のファイルをアップロード可能
な脆弱性
情報源
US-CERT Current Activity
WP Mobile Detector Vulnerability
https://www.us-cert.gov/ncas/current-activity/2016/06/03/WP-Mobile-Detector-Vulnerability
概要
WP Mobile Detector の resize.php には、脆弱性があります。結果として、遠隔の第三者が、任
意のファイルをアップロードする可能性があります。
対象となるバージョンは以下の通りです。
- WP Mobile Detector 3.6 より前のバージョン
この問題は、開発者が提供する修正済みのバージョンに WP Mobile Detectorを更新することで
解決します。詳細は、開発者が提供する情報を参照してください。
関連文書 (英語)
WP Mobile Detector Changelog
https://wordpress.org/plugins/wp-mobile-detector/changelog/
34https://www.jpcert.or.jp/wr/2016/wr162201.html#5 より引用
34. 35. ランサムウェアの感染経路に悪用される場合も
4.2.2 ランサムウェアの感染経路について
JSOC では、これらランサムウェアの感染経路と見られる通信を検知しています。
1. エクスプロイトキット経由のドライブバイダウンロードによる感染
図 11 にエクスプロイトキットの接続を検知した通信例を示します。この通信はランサム
ウェアの感染通信とほぼ同時刻に発生していたことから、ランサムウェアの感染経路の一つで
あると考えます。
図 11 エクスプロイトキットへの接続の検知例
図 11 に示す通信は Angler Exploit Kit の特徴的な通信です。攻撃者はこれらのエクスプロイ
トキットに誘導するコードを正規の Web サイトや広告などに埋め込むことで、Web サイトの
利用者をマルウェアに感染させます。JSOC では、2015 年 7 月から 9 月と同様、集計期間にエ
クスプロイトキットに関連する通信を多数検知しています。
36
http://www.lac.co.jp/security/report/pdf/20160517_jsoc_m001t.pdf より引用
36. 37. 38. 39
デモ:
• WPScanによるパスワードクラック
[!] Default first WordPress username 'admin' is still used
[+] Starting the password brute forcer
Brute Forcing 'admin' Time: 00:00:11 <====== > (49 / 51) 96.07%
Brute Forcing 'yamada' Time: 00:00:07 <===== > (50 / 51) 98.03%
[+] [SUCCESS] Login : yamada Password : tigger
+----+--------+------+----------+
| Id | Login | Name | Password |
+----+--------+------+----------+
| 1 | admin | | |
| 4 | yamada | | tigger |
+----+--------+------+----------+
39. 40. 41. 42. 43. 44. 45. 46. 47. 48. パスワード! パスワード! パスワード!
• 極論するとユーザ名は"admin"でもよい
– adminだと自動攻撃に狙われるのでウザいということはある
– よほどの"細工"をしないと、ユーザ名は外部から判別できる
• とにかくパスワードをちゃんとすることが重要
– 8文字以上
– 英数字を混ぜる
– 辞書に載っている単独はだめ
– できればランダム文字列
– 他所で使ってないもの 【重要】
– 管理者が複数存在する場合は、管理者毎にユーザーを作成する
– 退職・異動した管理者のアカウントは直ちに無効化する
49
49. 50. 51. 52. 53. 54. 根本的解決策と保険的対策
• 根本的解決策: 侵入の原因となる問題をつぶすもの
• 保険的対策: 侵入されにくくしたり、侵入後の被害を緩和す
るもの
• 根本的解決策は以下
– 脆弱性を解消する
– パスワードをしっかり設定する
• 保険的対策の例
– PHPの機能を制限する(php.iniのdisable_functions)
– ファイルやディレクトリのパーミッション設定
– ログイン画面にIPアドレス制限を導入する
– WordPressのセキュリティプラグインを導入する
– 二段階認証を導入する
– WAF(Web Application Firewall)を導入する
– Secure OS(SELinus等)の活用
55
55. まとめ
• CMS四天王を題材として、Webサイトへの不正アクセスの手法を紹介
– CMS自体の脆弱性
– CMSのプラグインの脆弱性
– WordPressへの不正ログイン
– クラウドの管理画面への不正ログイン
• 不正ログイン対策は、とにかく良質のパスワードをつけること
• 脆弱性対策は、パッチ適用かバージョンアップ
• WordPress本体、プラグイン、テーマのアップデートは特に重要
– できれば自動アップデートで
• 世の中の「WordPressのセキュリティ記事」は緩和策を勧めるものが多い
が、本当大切なことは「根本的解決策」
– パスワードをしっかり
– パッチ適用またはバージョンアップ
56