魔法からマルウェアへ: OpenClawのAgent機能はいかにしてマルウェアを運ぶようになったのか?
(1password.com)タイトルは少し変更しました。正確な英語タイトルは「魔法からマルウェアへ: OpenClawのエージェントスキルが攻撃面になる仕組み」くらいになります。
2026年2月2日の記事で、読んでみる価値がありそうなので共有します。
魔法からマルウェアへ: OpenClawのエージェントスキルが攻撃面になる仕組み
はじめに: エージェントの強力さがそのまま危険になる理由
数日前、私はOpenClawがなぜ未来へのポータルのように感じられるのか、そしてその未来がなぜ非常に具体的な形で恐ろしく見えるのかについての記事を公開しました。
要点はこうです。OpenClawのようなエージェントゲートウェイが強力なのは、あなたのファイル、ツール、ブラウザ、ターミナル、そしてあなたの思考や作業内容を蓄えた長期「メモリ」ファイルに実際にアクセスできるからです。そしてこの組み合わせは、現代のインフォスティーラー(情報窃取型マルウェア)が狙う対象と完全に一致します。
この記事は、その不穏な「そしてついに起きた」という続編です。
問題は、エージェントがインストールされた後に危険になり得ることだけではありません。エージェントの機能とスキルレジストリを配布する生態系そのものが、すでに攻撃面になっています。
⚠️ 警告: 会社の端末でOpenClawを使わないでください
OpenClawを試しているなら、会社の端末では絶対に使わないでください。これは断固たる警告です。
最初の記事で私は、OpenClawを一種のファウスト的取引だと表現しました。OpenClawが魅力的なのは、あなたのローカルマシン、アプリ、ブラウザセッション、ファイル、そして長期記憶に実際にアクセスできるからです。しかしその同じアクセス権は、企業の認証情報を持つ、あるいは本番システムにアクセスできるマシン上で、これを安全に実行する方法がまだないことを意味します。
すでに業務用端末でOpenClawを実行してしまったなら、潜在的なセキュリティインシデントとして扱い、直ちにセキュリティチームへ連絡してください。 症状が出るまで待ってはいけません。そのマシンでの作業を止め、組織のインシデント対応手順に従ってください。
スキルは単なるMarkdownファイルにすぎない。そしてそれこそが問題です
OpenClawの生態系では、「スキル」はたいていMarkdownファイルです。エージェントに専門的な作業の進め方を教える1ページ程度の手引きです。実際には、このMarkdownにはリンク、コピー&ペースト用コマンド、ツール呼び出しのレシピなどを含めることができます。
それは、人間やエージェントが実際に文書をどう消費するかを考えるまでは無害に見えます。
- 「前提条件はこちらです」
- 「このコマンドを実行してください」
- 「中核となる依存関係をインストールしてください」
- 「これをターミナルに貼り付けてください」
エージェント生態系において、Markdownは単なる「コンテンツ」ではありません。 Markdownはインストーラーです。
危険な誤解: 「MCPがスキルを安全にしてくれる」
一部の人は、MCP(Model Context Protocol)層がこれをより安全にすると考えています。ツールが構造化インターフェースを通じて公開され、ホストやサーバー実装によっては、明示的なユーザー同意や認可制御が可能だからです。
しかし、スキルはMCPをまったく使う必要がありません。
エージェントスキルの仕様はMarkdown本文に何の制限も設けておらず、スキルには「エージェントが作業を実行する助けになる」あらゆる指示を含められます。ここには、ターミナルでコピー&ペーストするコマンドも含まれます。さらに、スキルはMarkdownに加えてスクリプトを同梱できるため、MCPのツール境界の外で実行が起こり得ます。
したがって、あなたのセキュリティモデルが「MCPがツール呼び出しを制御してくれるはずだ」という前提なら、ソーシャルエンジニアリング、直接的なシェル指示、あるいは同梱コードを通じてMCPを回避する悪性スキルに、依然としてやられる可能性があります。MCPは安全なシステムの一部にはなり得ますが、それ自体が安全を保証するものではありません。
同じくらい重要なのは、これがOpenClaw固有の問題ではないという点です。「スキル」は、多くのエージェントがオープンなAgent Skills形式を採用するにつれて、ますます移植可能になっています。この形式では、スキルはSKILL.mdファイルを中心に、メタデータと自由形式の指示を含むフォルダであり、スクリプトやその他のリソースも同梱できます。OpenAIのドキュメントでも、同じ基本構造(SKILL.mdファイル + オプションのスクリプトやアセット)が説明されています。つまり、悪性の「スキル」は単なるOpenClawの問題ではなく、同じ標準をサポートするあらゆるエージェント生態系に広がり得る配布メカニズムだということです。
発見したこと: 最も多くダウンロードされていたスキルがマルウェアの配布手段だった
ClawHub(明白な理由からリンクはしません)を見ていたとき、当時最も多くダウンロードされていたスキルが「Twitter」スキルであることに気づきました。見た目は普通でした。説明、想定用途、概要など、何も考えずにインストールしてしまいそうな内容でした。
しかし、このスキルが最初にしていたことは、「openclaw-core」という「必須依存関係」を紹介し、プラットフォーム別のインストール手順を提示することでした。その手順には、普通のドキュメントリンクに見える便利なリンク(「here」「this link」)が含まれていました。
しかし、それらは正常なリンクではありませんでした。
2つのリンクはいずれも悪性インフラへつながっていました。典型的な段階的配布フローです。
- スキルの概要が前提条件のインストールを促す。
- リンクは、エージェントにコマンドを実行させるよう設計されたステージングページへ誘導する。
- そのコマンドが難読化されたペイロードをデコードして実行する。
- ペイロードが第2段階のスクリプトを取得する。
- スクリプトがバイナリをダウンロードして実行する。この過程には、macOS標準のアンチマルウェア機構であるGatekeeperにスキャンさせないため、macOSの隔離属性を削除する処理も含まれていた。
具体的なコマンドやURLは、意図的にここには貼り付けません。この仕組みは残念ながら単純であり、繰り返すことは防御側よりも攻撃側を利するからです。重要なのは、これが「怪しいリンク」ではなかったということです。 これはインストール手順に偽装された完全な実行チェーンでした。
確認済み: 情報窃取型マルウェア
私は最終バイナリを安全にダウンロードし、VirusTotalに提出しました。
結果に曖昧さはありませんでした。 macOS向け情報窃取型マルウェアと判定されました。
これは単に「コンピュータに感染する」だけのマルウェアではありません。その端末上の価値あるものを根こそぎ奪います。
- ブラウザセッションとCookie
- 保存された認証情報と自動入力データ
- 開発者トークンとAPIキー
- SSH鍵
- クラウド認証情報
- アカウント乗っ取りに転用できるあらゆるもの
エージェントスキルをインストールするような種類の人にとって、まさにそのマシンこそが盗む価値のある標的です。
これは単発ではなかった。組織的なキャンペーンだった
この内容を内部で共有した後、より広範な報道によって規模が明らかになりました。数百件のOpenClawスキルが、ClickFix型の手口を使ってmacOSマルウェアを配布していたと報じられています。
この詳細が重要なのは、これが実際に何であるかを裏づけるからです。
単発の悪意あるアップロードではありません。
意図的な戦略です。 「スキル」を配布チャネルとし、「前提条件」をソーシャルエンジニアリングの包装紙として使うのです。
「役に立つもの」がエージェントの世界で「敵対的なもの」になるとき
私たちは長年にわたり、パッケージマネージャやオープンソースレジストリがサプライチェーン攻撃のベクトルになり得ることを学んできました。
エージェントスキルレジストリは、その次の章です。ただし違うのは、「パッケージ」自体が文書だという点です。
そして、これが攻撃経路をさらに滑らかにします。
- Markdownファイルが危険だとは誰も予想しない。
- 人はインストール手順を素早く辿るよう訓練されている。
- 人は「最多ダウンロード」を正当性の代替指標として信頼する。
- エージェント生態系では、指示を読むことと実行することの境界が崩れる。
たとえエージェントがシェルコマンドを直接実行できなくても、危険なことは十分にできます。 危険な行動を普通のことに見せられるのです。
悪意ある前提条件を「標準的なインストール手順」として自信満々に要約できます。ワンライナー(1行コマンド)を貼り付けるよう誘導できます。ためらいを減らせます。
そして、もしあなたのエージェントがローカルコマンドを実行できるなら、悪性スキルは「悪いコンテンツ」ではありません。 それは親切なドキュメントに包まれたリモートコード実行です。
今すぐやるべきこと
OpenClawまたはスキルレジストリを使っているなら
会社の端末でこれを実行しないでください。安全な方法はありません。すでに使ってしまった、あるいはスキル内の「インストール」コマンドを実行してしまったなら、 直ちにセキュリティチームへ連絡し、潜在的な侵害として扱ってください。
- その端末での機密性の高い作業を止める。
- まずセッションとシークレットをローテーションする: ブラウザセッション、開発者トークン、SSH鍵、クラウドコンソールのセッション。
- 最近のログイン履歴を確認する: メール、ソース管理、クラウド、CI/CD、管理コンソール。
それでも試したいなら、企業アクセス権がなく、保存済み認証情報もない隔離されたマシンを使ってください。
スキルレジストリを運営しているなら
あなたはApp Storeを運営しているのと同じです。悪用されることを前提にしてください。
- ワンライナーのインストールコマンド、エンコード済みペイロード、隔離解除、パスワード保護されたアーカイブをスキャンする。
- 出所確認と公開者レピュテーションの仕組みを追加する。
- 外部リンクやインストール手順に警告と摩擦を入れる。
- 上位ランクのスキルをレビューし、悪性スキルを迅速に削除する。
ここではMarkdownが実行可能な意図です。
エージェントフレームワークを作っているなら
スキルが武器化されることを前提にしてください。
- シェル実行をデフォルト拒否にする。
- ブラウザ、キーチェーン、認証情報ストアへのアクセスをサンドボックス化する。
- 権限は具体的で、時間制限があり、取り消し可能にする。
- リモートコードやコマンド実行に摩擦を加える。
- 出所と挙動をエンドツーエンドで記録する。
未来のための設計: エージェントに必要な信頼レイヤー
これは、前回の記事で私が述べた主張を最も明確に示す証拠です。OpenClawが強力なのは、意図と実行の間の距離を崩すからです。それこそが魔法です。しかし同時に、相当なリスクも伴います。機能がスキルとして配布され、文書を通じてインストールされるとき、レジストリはサプライチェーンになり、最も簡単なインストール経路が攻撃者に最も好まれる経路になります。
答えは、エージェント開発をやめることではありません。 答えは、エージェントの周囲に欠けている信頼レイヤーを構築することです。 スキルには出所証明が必要です。実行には仲介が必要です。権限は具体的で、取り消し可能で、継続的に適用される必要があります。一度付与して忘れてよいものではありません。エージェントが私たちの代わりに行動するなら、認証情報や機微な操作は、たまたま実行された任意のコードに「持ち去られる」ようであってはなりません。これらは仲介され、管理され、リアルタイムで監査されるべきです。
だからこそ、私たちには次のレイヤーが必要なのです。「スキル」がサプライチェーンになる世界では、唯一安全な未来とは、すべてのエージェントが固有のアイデンティティを持ち、その時点で必要最小限の権限だけを持ち、そのアクセスが時間制限付きで、取り消し可能で、追跡可能である未来です.
2件のコメント
> ClawHub(明白な理由からリンクは張りません)を見て回っていたところ、当時最も多くダウンロードされていたスキルが「Twitter」スキルであることに気付きました。
最も多くダウンロードされていたパッケージがウイルスだったということですね……
サプライチェーン攻撃はどこにでもありますが、最も多くダウンロードされていたスキルにウイルスが入っているのを検知できなかったとは、深刻な状況ですね。
開発者がAIの作ったコードも読まずに配布してしまうようなプログラムのエコシステムらしい話です。
ちょっと大げさな主張のように思います。スキルに対する適切なセキュリティ体制がまだ整っていないのは事実ですが、未検証のソースをダウンロードして実行したときに攻撃が起こり得るのは、言語向け/アプリ向けのパッケージマネージャーでも同じではないでしょうか? スキルはモデルの性能によって異なり、実行されるかどうかも不確定ですが、コードは必ず確定的に実行されるのですから。