VMware logo in flames

これまで文書化されていなかった VMware ESXi サーバーを標的とする Python バックドアが発見され、ハッカーが侵害されたシステムでリモートからコマンドを実行できるようになりました。

VMware ESXi は、CPU とメモリ リソースをより効果的に使用しながら、1 つのデバイスで多数のサーバーをホストするために企業で一般的に使用される仮想化プラットフォームです。

新しいバックドアは、VMware ESXi サーバーでバックドアを発見したジュニパーネットワークスの研究者によって発見されました。ただし、ログの保存期間が限られているため、サーバーがどのように侵害されたかを特定できませんでした。

彼らは、ESXi の OpenSLP サービスの CVE-2019-5544 および CVE-2020-3992 の脆弱性を使用して、サーバーが侵害された可能性があると考えています。

このマルウェアは、技術的には Linux および Unix システムも標的にすることができますが、ジュニパーのアナリストは、ESXi に対する攻撃用に設計された複数の兆候を発見しました。

バックドア操作

新しい Python バックドアは、「/etc/rc.local.d/local.sh」内に 7 行を追加します。これは、再起動後も存続し、起動時に実行される数少ない ESXi ファイルの 1 つです。

通常、そのファイルは、いくつかのアドバイス コメントと終了ステートメントを除いて、空です。

ESXi ファイルに追加された追加の行
ESXi ファイルに追加された追加の行(Juniper Networks)

これらの行の 1 つは、VM ディスク イメージ、ログなどを格納するディレクトリに「/store/packages/vmtools.py」として保存されている Python スクリプトを起動します。

スクリプトの名前と場所から、ジュニパーネットワークスは、マルウェア オペレーターが特に VMware ESXi サーバーを標的にするつもりであると確信しています。

「この攻撃で使用された Python スクリプトはクロスプラットフォームであり、Linux やその他の UNIX 系システムでほとんどまたはまったく変更せずに使用できますが、この攻撃が ESXi を標的とするように特別に設計されたことを示すいくつかの兆候があります」と、Juniper Networks は説明しています。 レポート

「ファイルの名前とその場所、/store/packages/vmtools.py は、仮想化ホストに疑いを持たないように選択されました。」

「ファイルは、公開されている例と一致する VMware の著作権で始まり、VMware が提供する既存の Python ファイルから文字ごとに取得されます。」

このスクリプトは、リモートの攻撃者からのパスワードで保護された POST 要求を受け入れる Web サーバーを起動します。これらのリクエストは、base-64 でエンコードされたコマンド ペイロードを運ぶか、ホストでリバース シェルを起動できます。

リバース シェルは、侵害されたサーバーに攻撃者との接続を開始させます。これは、多くの場合、ファイアウォールの制限を回避したり、制限されたネットワーク接続を回避したりするのに役立つ手法です。

ジュニパーのアナリストが観察した脅威アクターのアクションの 1 つは、ESXi リバース HTTP プロキシ構成を変更して、リモート アクセスが植え付けられた Web サーバーと通信できるようにすることでした。

この新しい構成の設定に使用されるファイル「/etc/vmware/rhttpproxy/endpoints.conf」もバックアップされ、再起動後に復元されるため、その変更は永続的です。

緩和

このバックドアが ESXi サーバーに影響を与えたかどうかを判断するには、上記のファイルの存在と「local.sh」ファイルの追加行を確認してください。

再起動を保持するすべての構成ファイルは、疑わしい変更がないか精査し、正しい設定に戻す必要があります。

最後に、管理者はすべての着信ネットワーク接続を信頼できるホストに制限する必要があります。また、最初の侵害で使用されたエクスプロイトに対処する利用可能なセキュリティ アップデートをできるだけ早く適用する必要があります。