本文の内容は、2023年8月14日にMICHAEL CLARK が投稿したブログ(https://sysdig.jp/blog/googles-vertex-ai-platform-freejacked)を元に日本語に翻訳・再構成した内容となっております。
Sysdig脅威リサーチチーム(Sysdig TRT)は最近、GoogleのVertex AIプラットフォームを悪用してクリプトマイニングを行う新たなFreejackingキャンペーンを発見しました。Vertex AIはSaaSであるため、Freejackingやアカウント乗っ取りなど、多くの攻撃に対して脆弱です。フリージャッキングとは、無料トライアルなどの無料サービスを悪用して金銭的利益を得る行為です。このフリージャッキングキャンペーンでは、攻撃者が GCP と Vertex AI に無料でアクセスできる Coursera の無料コースを利用しています。攻撃者は無料で金銭を得ることができ、サービスプロバイダーはそのツケを払わされることになります。
多くのサービスではクレジットカードのチェックが必要で、その他の制限機能があるため、トライアルアカウントの使用は表面的には非効率的に見えます。しかし、私たちは、攻撃者がプロセスを大幅に自動化し、一時的な電子メールアドレス、電話番号、さらにはクレジットカードを生成するサイトを使用していることを確認しています。CAPTCHAも一般的な防御策ですが、攻撃者がその解決を自動化することも確認されています。規模を拡大すれば、フリージャッキングはお金を稼ぐ効果的な方法となります。
この攻撃では、1つの偽アカウントにつき数十のインスタンスが作成されていることが確認されています。各偽アカウントは自動化で作成されているため、攻撃者はかなりの数のインスタンスを実行している可能性があります。トライアル自体は多くの場合、時間とリソースによって制限されるため、インスタンスあたりの金額はおそらくその寿命の間、1~2ドル程度でしょう。しかし、十分な規模があれば、攻撃者の居住地の生活費を考慮しても、努力に見合うだけの価値があります。私たちは現在、この例の攻撃者はインドネシア出身であると考えています。重要なのは、PURPLEURCHINで学んだように、攻撃者にとって1ドルの利益はプロバイダーにとって53ドルの損失になりうるということです。
AIが大流行している今、このようなプラットフォームがあちこちに出現しています。これらのプラットフォームは、パイプラインやコンピューティング・インフラストラクチャーを提供することで、機械学習やAIを容易にするために利用されています。提供されるサービスの一部は、スケーラブルで高性能な方法でモデルをトレーニングするための計算インフラストラクチャーです。AIがゴールドラッシュを迎えている今、世界中のチームが製品の開発にしのぎを削っています。
このようなコンピューティング・リソースは攻撃者が狙っているものであり、それに付属するグラフィック・カード(GPU)は暗号通貨のマイニングに理想的です。GPUには特殊なチップセットが搭載されており、CPUに比べてはるかに並列的な方法で計算を行うことができます。この並列性により、暗号通貨マイニングプログラムは、同様のCPUよりも約6倍優れたパフォーマンスを発揮することができます。このようなハードウェアを使用することで、攻撃者はより早く、より多くのお金を稼ぐことができます。
この攻撃では、攻撃者はマイナーを実行するために、Vertex AIプラットフォームが提供するJupyter Notebooksを活用しています。かなり単純ですが、効果的な戦術です。JupyterノートブックはPythonベースの対話型フォームで、出力をフォーマットしながらコードやコマンドを簡単に実行できます。コマンドラインに簡単にアクセスできるため、攻撃者はいつでもそれを見つけて喜びます。
彼らは、複数の領域に3つのtensorflowインスタンスを作成するスクリプトを実行します。Tensorflowは、GPUやその他の特殊なハードウェアを活用できる人気の機械学習プラットフォームです。次に、6つのCPUと12GBのRAMでTensorflowインスタンスを起動するカスタムGCPマシンタイプを使用します。Tensorflowは、彼らが作成しているインスタンスの重要な側面であり、これらのイメージには、クリプトマイニングの結果を最大化できるGPUが搭載されています。
gcloud notebooks instances create tensorflow-1 --vm-image-project deeplearning-platform-release --vm-image-name tf-2-11-cu113-notebooks-v20230615-debian-11-py310 --machine-type n1-custom-6-12288 --location us-central1-a --boot-disk-size 100
sleep 5
gcloud notebooks instances create tensorflow-2 --vm-image-project deeplearning-platform-release --vm-image-name tf-2-11-cu113-notebooks-v20230615-debian-11-py310 --machine-type n1-custom-6-12288 --location us-central1-a --boot-disk-size 100
sleep 5
gcloud notebooks instances create tensorflow-3 --vm-image-project deeplearning-platform-release --vm-image-name tf-2-11-cu113-notebooks-v20230615-debian-11-py310 --machine-type n1-custom-6-12288 --location us-central1-a --boot-disk-size 100
sleep 5
Tensorflowインスタンスが作成されると、攻撃者は公開リポジトリからマイナーをプルダウンし、可能な限り実行します。この攻撃で使用される暗号通貨はDeroと呼ばれ、Moneroと同様にプライバシーに焦点を当てた別のコインです。これらのコインはトランザクションの追跡が困難なように設計されているため、攻撃者にとってはリスクの少ない選択となります。攻撃者は以下のようなコマンドでマイナーを起動します。
./nodes -w deroi1qyzlxxgq2weyqlxg5u4tkng2lf5rktwanqhse2hwm577ps22zv2x2q9pvfz92xm369mdkp06lgvqf4y5cm.$(echo J6c-lottery-$(date +"%R-[%d/%m/%y]")) -r 149.129.237.206:80
Code language: JavaScript (javascript)
“nodes” コマンドのIPアドレス、149.129.237.206は、Alibabaサーバーにホストされた攻撃者が管理するマイニングプールです。Deroウォレットは長い一意の文字列で、識別子(日付など)が付加され、このマイニングインスタンスが主にメトリクス用にマイニングプール内の別のワーカーと見なされるようにします。このマイナーは、ユーザーのトライアルリソースが期限切れになるまで実行されます。
この種の攻撃に対して脆弱なAIプラットフォームはGoogleのVertex AIだけではありません。無料トライアルが悪用されるか、お客様が危険にさらされ、暗号通貨のマイニングに利用されるかのどちらかです。サービス・プロバイダーとお客様の両方が、それぞれのエンドが適切に保護されていることを確認する必要があるため、セキュリティの責任共有モデルはここで重要です。脅威の検出と対応ツールは、クリプトマイナーの対策に非常に効果的であり、ランタイムの監視と疑わしいアカウントのログインのために両者が使用する必要があります。