Socketの研究者が、広く信頼されているgolang.org/x/cryptoパッケージになりすまし悪意あるGoモジュールを発見しました。
GitHub [.]com/xinfeisoft/cryptoで公開された悪質なモジュールは、正規の暗号化ライブラリの構造をコピーしていますが、ssh/terminal/terminal.goファイルに秘密にバックドアを挿入しています。
実のgolang.org/x/cryptoリポジトリは、bcrypt、argon2、chacha20を含む重要な暗号化機能とSSHユーティリティを提供しています。
何千ものGoプロジェクトの基礎的な依存関係であるため、サプライチェーン攻撃の高い信頼度を悪用される可能性が高いターゲットを表しています。
元のリポジトリを綿密に模倣することで、悪意あるパッケージは依存関係グラフに自然に融け込み、迅速な目視検査を回避する可能性があります。
バックドアは具体的にReadPassword関数を変更しています。この関数は、コマンドラインアプリケーションがSSHパスフレーズ、データベースパスワード、APIキーなどのユーザー認証情報を安全にキャプチャするために一般的に使用されます。
入力されたパスワードを単に返す代わりに、変更された関数はシークレットをキャプチャし、/usr/share/nano/.lockのローカルファイルに書き込み、攻撃者が制御するインフラストラクチャに送信します。
コマンド・アンド・コントロール(C2)フローを隠すために、マルウェアは攻撃者の別のリポジトリのGitHub RawファイルからステージングURLを取得します。
そのポインタは感染したシステムを悪意あるエンドポイントにリダイレクトし、そこでシェルスクリプトが/bin/sh経由でダウンロードされて実行されます。このデザインにより、攻撃者はGoモジュールを再発行することなくインフラストラクチャをローテーションできます。
公開の時点で、悪意あるモジュールはpkg.go.devに2025年2月のリリース日付で表示されていました。
責任ある開示に従い、Goセキュリティチームはモジュールを公開プロキシからブロックし、403セキュリティエラーを返しました。しかし、以前にパッケージをダウンロードまたはベンダリングしたシステムは、引き続き露出する可能性があります。
ダウンロードされたシェルスクリプトはLinuxステージャーとして機能します。攻撃者が制御するSSHキーを/home/ubuntu/.ssh/authorized_keysに追加し、永続的なリモートアクセスを許可します。また、iptablesのデフォルトポリシーをACCEPTに設定してファイアウォール保護を弱化させます。
次に、スクリプトはimg[.]spoolsv[.]ccからsss.mp5とsss.mp5という2つの偽装ペイロードをダウンロードします。メディアスタイルの拡張子でラベル付けされていますが、どちらのファイルも実行可能ファイルです。
分析により、555.mp5が既知のスパイ活動指向型マルウェアファミリーであるRekoobeバックドアをインストールしていることが確認されました。Rekoobeは歴史的にAPT31に関連する操作を含む高度な脅威活動とリンクされています。
しかし、トラフィックは標準的なHTTPSハンドシェイクのようには見えませんでした。これは、ポートレベルで正規に見えるように設計されたカスタム暗号化通信を示唆しています。
セキュリティ専門家は、このキャンペーンがオープンソースサプライチェーン攻撃の継続的なリスクを強調していると警告しています。
開発者は、go.modおよびgo.sumの変更を慎重にレビューし、依存関係への追加を監視し、デプロイ前に疑わしいモジュールを検出する自動スキャンツールを実装することをお勧めします。
翻訳元: https://cyberpress.org/malicious-go-package-spreads-rekoobe/