Megalodonの攻撃によるGitHub Actions悪用:5,500のリポジトリへの悪意あるコミット挿入

研究者によれば、このキャンペーンは侵害されたアクセストークンとデプロイキーを悪用して、数千の公開リポジトリに悪意あるGitHub Actionsワークフローを挿入しました。

大規模な自動化されたGitHubバックドア攻撃キャンペーンが、日常的なCI/CDメンテナンスを装いながら、数千の悪意あるコミットを公開リポジトリにプッシュしていることが発見されました。

SafeDepの研究者は、5月18日の6時間のウィンドウ内で5,000以上のリポジトリに影響を与えたMegalodonというキャンペーンを観測しました。攻撃はGitHub Actionsワークフローを標的とした悪意あるコミット「acac5a9」の形式でした。

Actionsタブの予期しないworkflow_dispatchの実行は警告信号になる可能性があると、研究者はブログポストで述べています。「クラウドデプロイメントにOIDCフェデレーションを使用している場合は、不明なワークフロー実行からのトークンリクエストについてクラウド監査ログを確認してください。」

悪意あるコミットがGithub Actionsワークフローを修正し、CI実行中に露出したシークレット(クラウド認証情報、SSHキー、OpenID Connect(OIDC)トークン、ソースコードシークレット、その他の環境変数を含む)を盗む設計のbase64エンコードされたbashペイロードを含めているのが確認されました。

最も被害が大きかったプロジェクトの中には、WiznetのioLibrary_Driverリポジトリ、4つのTiledeskリポジトリ、4つのpersian-toolsリポジトリがあり、それらの合計で2,000以上の悪意あるコミットが報告されました。

その後、OX Securityによるブログポストは、広範なTeamPCP侵害との類似点、特にハードコーディングされた過去のコミット日の使用についてフラグを立てました。これはTeamPCPに関連する作業で悪意あるアクティビティの真の時期を隠すために使用されたトリックでした。

侵害されたキーを使用した自動化攻撃

SafeDepの研究者によると、Megalodonキャンペーンは約6時間以内に5,561個の公開GitHubリポジトリ全体に5,718個の悪意あるコミットをプッシュしました。主に侵害された認証情報を悪用してGitHub Actionsワークフローを直接修正することで行われました。

base64エンコードされたbashペイロードを隠すTiledeskのGitHub Actionsワークフローファイルを調査している最中にこのキャンペーンを検出しました。

「バージョン2.18.6(5月19日)から2.18.12(5月21日)まですべてバックドアを含んでいます」と、研究者は予備調査の後に結論づけました。

犯人のTiledeskバージョンと正当な前身バージョンのさらなる比較により、研究者は悪意あるコミットに辿り着きました。「悪意あるコミットは2026年5月18日に、build-bot <[email protected]>によって「ci: add build optimization step」というメッセージで作成されました」と彼らは述べました。「著者名とジェネリックなnoreplメールは自動化されたCIコミットを模倣しています。」

コミットはプルリクエスト(PR)やマージコミットなしでプッシュされ、研究者によると侵害されたPersonal Access Token(PAT)またはデプロイキーを使用して行われたと述べています。彼らは開示の公開時点で悪意あるコミットが「マスターブランチ」上でアクティブなままであったことに警告しました。

「build-bot」の他に、キャンペーンは「auto-ci」や「ci-bot」などの他の偽造された著者アイデンティティにも依存していました。

キャンペーンは2つのペイロードバリアントをプッシュしました。最初の「SysDiag」は、難読化されたbashペイロードをワークフローに直接埋め込み、すべてのプッシュまたはPRで自動的にトリガーされ、2番目の「Optimize-Build」は「workflow_dispatch」を使用したステージドアプローチに従い、必要な場合にのみ悪意あるワークフローを実行します。Tiledeskの侵害で使用された後者は、運用的にはうるさく、検出可能なトレースを残しました。

両方のバリアントは、AWS およびGCP認証情報、SSHキー、Kubernetesコンフィグ、GitHub OIDCトークン、ソースコードシークレット、シェル履歴を含む機密CIシークレットを標的としました。彼らは盗まれたシークレットを攻撃者が制御するインフラストラクチャ216.126.225.129:8443に流出させました。

SafeDepは、C2ドメイン、キャンペーン署名、著者名とメール、コミットメッセージ、および侵害されたGitHubリポジトリの名前を含む侵害の指標(IOC)のリストを共有し、検出とクリーンアップを支援しました。

翻訳元: https://www.csoonline.com/article/4177124/github-actions-abused-by-megalodon-attack-to-slip-malicious-commits-into-5500-repos.html

ソース: csoonline.com