Ruby on Rails 重大脆弱性「KindaRails2Shell」 公開から注意喚起・個別連絡までのネットde診断 ASMの対応
2026年7月30日(日本時間)、Webアプリケーションのフレームワークとして広く使われている「Ruby on Rails」に、深刻度「緊急(Critical)」と評価された脆弱性「KindaRails2Shell」(CVE-2026-66066)の修正版が公開されました。細工された画像ファイルなどを悪用され、サーバー内のファイルや認証情報を読み取られる可能性があり、影響を受ける構成では速やかな対応が必要です。
重大脆弱性が公開されたとき、最初の作業は「自組織のどこで、その対象技術が動いているのか」を特定することです。ここで時間がかかると、対応もその分だけ遅れます。
本記事では、KindaRails2Shellの概要と、企業が確認・対応すべきことを整理したうえで、修正版の公開を受けて当社のASMツール「GMOサイバー攻撃ネットde診断 ASM」(以下、ネットde診断 ASM)が実際にどう動いたかを、時系列でご紹介します。
目次
KindaRails2Shellとは
KindaRails2Shell(CVE-2026-66066)は、Ruby on Railsでアップロードされた画像の処理に関わる脆弱性です。
いくつかの用語を先に簡単に説明します。
- Ruby on Rails:Webサービスやアプリを効率よく開発するためのフレームワーク(開発の土台となるソフトウェア)です。国内外の多くのWebサービスで採用されています。
- Active Storage(アクティブストレージ):Ruby on Railsに標準で備わっている、ファイルのアップロードを担う仕組みです。アップロードされたファイルの受け取りと保存・管理までが役目で、サムネイル生成などの画像加工そのものは、後続で呼び出される画像処理ソフトウェアが担います。
- libvips(リブビップス):画像の読み込みや変換を高速に行うためのオープンソースのソフトウェア部品です。Ruby on Rails 7.0以降では、この libvips で画像を加工する構成が標準になっています。
- RCE(リモートコード実行):攻撃者が、離れた場所からサーバー上で任意のプログラムやコマンドを実行できてしまう状態を指します。実質的にサーバーを乗っ取られることに相当し、影響は最大級です。
この脆弱性の技術的な原因は、アップロードされたファイルの画像処理を libvips に渡す際、libvips が「安全性が検証されていない(unfuzzed)」と位置づけている一部の画像形式の処理機能が無効化されていなかった点にあります。その結果、攻撃者が細工したファイルをアップロードして画像処理を発生させると、本来アクセスできないはずのサーバー内のファイルが読み取られる可能性があります。
なお、報告者からは、悪用を少しでも遅らせるため、具体的な攻撃手法(PoC:概念実証コード)や攻撃チェーンの詳細は現時点で公開されていません。技術的な詳細は、2026年8月28日までにRails公式のセキュリティ告知フォーラムで開示される予定とされています。
本脆弱性は、Ethiack社のAndré Baptista氏・Bruno Mendes氏・Rafael Castilho氏からなるリサーチチームが最初に発見・報告し、その数日後にGMO Flatt Security株式会社のリサーチチームに所属するRyotaK氏が、独立に発見・報告したものです。その後、関係者間で開示に向けた調整が行われ、修正版の公開に至っています。なお本記事は、これら公開情報をもとに整理したものであり、本記事の発行主体が脆弱性を発見・報告したものではありません。
何が起きる可能性があるのか
影響を受ける構成では、次のような流れで被害が広がる可能性があります。
第一に、サーバー内の任意のファイルの読み取りです。攻撃者は細工したファイルをアップロードすることで、本来は外部からアクセスできないサーバー上のファイルの内容を読み取れる可能性があります。読み取られる対象には、アプリケーションが動作している環境の情報(プロセス環境)が含まれ、そこには secret_key_base(Railsアプリが暗号化や署名に使う重要な秘密鍵)や、データベース・クラウドストレージ・外部サービスの認証情報などが含まれることがあります。
第二に、読み取った情報を足がかりにした被害の拡大です。秘密鍵や認証情報が読み取られると、それらを悪用してサーバー上での任意コード実行(RCE)や、連携している他システムへの侵害(ラテラルムーブメント)に発展するおそれがあります。
重要な点として、本脆弱性は「一度の操作で即座にRCEが成立する」タイプの単発の攻撃とは限りません。報告者も、単発のRCEではないものの、成立に必要な前提条件が一般的な構成で満たされやすいと指摘しています。つまり、「すぐに乗っ取られるわけではないが、条件がそろえば深刻な被害につながり得る」という理解が正確です。
また、成立の条件は、Active Storageが有効になっていることと、その機能がどこで使われているかに依存します。ログインの有無そのものが条件になるわけではありません。したがって、ログインしていない利用者でも画像をアップロードできる機能を公開している場合は、アカウントを持たない攻撃者からも狙われ得ます。いずれにしても、自社のどの機能で画像のアップロードと加工が行われているかを把握することが、影響を判断する出発点になります。
影響を受ける条件
Ruby on Railsを使っているだけで、あるいは画像アップロード機能があるだけで、必ず影響を受けるわけではありません。公式情報および報告者の情報によると、影響を受けるのは、次の条件をすべて満たすアプリケーションです。
- Active Storageを使用し、ファイルのアップロードを許可している。Active Storageを利用している場合、明示的に無効化していない限り、標準ではファイルのアップロードが許可されます。
- 画像処理に「libvips(vipsプロセッサ)」を使う構成になっている。これはRuby on Rails 7.0以降の標準設定です。画像処理に「ImageMagick(Magick)」を使う構成の場合、この脆弱性の影響は受けません。
- 信頼できない利用者からの画像アップロードを受け付けている。アバターやサムネイル、プロフィール画像など、利用者がアップロードした画像を後で加工・表示する機能は該当し得ます。
- 環境内のlibvipsが、特定の画像形式を処理できる状態にある。例えばDebian・Ubuntuや、
rails newで生成される標準的なDocker環境などは、初期状態で条件に該当します。
なお、加工版(バリアント)を実際に生成しているかどうかは、独立した必須条件ではありません。上記の条件がそろっていれば影響を受け得る点に注意が必要です。最終的な影響有無の判断には、社内の開発・運用担当者による構成の確認が必要です。
対象バージョンと修正済みバージョン
公式のセキュリティアドバイザリ(Rails公式・GitHub Security Advisory GHSA-xr9x-r78c-5hrm)に基づく、影響を受けるバージョンと修正版は次のとおりです。
| Ruby on Rails(Active Storage)のバージョン | 影響 | 補足(構成条件) | 推奨する修正版 |
|---|---|---|---|
| 6.0.0 未満 | 対象外 | — | — |
| 6.0.0 〜 6.1.7.10 | 影響あり | Active Storageで非標準(デフォルト外)の設定をしている場合のみ | 7.2.3.2 |
| 7.0.0 〜 7.2.3.1 | 影響あり | 標準構成でも影響を受ける | 7.2.3.2 |
| 8.0.0 〜 8.0.5 | 影響あり | 標準構成でも影響を受ける | 8.0.5.1 |
| 8.1.0 〜 8.1.3 | 影響あり | 標準構成でも影響を受ける | 8.1.3.1 |
修正版として、Ruby on Rails(Active Storage)7.2.3.2 / 8.0.5.1 / 8.1.3.1 が公開されています。7.x系・8.x系は標準的な構成でも影響を受けるとされ、6.x系は標準とは異なる設定にしている場合に限り影響を受け得ます。
ネットde診断 ASMの対応タイムライン
KindaRails2Shellの修正版公開を受けて、ネットde診断 ASMの運用チームは次のように対応しました(いずれも2026年7月30日、日本時間)。
| タイミング | 対応内容 |
|---|---|
| 7/30 朝 | 運用チームが本脆弱性を検知して影響評価を開始し、影響範囲(直近4か月の診断でRailsの利用を検出した企業)を確認 |
| 7/30 午前中 | ご利用のお客様全体へ注意喚起のメールを配信、あわせてRailsの利用を検出したお客様へ個別のご案内を配信 |
検知から、注意喚起の配信と対象のお客様への個別のご案内までを、同日の午前中のうちに完了しました。
お客様全体へのご案内では、脆弱性の概要、対象バージョンと修正済みバージョン、そしてネットde診断 ASM上でRuby on Railsの利用有無を確認する方法(後述)をお伝えしています。
個別のご案内は、過去4か月間の当社診断結果において、本脆弱性の影響を受ける可能性があるRailsの利用を検出したお客様を対象にお送りしました。ネットde診断 ASMでは仕様上、Ruby on Railsの「バージョン」までは取得できません。そのため、対象のお客様にも、現在のご利用状況とバージョンをお客様自身でご確認いただき、対象バージョンに該当する場合は修正版へのアップデートをご検討いただくようお願いしています。また、過去の検出は現在もRailsをご利用中であることを示すものではない点も、あわせてお伝えしています。
なお、対象のお客様への個別のご案内は、本脆弱性の影響度を踏まえて今回の判断で実施したものです。標準サービス(SLA)に含まれる対応ではなく、すべての脆弱性について同様の対応をお約束するものではありません。
なぜ迅速に注意喚起・個別連絡ができたのか
重大脆弱性が公開された時、多くの組織で最初のボトルネックになるのは「自社のどこで、その対象技術が動いているのか分からない」ことです。資産の棚卸しから始めると、それだけで時間がかかることがあります。
ネットde診断 ASMは、平時からお客様のインターネット公開資産(サーバー、ドメイン、そこで動いている技術)を継続的に把握しています。今回も、この平時からの把握があったため、運用チームが本脆弱性の情報を把握した後まもなく「Ruby on Railsの利用を検出している企業はどこか」という影響範囲の確認まで進むことができ、注意喚起の配信と個別のご案内へつなげられました。
一方で、前章のとおり、ネットde診断 ASMで分かるのは「Ruby on Railsを利用している(していた)可能性がある」ところまでです。実際に影響を受けるかどうかは、バージョンや構成を社内で確認して初めて判断できます。ASMは対応の初動を早めるための手段であり、影響有無を断定するものではありません。
Ruby on Railsを利用する企業が行うべき対応
基本的な対策は、修正版へのアップデートです。以下の順で確認・対応を進めることをおすすめします。
1. 利用中のRuby on Rails(Active Storage)のバージョンを確認する。 対象バージョン(7.0.0〜8.1.3など)に該当するかを確認します。7.x〜8.x系は標準構成でも影響を受ける可能性があるため、構成にかかわらず原則として速やかな対応を検討してください。
2. 修正版へアップデートする。 該当する場合は、7.2.3.2 / 8.0.5.1 / 8.1.3.1(またはそれ以降)へアップデートします。これが根本的な対策です。
3. libvipsとruby-vipsのバージョンにも注意する。 修正版のActive Storageを利用するには、libvips 8.13以降と ruby-vips 2.2.1以降が必要です。これより古いバージョンでは、危険性のある画像処理を無効化できないため、ruby-vipsが導入されている環境ではRailsの起動時にエラーになります。画像解析や変換でlibvipsを使用していない場合は、ruby-vipsを依存関係から削除することで対応できることもあります。
4. すぐにアップデートできない場合の緩和策(あくまで一時的な措置)を検討する。 次の緩和策は存在しますが、いずれも根本対策であるアップデートの代替にはなりません。
- 環境内のlibvipsが8.13以降の場合、環境変数
VIPS_BLOCK_UNTRUSTEDを設定することで悪用を防げます。 - ruby-vipsが2.2.1以降の場合、initializerで
Vips.block_untrusted(true)を呼び出すことでも防げます。 - WAF(Webアプリケーションファイアウォール)は、一部の構成で時間稼ぎになる可能性はありますが、有効性は構成に大きく依存し、極めて限定的です。WAFを根本対策の代わりにすることはできません。
5. 情報が読み取られた可能性がある場合は、認証情報のローテーションを検討する。 公式アドバイザリは、アップデートは脆弱性を塞ぐものの、すでに情報が読み取られていた場合の被害までは取り消せないとしています。そのため、露出の可能性がある環境では、secret_key_base、マスターキー(config/master.key または RAILS_MASTER_KEY)と暗号化された認証情報ファイルで復号される値、Active Storageの保存先サービス(S3・GCS・Azure等)のキー、データベースの認証情報、連携する外部サービスのトークン・キーなど、アプリケーションのプロセスから読み取れる秘密情報を「露出した可能性があるもの」として扱い、変更(ローテーション)することが推奨されています。なお、secret_key_base を変更するとログインセッションが無効になり、利用者は再ログインが必要になります。
すでに影響を受けていた可能性が懸念される場合や、対応の進め方に迷う場合は、社内の開発・運用担当者やセキュリティの専門家にご相談ください。
自社でRuby on Railsを利用しているか確認する方法
「そもそも自社がRuby on Railsを使っているか把握できていない」というケースも少なくありません。まずは、次の観点で確認することをおすすめします。
- 自社で開発・運用しているWebサービスやアプリの技術スタック(利用フレームワーク)を、開発・運用担当者に確認する。
- 外部ベンダーやパートナーに委託しているサービスについて、Ruby on Railsの利用有無と対象バージョン該当を問い合わせる。
- インターネットに公開しているサーバーやドメインを棚卸しし、それぞれで動いている技術を把握する。
こうした確認は社内資料やヒアリングで進められますが、把握できていない公開資産(いわゆる「野良サーバー」やサブドメインなど)があると、確認漏れが生じやすくなります。外部から見えている自社の資産を客観的に把握する手段として、ASM(アタックサーフェスマネジメント)の考え方が役立ちます。
ネットde診断 ASMで確認できること・できないこと
今回のKindaRails2Shellのケースに即して、ネットde診断 ASMで確認できること・できないことを整理します。
確認できること
- 外部から確認できる範囲で、Ruby on Railsを利用している可能性のあるドメインを把握できます。
- ネットde診断 ASMをご利用のお客様は、「指摘事項一覧」で次の項目を検索することで、Ruby on Railsの利用有無の確認に役立てられます。
Web 関連技術スタックの検出(rubyonrails rails)
この検索結果が表示された場合は、対象ドメインでRuby on Railsの利用を検知していることを示します。
確認できないこと(重要)
ネットde診断 ASMでは、仕様上、Ruby on Railsのバージョン情報は取得できません。 そのため、対象バージョンに該当するか(影響を受けるか)を、ASMの結果だけで判断することはできません。実際のバージョンは、お客様の環境で確認する必要があります。
検索結果が表示されない場合は、外部から確認できる範囲ではRuby on Railsの利用が検知されていない、ということを意味します。Ruby on Railsを利用していないと断定できるものではありません。 念のため、お客様の環境でも利用有無をご確認ください。
このように、ASMは「どこでRuby on Railsが使われている可能性があるか」の当たりをつける手段として有効ですが、影響の有無を最終的に判断するには、社内の開発・運用担当者によるバージョンと構成の確認が必要です。今回、Railsの利用を検出したお客様へ個別にご案内した際も、実際のバージョン確認はお客様側でお願いしています。
GMOサイバー攻撃ネットde診断 ASMについて
ネットde診断 ASMは、組織のインターネット公開資産を自動で発見・可視化し、そこで利用されている技術やリスクを継続的に把握するためのツールです。今回のような重大脆弱性が公開された際に、「自社のどこに対象技術が使われている可能性があるか」を早期に確認する手がかりとしてご活用いただけます。
前述のとおり、ASMは影響有無を断定するものではなく、社内での確認と組み合わせてご利用いただくことを前提としています。そのうえで、公開資産の棚卸しや利用技術の把握、重大脆弱性公開時の初動にお困りの際は、確認手段の一つとしてご検討ください。
影響範囲の確認や日頃の資産把握についてご相談がありましたら、お気軽にお問い合わせください。
専門知識がなくても使えるASMツール ネットde診断 ASM
ネットde診断 ASMは、ドメインを入力するだけでIT資産の棚卸しと定期的な脆弱性診断が可能です。セキュリティの専門知識がない方も手軽にご利用いただけます。
資料ダウンロード注記
- 本記事は、公開時点で入手可能な公開情報をもとに整理したものです。速報性を優先しているため、今後の情報更新により内容が変わる可能性があります。最新かつ正確な情報は、必ず一次情報(Rails公式アドバイザリ等)をご確認ください。
- 本脆弱性は、Ethiack社(André Baptista氏・Bruno Mendes氏・Rafael Castilho氏)が最初に発見・報告し、その数日後にGMO Flatt Security株式会社のリサーチチーム(RyotaK氏)が独立に発見・報告したものです。本記事の発行主体が発見・報告したものではありません。
- 本記事は、事態の把握と必要な対応の促進を目的とするものであり、脆弱性の悪用を助長する意図はありません。
参考情報
- Possible arbitrary file read and remote code execution in Active Storage variant processing(Ruby on Rails 公式セキュリティアドバイザリ/GHSA-xr9x-r78c-5hrm)
- [CVE-2026-66066]Possible arbitrary file read and remote code execution in Active Storage variant processing(Ruby on Rails Discussions/Security Announcements)
- 深刻度「緊急」のRails脆弱性「KindaRails2Shell」(CVE-2026-66066)の概要と対応指針(GMO Flatt Security Blog)
- KindaRails2Shell – Critical RCE in Rails via Active Storage (CVE-2026-66066)(Ethiack)
監修:GMOサイバーセキュリティ byイエラエ 編集部
企業の情報セキュリティ担当者や開発者向けに、サイバーセキュリティに関する情報を発信しています。