彼らはPyPIで11の悪意のあるパッケージを発見しました

数日前、PyPIディレクトリ(Pythonパッケージインデックス)内で悪意のあるコードを含む11個のパッケージが発見されたことが発表された。

問題が特定されるまでに、これらのパッケージは合計で約38回ダウンロードされており、検出された悪意のあるパッケージは、攻撃者のサーバーとの通信経路を隠蔽するために高度な手法を用いている点が特筆に値する。

発見されたパッケージは次のとおりです。

  • 重要なパッケージ (6305ダウンロード)e 重要なパッケージ (12897):これらのパッケージ 外部サーバーへの接続を確立する pypi.python.orgへの接続を装って システムへのシェルアクセスを提供する (逆シェル)そして、trevorc2プログラムを使用して通信チャネルを非表示にします。
  • pptest (10001)と IPボード (946): 情報を転送するための通信チャネルとしてDNSを使用 システムについて(最初のパケットでは、ホスト名、作業ディレクトリ、内部IPと外部IP、XNUMX番目のパケットでは、ユーザー名とホスト名)。
  • ふくろう (3285) Discordセーフティ (557)Y イーフパーティー (1859)-システム上のDiscordサービストークンを識別し、それを外部ホストに送信します。
  • トルファブ (287):/ etc / passwd、/ etc / hosts、/ homeの識別子、ホスト名、およびコンテンツを外部ホストに送信します。
  • 10cent10 (490)-外部ホストへの逆シェル接続を確立しました。
    yandex-yt (4183):侵害されたシステムに関するメッセージを表示し、nda.ya.ru(api.ya.cc)を通じて発行された追加のアクションに関する追加情報を含むページにリダイレクトされました。

したがって、PyPIカタログで使用されているFastlyコンテンツ配信ネットワークを利用してアクティビティを隠蔽するimportantpackageおよびimportant-packageパケットで使用される外部ホストへのアクセス方法には特に注意を払う必要があることが述べられています。

実際、リクエストはpypi.python.orgサーバーに送信されましたが(HTTPSリクエスト内のSNIでpython.orgの名前を指定することを含む)、攻撃者によって制御されるサーバーの名前はHTTPヘッダー「Host »。 コンテンツ配信ネットワークは、データを送信するときにpypi.python.orgへのTLS接続のパラメーターを使用して、攻撃者のサーバーに同様の要求を送信しました。

PyPIのインフラストラクチャはFastlyコンテンツ配信ネットワークによって支えられており、Varnishの透過型プロキシを使用して一般的なリクエストをキャッシュし、エンドポイントサーバーではなくCDNレベルのTLS証明書処理を採用してHTTPSリクエストをプロキシ経由で転送します。宛先ホストに関係なく、リクエストはプロキシに送信され、プロキシはHTTPの「Host」ヘッダーによって目的のホストを識別し、ドメインホスト名はすべてのFastlyクライアントに存在する一般的なCDNロードバランサーのIPアドレスにバインドされます。

攻撃者のサーバーは、無料プランを提供し、匿名登録も可能なCDN Fastlyにも登録されています。注目すべきは、 「リバースシェル」が作成され、攻撃者のホス​​トによって開始された場合、同様のスキームが被害者へのリクエストの送信に使用されることです。外部から見ると、攻撃者のサーバーとのやり取りは、PyPI TLS証明書で暗号化されたPyPIディレクトリとの正当なセッションのように見えます。「ドメインフロント」として知られる同様の手法は、ブロックを回避してホスト名を積極的に隠蔽するために以前に使用されていました。これには、一部のCDNが提供するHTTPSオプションを使用し、SNIでダミーホストを指定し、TLSセッション内のHTTPホストヘッダーで要求されたホスト名を渡すことが含まれていました。

悪意のあるアクティビティを隠すために、TrevorC2パッケージが追加で使用されました。これにより、サーバーとの対話が通常のWebブラウジングと同様になります。

pptestパケットとipboardsパケットは、DNSサーバーへの要求で有用な情報をエンコードすることに基づいて、ネットワークアクティビティを非表示にするために異なるアプローチを使用しました。 悪意のあるソフトウェアは、DNSクエリを実行して情報を送信します。このクエリでは、コマンドおよび制御サーバーに送信されるデータは、サブドメイン名にbase64形式を使用してエンコードされます。 攻撃者は、ドメインのDNSサーバーを制御することにより、これらのメッセージを受け入れます。

最後に、さらに詳しく知りたい場合は、以下のリンクから詳細をご確認いただけます。


Googleで優先ソースとして追加する