クラウドコンピューティングが必要ですか? 今すぐ始める

2024:古い CVE が新たなターゲットに — ThinkPHP の悪用が活発化

Akamai Wave Blue

執筆者

Ron Mankivsky and Maxim Zavodchik

June 05, 2024

Akamai blue wave

執筆者

Ron Mankivsky

Ron Mankivsky は Akamai の Senior Researcher です。

Maxim Zavodchik

執筆者

Maxim Zavodchik

Maxim Zavodchik は、Akamai の Apps & APIs Threat Research で Senior Manager を務めています。

Akamai の研究者は、CVE-2018-20062 および CVE-2019-9082 に脆弱な ThinkPHP アプリケーションを標的とした新しいキャンペーンを発見しました。
Akamai の研究者は、CVE-2018-20062 および CVE-2019-9082 に脆弱な ThinkPHP アプリケーションを標的とした新しいキャンペーンを発見しました。

編集・協力:Tricia Howard

エグゼクティブサマリー

  • Akamai の研究者は、CVE-2018-20062 および CVE-2019-9082 に脆弱な ThinkPHP アプリケーションを標的とした新しいキャンペーンを発見しました。このキャンペーンの首謀者は、中国語話者のサイバー脅威グループのようです。

  • このキャンペーンは、限られた数の顧客/組織を標的として、2023 年 10 月に開始されたようです。広まったのはごく最近のことです。

  • この攻撃は、主に香港にある「Zenlayer」クラウドプロバイダー(ASN 21859)でホストされているサーバーに関連付けられた、さまざまな IP アドレスから発生しました。

  • この攻撃は別の ThinkPHP サーバーも侵害して、難読化されたコードを取得し、最初の足がかりを得ようとします。

  • 攻撃者は、システムの悪用に成功した後、「Dama」という名前の中国語の Web シェルをインストールして、サーバーへの永続的なアクセスを維持します。

  • その後のアクションとして、被害者のデータセンター内でさらに拡大したり、サーバーを取り込んで攻撃インフラで使用したりする可能性があります。

概要

セキュリティに関する厄介なトレンドが発生しています。攻撃者が数年前から存在していたものを含む既知の脆弱性を悪用し、成果をあげているのです。その主な例が、ThinkPHP のリモートコード実行(RCE)の脆弱性である CVE-2018-20062 と CVE-2019-9082 です。CVE 名からわかるとおり、これらは少なくとも 2018 年から悪用されており、その攻撃アクティビティは現在も続いています。

Akamai が最初にこの攻撃のふるまいの兆候を検知したのは、2023 年 10 月 17 日のことでした。Akamai の観測では、これらの脆弱性を悪用するプローブは少数でしたが、思っているほど少なくありません。自動化されたツールやスキャナーで見られる一般的な「概念実証」コマンドとは異なり、 このペイロードは攻撃者の制御下にあるリモートサーバーから難読化されたシェルをインストールするように被害者のサーバーに指示しました

キャンペーンは数日間だけ実行され、その後この限られたプローブは停止しましたが、つい最近動き出したようです。2024 年 4 月現在、Akamai は同様のキャンペーンを観測しており、これは以前のキャンペーンよりもはるかに大規模です。

このブログ記事では、上述の CVE、観測された攻撃試行、このキャンペーンの影響を受ける当事者に推奨される緩和策について説明します。

CVE について

ThinkPHP とは

ThinkPHP は、主に PHP ベースの Web アプリケーションの開発に使用される、中国語のオープンソース Web アプリケーションフレームワークです。MVC(Model-View-Controller)アーキテクチャパターンに従って Web アプリケーションの構築プロセスをシンプル化する一連のライブラリー、コンポーネント、ツールを提供します。

CVE-2018-20062CVE-2019-9082 は、人気のある中国語のフレームワークである ThinkPHP の旧バージョンに存在する脆弱性です。これらの脆弱性は、NoneCMS やオープンソース BMS など、このフレームワークに基づいたコンテンツ管理システムに影響を与えます。それらを悪用することで、攻撃者は被害者のサーバー上でコードをリモート実行できます。どちらの脆弱性も、さまざまな ThinkPHP コンポーネントを標的とする一連の攻撃バリアントの一端を担っており、それらは初期攻撃ベクトルが明らかになった 2018 年から数年にわたって開示されました。

攻撃試行を観測

この攻撃試行( Akamai App & API Protectorで検知し記録)は上述の CVE を使用して、中国にある侵害されたサーバーと思われるものから「public.txt」という名前のファイルをダウンロードしようとします。この新しい悪性ファイルはその後、「roeter.php」という名前で被害者のシステムに保存されます。これは、「router」のスペルミスと考えられます(図 1)。

この新しい悪性ファイルはその後、「roeter.php」という名前で被害者のシステムに保存されます。これは、「router」のスペルミスと考えられます(図 1)。 図 1:App & API Protector が ThinkPHP の CVE の悪用を検知したことを報告

ダウンロードされたテキストファイルには、難読化されたバージョンの Web シェルが含まれています。これは、リモートサーバー制御用のサーバーサイドバックドアのスクリプトです。この Web シェルコードは難読化を使用します。特に、基本的な ROT13 変換によって単一の長い 16 進数文字列を生成します(図 2)。 興味深いことに、攻撃者は Web シェルにアクセスするために非常に単純なパスワード「admin」を使用しました

ダウンロードされたテキストファイルには、難読化されたバージョンの Web シェルが含まれています。これは、リモートサーバー制御用のサーバーサイドバックドアのスクリプトです。この Web シェルコードは難読化を使用します。特に、基本的な ROT13 変換によって単一の長い 16 進数文字列を生成します(図 2)。 図 2:難読化された Web シェルの内容

この攻撃は、主に香港にある Zenlayer クラウドプロバイダー(ASN 21859)でホストされているサーバーに関連付けられた、さまざまな IP アドレスから発生します。バックドアコードをホストしていたサーバーを簡単に調査したところ、同じ Web シェルにも感染していることがわかりました(図 3)。

この攻撃は、主に香港にある Zenlayer クラウドプロバイダー(ASN 21859)でホストされているサーバーに関連付けられた、さまざまな IP アドレスから発生します。バックドアコードをホストしていたサーバーを簡単に調査したところ、同じ Web シェルにも感染していることがわかりました(図 3)。 図 3:悪性コンテンツをホストしている侵害されたサーバーに、同じ Web シェルが展開

これは、サーバーが攻撃者のインフラ内の別のノードである可能性があることを示しています。このアプローチは運用コストの削減につながりますが、さらに重要なのは攻撃の帰属があいまいになることです。これにより、法執行機関は単に ISP に合法な組織の実稼働サーバーをシャットダウンするように要請することができず、サーバーを停止することが困難になります。

Dama Web シェル

この Web シェルにはファイルシステムのナビゲートなどの高度な機能があります。それを使用することで、難読化を目的としたファイルの編集、削除、タイムスタンプの変更などの操作を実行できます。英語の Web シェル( WSO-NG Web シェルなど)を使用する西欧や東欧の攻撃者が観測されるのはよくあることですが、今回の攻撃はユーザーインターフェースが中国起源であるという点で際立っています(図 4)。

英語の Web シェル(WSO-NG Web シェルなど)を使用する西欧や東欧の攻撃者が観測されるのはよくあることですが、今回の攻撃はユーザーインターフェースが中国起源であるという点で際立っています(図 4)。 図 4:Dama と呼ばれる Web シェルのユーザーインターフェースには繁体字中国語が使用されている

上記の高度なメカニズムに加えて、Dama はサーバーへのファイルのアップロードを円滑化し、システムに関する重要な技術データ(正確な OS バージョンや PHP 情報など)を収集します。このデータは、関連する権限昇格の脆弱性を特定するために役立ちます(図 5)。

Dama はサーバーへのファイルのアップロードを円滑化し、システムに関する重要な技術データを収集します 図 5:Dama Web シェルには、侵害されたローカルデータベースとのインタラクションなど、高度な機能が存在

それで終わりではありません。攻撃後の機能には、ネットワーク・ポート・スキャンや、既存のデータベースやサーバーデータへのアクセスなどがあります。さらに、この Web シェルは権限昇格のためのさまざまな方法を提供します。たとえば、 無効になっている機密の PHP 関数をバイパスして、PHP サンドボックスを回避し、サーバー上でシェルコマンドを実行します

また、Windows タスクスケジューラーを利用して WMI を再設定し、強い権限のあるユーザーを追加します。ダイレクトコード実行用の PHP インタープリターを備えていますが、ダイレクト OS シェルコマンドを実行するためのコマンドラインインターフェース(CLI)をサポートしていないことは明らかです。幅広い機能を備えていることを考えると、これは驚くべきことです。

App & API Protector による緩和

ThinkPHP を最新バージョン(現時点で 8.0)にアップグレードすることが強く推奨されます

また、これらの CVE に脆弱である可能性のあるすべての資産を特定することは困難であり、パッチ適用自体が実行可能なオプションではない可能性があるため、Akamai は Adaptive Security Engine を備えた App & API Protector を実装して ThinkPHP の CVE に関連するリスクを軽減することを強くお勧めします。 

すでに Adaptive Security Engineを使用している場合は、Web Platform Attack のグループアクションを「Deny」に設定して保護を強化することで、これらのリスクに簡単に対処できます。または、個別ルール 3000189(「ThinkPHP RCE(CVE-2018-20062)」)を「Deny」に設定するのも有効です。

まとめ

この Web シェルは、ワンデイの一例です。上記の脆弱性はかなり以前から知られていたにも関わらず、攻撃者はそれを標的として悪用し続け、大きな成功を収めています。 これは、組織が脆弱な資産を特定して効果的なパッチ管理プロセスを維持する上で直面する、持続的な課題を明確に示しています。 

中国語を話す攻撃者が行った最近の攻撃により、高度な被害者制御を行えるよう設計された本格的な Web シェルを使用するのが現在の攻撃者のトレンドであることが明らかになりました。興味深いことに、標的となったすべてのお客様が ThinkPHP を使用していたわけではありません。これは、攻撃者がさまざまなシステムを無差別に標的としていることを示しています。 

これは、最近増加している興味深い二面性の一例でもあります。つまり、この攻撃には非常に洗練された面(難読化制御を取り入れたテクノロジーなど)と、ほぼ成り行き任せの面(CLI をサポートしていないなど)があるのです。技術がますます進歩するにつれて、このギャップが拡大し続ける可能性があります。なぜなら、テクノロジーは高度でも、その背後にいる攻撃者も高度であるとは限らないからです。それは Dama Web シェルの作成者が熟達していないということではなく、単に業界全体がそのように変化しているということです。 

Akamai のお客様はこの攻撃試行から保護されていたため、Akamai は攻撃者の本当の意図を明確に断定することはできません。しかし、Akamai の経験に基づくと、被害者のシステムを攻撃インフラに組み込んでさらなる攻撃を実行すること、サーバーを強力な分散型サービス妨害(DDoS)やクリプト・ ボットネット ・ネットワークに利用すること、 ランサムウェア スキームや脅迫スキームを実行すること、または ラテラルムーブメント(横方向の移動)を実行して組織の機密情報を収集することなどが攻撃者の目的として考えられます。 

今後の情報提供

Akamai Security Intelligence Group は、今後も Dama Web シェルなどの脅威を監視して阻止し、コミュニティに調査結果を大規模に公開します。リアルタイムの最新情報をチェックするためには、Akamai Security Intelligence Group を X (旧 Twitter)でフォローしてください。



Akamai Wave Blue

執筆者

Ron Mankivsky and Maxim Zavodchik

June 05, 2024

Akamai blue wave

執筆者

Ron Mankivsky

Ron Mankivsky は Akamai の Senior Researcher です。

Maxim Zavodchik

執筆者

Maxim Zavodchik

Maxim Zavodchik は、Akamai の Apps & APIs Threat Research で Senior Manager を務めています。