ハッカーたちがVIPERTUNNELと呼ばれるステルス型のPythonバックドアを悪用し、フェイクDLLファイルと複数段階の難読化されたローダーの背後に隠蔽して、被害者ネットワークからのトラフィックを静かにトンネリングしています。
永続性メカニズムのレビューにより、C:\ProgramData\cp49s\Lib\にあるsitecustomize.pyファイルが発見されました。この特別なPythonモジュールはインタープリーターの起動時に自動的にロードされ、コマンドライン入力なしでコードを静かに実行できます。
このスクリプトはctypesを使用してPython C API(Py_GetArgcArgv)を呼び出し、Pythonが1つの引数(実行可能ファイル自体)のみで起動されたかどうかを確認しました。
DragonForceランサムウェアグループに関連するインシデント中に、アナリストたちが「523135538」という名前の疑わしいスケジュール済みタスクを発見しました。それはC:\ProgramData\cp49s\pythonw.exeを引数なしで実行していており、Windows上の正当なPython使用には珍しいパターンです。
そうだとすれば、C:\ProgramData\cp49s\内のb5yogiiy3c.dllへのパスを構築し、runpy run_pathで実行しました。このDLLをWindows実ライブラリではなくPythonスクリプトとして扱っていました。
フェイクDLLと階層化された難読化
ファイルb5yogiiy3c.dllは、ネイティブPEライブラリではなく、DLLとして誤ったラベルが付けられた、大幅に難読化されたPythonローダーであることが判明しました。
同じディレクトリからいくつかの埋め込みモジュールをインポートし、BLAKE3、SHA-256、AES、ChaCha20、base64、zlibなどの暗号化プリミティブに依存していました。これは暗号化されたペイロードと段階的な復号化チェーンを強く示唆していました。
静的分析を妨害するために、スクリプトは意味のある関数名とAPI名をランダムな変数識別子と、zlib.decompressやbase64.b85decodeなどの事前バインドされた操作に置き換えていました。
標準的なBase64より密度の高いBase85エンコーディングは、マルウェアが馴染みのあるBase64マーカーのみを探す単純なパターンベースの検出を回避するのに役立ちます。
調査官たちは2つのコア復号化機能を回収しました:1つはBase85エンコードされたブロブを逆転させるもの、もう1つは整数配列を文字列に変換するもので、隠蔽されたコードの主な変換層を形成していました。

制御フロー追跡により、実行時にcompile(…, ‘<jK6xvQeYbpkDD>’, ‘exec’)を使用して復号化およびコンパイルされ、その後メモリで実行された大きなエントロピー高いブロブが発見されました。
復号化ルーチン自体は、while Trueループと状態変数を使用した制御フロー平坦化を使用していました。ロジックを非線形にしてフォローしにくくしていました。
3つの異なる難読化ステージが特定されました:各ステージはペイロードをデコードしてコンパイルし、実行してから次のステージに引き継ぎ、すべてのステージはメモリに留まります。
eSentireのShadowCoil研究から類似のフレームワークの公開アンパッカーが存在しますが、ここで使用されたバリアントは十分に異なり、公開ツールはこのチェーンを完全にデコードできませんでした。
最終ステージは、ハードコードされたコマンド・アンド・コントロールサーバーへのアウトバウンドトンネルをポート443経由で作成するSOCKS5プロキシを実装して、通常のHTTPSトラフィックに溶け込みます。
デフォルトのC2と認証情報は埋め込まれていますが、オペレーターはバックドアを起動する際にコマンドラインパラメーターを使用して別のC2の詳細を渡すこともできます。
VIPERTUNNELのアーキテクチャは、Wire、Relay、Commanderという3つのメインクラスを中心に回っています。
C2通信はアクティブな配備期間を示していますが、VirusTotal アップロードタイムスタンプとドメイン登録レコードはギャップを埋めるのに役立ちます。

Commanderはthreading.Threadから継承し、初期C2ハンドシェイクを管理してRelayスレッドを生成します。RelayはC2と内部ホスト間のSOCKS5プロキシロジックを処理します。Wireはソケット操作を抽象化してトンネルされたデータをカプセル化し、ラテラルムーブメントとデータ流出のための複数の同時トンネルを有効にします。
属性とShadowCoilへのリンク
脅威インテリジェンスマッピングは、このPythonバックドアをUNC2165/EvilCorp活動とVIPERTUNNELファミリー(以前はFAKEUPDATES(SocGholish)感染の後続ペイロードとして観測)にリンクしており、ランサムウェア配備前のアクセス維持とネットワークピボットに使用されることが多く、RansomHubを含むグループによって使用されています。
OpenSSHバージョンはサーバ全体でほぼ一貫していますが、すべてのケースで同一ではないため、信頼できる指標ではありません。

DragonForceの場合、タイムラインはVIPERTUNNELアクセスがランサムウェア配備に先行したことを示していますが、アクセスがそのアフィリエイトに売却または譲渡されたという確定的な証拠はまだありません。
テレメトリ全体での捜索により、同じマルチステージ難読化パッカーを使用してShadowCoil(別名COILCAGE/RATTLEGRAB)を配信する他のサンプルが発見されました。これはChromiumブラウザに焦点を当てたPythonベースの認証情報盗みで、ますますFirefoxも対象としています。
ShadowCoilバリアントは階層化されたローダー設計を共有していますが、/proc/self/statusのLinux固有のTracerPidチェックを含む追加のアンチデバッギングチェックを追加しています。Windowsでのエラーは静かに無視されており、ペイロードが現在Windowsターゲットに焦点を当てたクロスプラットフォームフレームワークを示唆しています。
全体的に、このキャンペーンは2023年後半の難読化されていない、タイポが多い初期VIPERTUNNELバージョンから、2025年後半の成熟したモジュール式本番バックドアへの明確な進化を示しており、洗練されたコード、強力な難読化、そしてPythonベースのローダーチェーンとフェイクDLLの偽装と密接に統合されたステルス型インフラストラクチャを備えています。
翻訳元: https://gbhackers.com/vipertunnel-python-backdoor/