悪意のある者にはRESTは使えない:Ruby gemがハッキングされ、Web開発者からパスワードや秘密が盗まれる

Table of Contents

悪意のある者にはRESTは使えない:Ruby gemがハッキングされ、Web開発者からパスワードや秘密が盗まれる

約 1 週間前に修正されリリースされた、と呼ばれる Ruby ソフトウェア パッケージの古いバージョンが、rest-clientRuby Gems リポジトリから削除されました。被害者の認証情報を意図的にリモート サーバーに漏らしていたことが判明したためです。

フィンランドのヘルシンキにあるVisma社の開発者、Jussi Koljonen氏は、でハッキングされたコードを発見しrest-client v1.6.13、GitHubリポジトリで問題について議論するためのイシューを投稿しました。このgemは元々、Ruby開発者がウェブアプリにRESTリクエストを送信できるようにするために設計されていましたが、pastebin.comから悪意のあるコードを取得するように改変され、クライアントのホストマシンからユーザー名、パスワード、その他の秘密情報を盗み出していました。

ロッテルダムのBEEQUIP開発者、ヤン・ディンテル氏によると、感染したクライアントがローカルホスト以外のウェブサイトにRESTリクエストを送信すると、マルウェアは当該サイトのURLと環境変数を盗み出します。この環境変数には、認証トークン、APIキー、その他不正な手に渡ってほしくない秘密情報などが含まれている可能性があります。これらの情報は、悪意のあるコードの首謀者によって被害者のアカウントを乗っ取るために再利用される可能性があります。

また、感染したホスト上で任意の Ruby コードを実行できるようになり、サービスにログインするために関数が呼び出されるたびに、クラス#authenticate内のメソッドIdentityがオーバーロードされて、ユーザーの電子メール アドレスとパスワードが取得され、漏洩される可能性がありました。

帽子とネクタイをつけた漫画の男性。顔の特徴が疑問符に置き換えられています。

PureScript の npm インストーラーから悪意のあるコードが削除されましたが、そもそも誰がそこにそれを置いたのでしょうか?

続きを読む

クラックされた gem の元メンテナーで、ジョージア州アトランタを拠点とするソフトウェア開発者の Matthew Manning 氏は、rubygems.org のアカウントが侵害されたと述べ、すぐに謝罪した。

「今回の件については私の責任です」と彼はHacker Newsへの投稿で説明した。「私のrubygems.orgアカウントは、安全でない使い回しのパスワードを使用していました。このパスワードは他の情報漏洩事件でもインターネットに流出しています。このアカウントを作成したのはおそらく10年以上前なので、パスワードマネージャーを使うよりも前のものです。最近はあまり使っていないので、1Passwordの監査などでは発見できませんでした。どんなに努力しても、見落としてしまうことはあります。皆さん、パスワードのローテーションをしっかり行いましょう。」

マニング氏はThe Registerへのメールで、「この種の攻撃は『クレデンシャルスタッフィング』と呼ばれるもので、ブルートフォース攻撃のサブカテゴリーに分類されると思います。GitHubの問題が公表された頃、セキュリティ研究者から昨日メールが届くまで、何かが起こっているとは知りませんでした」と述べた。

このインシデントに対して作成されたCVEはCVE-2019-15224です。ダウンロードした人は約1,000人程度と推定されるrest-client v1.6.13ため、インシデントの影響は最小限にとどまると考えられます。

rubygems.org のメンテナーは、(8 月 13 日と 14 日にリリースされた) だけでなく、関連コードを含む、侵害された他のいくつかの gem も削除しましrest-client v1.6.10v1.6.13

  • bitcoin_vanity: 4.3.3
  • lita_coin: 0.0.3
  • coming-soon: 0.2.8
  • omniauth_amazon: 1.0.1
  • cron_parser: 1.0.12 1.0.13 0.1.4
  • coin_base: 4.2.2 4.2.1
  • blockchain_wallet: 0.0.6 0.0.7
  • awesome-bot: 1.18.0
  • doge-coin: 1.0.2
  • capistrano-colors: 0.5.5

この事件は、先月発見された別の侵害された gemや、npm リポジトリを通じて配布される複数の JavaScript ライブラリに対する同様の攻撃( 、、strong_password v0.0.7の侵害など)を思い起こさせます。purescript-installerelectron-native-notifyevent-stream

開発者アカウントへの攻撃が成功すると、悪意のある人物は攻撃の規模を拡大することができます。つまり、他の開発者が侵害されたコードを組み込み、その結果得られたアプリケーションを他の開発者が使用することを選択した場合、悪意のあるライブラリまたはモジュールによって、1 つのハッキングされたアカウントが多数のアカウントに拡大される可能性があるのです。

開発者を狙った攻撃が一般的になったため、rubygems.org、npm、PyPI などのソフトウェア リポジトリでは、開発者がアカウントを守るために多要素認証を使用するよう推奨しています。®

Discover More