GitHub Actions Script Injectionは、名前の示す通り、GitHub Actions Scriptの機構を悪用したInjection攻撃の手法です。
この手法そのものは今回発見されたものではなく、以前から確認されていたものですが、この手法を使用した攻撃の事例が追加されてしまいました。
内容を見てみましょう。
- GitHub Actions Script Injectionで開始
最初のステップはGitHub Actions Script Injectionでした。
この手法によって脅威アクターはultralytics/actionsを使用する任意のリポジトリのフォークを作成し、タイトルにインジェクションペイロードコードを含むブランチからプルリクエストを作成しました。
通常はプルリクエストのタイトルは人の識別のためのタイトル意味のみのはずなのですが、この部分にコードを埋め込むことでシステムの意図されていない動作を実現するものでした。
今回、この方法で任意コード実行が成立しました。 - そもそものultralytics/actionsの脆弱性
ultralytics/actionsのGitHub Actions Script Injectionがアナウンスされたのは2024/8/15でした。
この時点で、この問題は明らかになっていたのです。
そして、この問題はこの時点で対策が取られたということになっていました。
しかし、その際に選択された方法では、この問題は解消できていませんでした。
そのため、2024年12月の時点で再度この事象へと繋がりました。 - 影響を受けたバージョン
影響を受けたことがわかって削除されたバージョンは次の2つでした。
これらはいずれも2024年12月上旬に一度はリリースされましたが、現時点では削除された状態になっています。- 8.3.41
- 8.3.42
作成するアプリケーションのコードを安全に保つことと同じように、利用する環境の安全の維持も重要ということがわかります。
また、リポジトリの公開物の状態はあるべき状態に戻っていますが、入手されてしまってダウンロード先で動作してしまっているものは、ダウンロードした人が更新しない限りそのまま動作し続けます。
今回は激しくマイニングする内容となっていたということですので、性能の影響に神経が行っていれば気がついて対処できるケースはあるのではないかと思いますが、性能を監視していないリソースに取り込んでしまっている場合は発見できるでしょうか。心配です。
この意味で、やはり良好なパッチケイデンスも重要な運用アイテムだと再認識します。
攻撃手法はどんどんと発見されてきます。
注意していかないとですね。
Compromised ultralytics PyPI package delivers crypto coinminer
https://www.reversinglabs.com/blog/compromised-ultralytics-pypi-package-delivers-crypto-coinminer
この記事をシェア |
---|