-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA256 各位 JPCERT-AT-2026-0021 JPCERT/CC 2026-07-30(公開) 2026-08-03(更新) <<< JPCERT/CC Alert 2026-07-30 >>> Ruby on RailsのActive Storageにおけるリモートコード実行につながる脆弱性(CVE-2026-66066)に関する注意喚起 https://www.jpcert.or.jp/at/2026/at260021.html I. 概要 2026年7月29日(現地時間)、Ruby on RailsのActive Storageにおけるリモー トコード実行につながる脆弱性(CVE-2026-66066、通称「KindaRails2Shell」) に関する情報が公表されました。本脆弱性が悪用された場合、遠隔の第三者が 細工したファイルをアップロードすることによって、サーバー上のファイルや 認証情報を読み取り、リモートコード実行に至る可能性があります。 GitHub rails / rails Possible arbitrary file read and remote code execution in Active Storage variant processing https://github.com/rails/rails/security/advisories/GHSA-xr9x-r78c-5hrm Ethiack KindaRails2Shell - Critical RCE in Rails via Active Storage (CVE-2026-66066) https://ethiack.com/info-hub/research/kindarails2shell-rails-rce-cve-2026-66066 GMO Flatt Security Blog 深刻度「緊急」のRails脆弱性「KindaRails2Shell」(CVE-2026-66066)の概要と対応指針 https://blog.flatt.tech/entry/kindarails2shell_rails JPCERT/CCでは、本脆弱性に関するエクスプロイトコードが公開されているこ とを確認しています。今後、本脆弱性を悪用する攻撃が広く行われる可能性が あります。 当該製品を利用している場合、後述の「III. 対策」以降に記載の情報および 開発者が提供する最新の情報をご確認の上、早期の対策の実施とあわせて侵害 されていないかどうかの調査の実施を検討してください。 ** 更新:2026年8月3日追記 ********************************************* 複数の概念実証(PoC)コードが公開されたことを受けて、2026年7月31日に開 発者がフォレンジック調査用のツールおよびガイドを公開しました。「V. 侵 害検出方法」に記載の情報を確認し、本脆弱性を悪用する攻撃の影響を受けて いないか調査してください。 ************************************************************************ II. 対象 本脆弱性の対象となる製品およびバージョンは次のとおりです。詳細は、開発 者が提供する最新の情報をご確認ください。 - activestorage 7.2.3.2より前のバージョン - activestorage 8.0から8.0.5.1より前のバージョン - activestorage 8.1から8.1.3.1より前のバージョン 本脆弱性は、次の3条件をすべて満たす環境に影響します。 - Active Storageの画像処理にlibvipsを使用していること(variantプロセッサが:vipsであること) - 未信頼のユーザーからの画像アップロードを受け付けていること(アプリケーションの機能またはActive Storageのdirect upload経由) - libvipsにおいて、特定のサードパーティライブラリを使用し、未信頼コンテンツには安全でないもの(unfuzzed)と分類されたファイルローダーが有効であること ※Active Storageのdirect upload機能は、デフォルトで有効となっており、 アプリケーション固有の認証・認可が標準では実装されていません。そのため、 標準のdirect uploadエンドポイントが外部から利用可能な場合、管理画面や APIなどのユーザー向けアップロード機能を持たないアプリケーションでも、 本脆弱性の対象となる可能性があります。 ※Rails 6.0.0から6.1.7.10までのバージョンについては、Active Storageが デフォルトとは異なる設定でセットアップされている場合に影響を受ける可 能性があることをEthiackが指摘しています。 ※Rails 6.0.0より前のバージョンでは本脆弱性の影響を受けないことを GMO Flatt Securityが指摘しています。 III. 対策 開発者のアドバイザリを参考に、本脆弱性を修正する最新のアップデートを適 用してください。 なお、アップデートにあたっては以下の点にご留意ください。 - libvipsが8.13未満およびruby-vipsが2.2.1未満の場合、Active Storageの起動時に例外が発生し、アプリケーションが起動しません。事前にlibvipsを8.13以上およびruby-vipsを2.2.1以上へアップデートしてください あわせて、エクスプロイトコードがすでに公開されていることから、影響を受 ける可能性がある環境では、侵害を受けたことを前提とした対応が必要です。 そのため、読み取り可能なすべての認証情報を漏えい済みとして扱い、変更す ることを推奨します。 IV. 軽減策 修正アップデートをすぐに適用できない場合、libvipsが8.13以上、または ruby-vipsが2.2.1以上の環境では、回避策を適用できます。詳細は、開発 者が提供する最新の情報をご確認ください。 なお、発見者はWAFによる対策の有効性は極めて限定的であり、WAFによる緩和 策は修正版へのアップデートの代替にはならないとの指摘をしています。 V. 侵害検出方法 ** 更新:2026年8月3日追記 ********************************************* 開発者がフォレンジック調査用のツールおよびガイドを公開しました。開発者 が提供する最新の情報を参考に、本脆弱性を悪用する攻撃の影響を受けていな いか調査してください。 Ruby on Rails Discussions [CVE-2026-66066] Attack details, and tools to perform a forensic investigation https://discuss.rubyonrails.org/t/cve-2026-66066-attack-details-and-tools-to-perform-a-forensic-investigation/91441 GitHub rails / rails-forensics-CVE-2026-66066 rails-forensics-CVE-2026-66066 https://github.com/rails/rails-forensics-CVE-2026-66066 ************************************************************************ VI. 参考情報 Ruby on Rails Guides Active Storage Overview https://guides.rubyonrails.org/active_storage_overview.html 今回の件につきまして提供いただける情報がございましたら、JPCERT/CCまで ご連絡ください。 ________ 改訂履歴 2026-07-30 公開 2026-08-03 「I. 概要」「V. 侵害検出方法」を追記、「II. 対象」の内容を修正、「V. 参考情報」を「VI. 参考情報」に変更および内容を修正 ====================================================================== 一般社団法人JPCERTコーディネーションセンター(JPCERT/CC) サイバーセキュリティコーディネーショングループ Email:ew-info@jpcert.or.jp -----BEGIN PGP SIGNATURE----- iQIcBAEBCAAGBQJqcCKIAAoJEKUOCs1Y8SQyxeUQAKt2dd+KkjW9Qs1fNe7vjH4V rLl7LJHQ3bpHW7lHTnCvP02a2BBKs/l2MzTW+rVLBh/50aokWJthQ2W1P/CwPVVY HVY2CDZyGnQ6EBjgF0W/+RO4+w2ZvX2SL4Mrkif9oRt/AQ8llHZrE7Xabo85eg0N +pSropOujNiZTWAUpNugeZRlD3mAQrDqU/pdd/gLv7c3IPKDC7zPLknSgtpPyNpN 2V2ohC1bGRfxFmp3bISNnOXQi2OZCtCNGeDElaBrXRIW6ZChgsK+ENVexyBbHFTA 3yGkYeUAQu4NhnHxZzrYxpjnB9ve4MQlcRQM2ctnCZ1xBc85SE124WntNgkpVSCI eC2sbM9Cu34ZnujcbmZv0hlTew3gfpisqPTiMuDpbG2H9zjI43DfPNQzsMx1rdzW j9vj4sylcVx5mjzq8DeFazTL4ca5SJ1lRE3Ka1GeMD2ZpGhNlD7wxD1kMUjwfj6D VcmocBvTe2zZanOBk+8PvsUJp4vSsdbsgkEaVkwX5jHV4ZSIey5HwiIni+BWBcFn VoHDHfsPdRSl7gHcm1rCCvpM5lmSYpG5oytDV81ULD8JI9iSwkF+nXE9ZySS8EZ1 iDJ8WWsReBCcb94CDaU/sFTeTiC/Onc4TMlC1j7eBV4JLP7r1jkY2WXiRJOib2Aq QeH4WhvgP9rmYgoQOdEH =eIDX -----END PGP SIGNATURE-----