
ハッカーたちは、オープンソースの反応型Pythonノートブック・プラットフォームMarimoの重大な脆弱性を、公開からわずか10時間後に悪用し始めた。
この欠陥は、Marimoのバージョン0.20.4とそれ以前で、認証なしでリモートコード実行を可能にする。これはCVE-2026-39987として追跡され、GitHubは10点満点中9.3点のクリティカルスコアで評価した。
クラウドセキュリティ企業Sysdigの研究者によると、攻撃者は開発者向け勧告の情報からエクスプロイトを作成し、機密情報を流出させる攻撃にすぐに使い始めたという。
MarimoはオープンソースのPythonノートブック環境で、一般的にデータサイエンティスト、ML/AI実務者、研究者、データアプリやダッシュボードを構築する開発者が使用している。かなり人気のあるプロジェクトで、20,000のGitHubスターと1,000のフォークがある。
CVE-2026-39987は、WebSocketのエンドポイント’/terminal/ws’が適切な認証チェックを行わずに対話型端末を公開し、認証されていないクライアントからの接続を許してしまうことが原因です。
これにより、Marimoプロセスと同じ特権で実行される完全な対話型シェルに直接アクセスできるようになります。
Marimoは4月8日にこの欠陥を公表し、昨日、バージョン0.23.0をリリースして対処した。開発者は、この欠陥は編集可能なノートブックとしてMarimoをデプロイしたユーザーと、編集モードで–host 0.0.0.0を使ってMarimoを共有ネットワークに公開したユーザーに影響すると指摘している。
野生での悪用
Sysdigによると、脆弱性の詳細が公開されてから最初の12時間以内に、125のIPアドレスが偵察活動を開始した。
公開から10時間も経たないうちに、研究者はクレデンシャルの窃取操作における最初の悪用の試みを観測した。
攻撃者はまず/terminal/wsエンドポイントに接続し、リモートコマンドの実行を確認するための短いスクリプトシーケンスを実行することで脆弱性を検証し、数秒以内に切断した。
その後すぐに再接続し、手動で偵察を開始。pwd、whoami、lsといった基本的なコマンドを発行して環境を把握し、続いてディレクトリナビゲーションを試み、SSH関連の場所をチェックした。
次に、攻撃者はクレデンシャル・ハーベスティングに焦点を当て、すぐに.envファイルをターゲットにし、クラウドのクレデンシャルやアプリケーション・シークレットを含む環境変数を抽出した。その後、作業ディレクトリ内の追加ファイルの読み取りを試み、SSHキーのプロービングを続けた。

ソースはこちら:Sysdig
今週のSysdigのレポートによると、クレデンシャル・アクセスの全フェーズは3分以内に完了した。
およそ1時間後、攻撃者は同じエクスプロイト・シークエンスを使用した2回目のエクスプロイト・セッションのために戻ってきた。
研究者によると、この攻撃の背後には、自動化されたスクリプトではなく、.env認証情報やSSHキーを盗むといった価値の高い目的に焦点を当てた、実践的なアプローチをとる「几帳面なオペレーター」がいるようだという。
攻撃者は、永続性のインストール、クリプトミナーの展開、またはバックドアを試みておらず、迅速でステルスな操作を示唆している。
Marimoユーザーは、直ちにバージョン0.23.0にアップグレードし、’/terminal/ws’へのWebSocket接続を監視し、ファイアウォールを介して外部からのアクセスを制限し、すべての公開された秘密をローテーションすることが推奨されます。
アップグレードが不可能な場合、効果的な緩和策は ‘/terminal/ws’ エンドポイントへのアクセスを完全にブロックするか無効にすることである。
.ia_ad { background-color:.ia_ad { background-color: #f0f6ff; width: 95%; max-width: 800px; margin: 15px auto; border-radius: 8px; border:1px solid #d6ddee; display: flex; align-items: stretch; padding: 0; overflow: hidden; }:0; overflow: hidden; } .ia_lef { flex: 1; max-width: 220px; height: auto; display: flex; align-items: stretch; } .ia_lef a { display: flex; width: 100%; height: 100%; } .ia_lef a img { width: 100%; height: 100%; border-radius: 8px 0 0 8px; margin: 0; display: block; } .ia_rig { flex: 2; padding:display: flex; flex-direction: column; justify-content: center; } .ia_rig h2 { font-size: 17px !important; font-weight: 700; color:#line-height: 1.4; font-family:margin: 0 0 14px 0; } .ia_rig p { font-weight: bold; font-size: 14px; margin: 0 0 clamp(6px, 2vw, 14px) 0; } .ia_button { background-color:#border:1px solid #3b59aa; color: black; text-align: center; text-decoration: none; border-radius: 8px; display: inline-block; font-size: 16px; font-weight: bold; cursor: pointer; padding:width: fit-content; } .ia_button a { text-decoration: none; color: inherit; display: block; } @media (max-width: 600px) { .ia_ad { flex-direction: column; align-items: center; } .ia_lef { max-width: 100%; } .ia_lef a img { border-radius: 8px 8px 0 0; } .ia_rig { padding:15px;
width: 100%;
}
.ia_button {
width: 100%;
margin: 0px auto;
}
}
Mythosが発見した問題の99%はまだ未パッチである。
AIは4つのゼロデイを1つのエクスプロイトに連鎖させ、レンダラーとOSのサンドボックスの両方をバイパスした。新たなエクスプロイトの波が押し寄せている。
自律的検証サミット(5月12日、14日)では、自律的でコンテキストに富んだ検証がどのようにエクスプロイト可能なものを見つけ、コントロールが有効であることを証明し、修復のループを閉じるかをご覧ください。





Comments