GemStufferとして知られる悪意のある攻撃者が、英国の市議会ポータルからデータを抽出する目的で、150以上のRubyGemsパッケージを侵害しました。このキャンペーンは、正規のライブラリに似た名前のgemを作成して開発者を欺く、stuffing手法を利用しています。インストールされると、これらのgemは市民の機密情報や行政記録を収集し、攻撃者が管理するサーバーに流出させます。
Rubyエコシステムにおけるstuffing攻撃の仕組み 🛡️
この攻撃は、タイポスクワッティングやコンボスクワッティングのように、人気ライブラリと綴りが酷似した名前のgemを大量に公開することに基づいています。インストールされると、市議会ポータルから名前、住所、公共サービス記録などのデータをスクレイピングするコードを実行します。データの流出は、リモートサーバーへのHTTPリクエストを通じて行われます。悪意のあるgemが元のgemの基本的な機能を模倣し、その有害なペイロードを二次モジュールやコードの難読化によって隠蔽するため、検出は困難です。
GemStuffer:許可を得なかったデータコレクター 😅
GemStufferは、オープンソースの概念を文字通りに解釈したようです。つまり、市役所ポータルで見つけたものはすべて自分たちのものだと考えているのです。150以上のgemを使って、彼らはあらゆるアーキビストを青ざめさせるような、他人のデータライブラリを構築しました。興味深いことに、公開APIを要求する代わりに、マルウェアを通じて「お願いします」と言う方法を好んだのです。少なくとも、誰かが尋ねたら、コードは自分たちのものではなく、単に一時的にそこにあっただけだと彼らは知っています。