OpenClawセキュリティ総点検——512件の脆弱性と悪意あるスキルから身を守る実践ガイド
OpenClawのセキュリティ監査で512件の脆弱性が発覚し、ClawHubでは800件超の悪意あるスキルが確認されました。Docker隔離、認証設定、スキル検証のハンズオンで安全な運用環境を構築します。

はじめに
先日のOpenClaw 3部作では、セットアップからRalph Loopによる自律開発まで解説しました。しかし、2026年2月に入りOpenClawのセキュリティ状況が急速に深刻化しています。
- セキュリティ監査で512件の脆弱性が発見(うち8件がCritical)
- ClawHubの公開スキルのうち800件超が悪意あるマルウェアと判定
- インターネット上に約1,000件の認証なしインスタンスが公開状態
- 1クリックRCE(リモートコード実行)の脆弱性 CVE-2026-25253 が報告
OpenClawを「使い方」だけ紹介して「守り方」を書かないのは無責任です。本記事では、OpenClawを安全に運用するための具体的な対策をハンズオン形式で解説します。
この記事を読み終わると、以下ができるようになります:
- OpenClawの主要な脆弱性カテゴリを理解し、リスクを正しく評価できる
- Docker隔離環境でOpenClawを安全に実行できる
- 認証とネットワーク制御を適切に設定できる
- ClawHubスキルの安全性を検証してからインストールできる
OpenClawセキュリティの現状
512件の脆弱性監査レポート
2026年1月末に実施されたセキュリティ監査の結果は衝撃的でした。
| 深刻度 | 件数 | 主な内容 |
|---|---|---|
| Critical | 8件 | リモートコード実行(RCE)、認証バイパス |
| High | 47件 | 認証情報の漏洩、権限昇格 |
| Medium | 189件 | プロンプトインジェクション、設定不備 |
| Low | 268件 | 情報漏洩、ログ出力の不備 |
特に深刻なのが CVE-2026-25253(1クリックRCE)です。攻撃者が細工したメッセージをOpenClawに送信するだけで、ホストマシン上で任意のコードを実行できる脆弱性が存在していました。v2026.2.14以降で修正済みですが、アップデートしていないインスタンスは依然として脆弱です。
ClawHavoc——組織的なマルウェア配布
ClawHub(OpenClawのスキルマーケットプレイス)で発覚した問題はさらに深刻です。
セキュリティ研究者Oren Yomtov氏の調査によると:
| 指標 | 数値 |
|---|---|
| 調査時点のClawHubスキル総数 | 2,857件 |
| 悪意ありと判定されたスキル | 341件 |
| 単一の攻撃グループ(ClawHavoc)によるもの | 335件 |
| 2月16日時点の悪意あるスキル数(拡大後) | 824件超 |
| スキル総数(拡大後) | 10,700件超 |
偽スキルは「トレーディングBot」「金融アシスタント」「スキル管理ツール」等を装い、AuthTool という名前の窃取プログラムを同梱していました。
認証なしインスタンスの大量公開
Kaspersky社の調査では、認証が一切設定されていないOpenClawインスタンスが約1,000件インターネット上で発見されています。OpenClawのデフォルト設定では 127.0.0.1(localhost)からの接続を信頼し、認証なしでアクセスを許可します。VPSやクラウドサーバーにデプロイした際にこの設定を変更しないと、誰でもあなたのOpenClawを操作できてしまいます。
セキュリティ対策の全体像
これらのリスクに対し、以下の4層で防御します。
ハンズオン 1: Docker隔離環境の構築
OpenClawを安全に実行する最も基本的な対策は、Docker Sandboxによる隔離です。ホストマシンに直接インストールするのではなく、コンテナ内で実行することで、万が一の侵害時にも影響範囲を限定できます。
Step 1: docker-compose.ymlの作成
プロジェクトディレクトリに以下のファイルを作成します。
services:
openclaw:
image: openclaw/openclaw:2026.2.23
container_name: openclaw-secure
restart: unless-stopped
user: "1000:1000"
ports:
- "127.0.0.1:18789:18789"
volumes:
- openclaw-data:/app/data
- openclaw-config:/app/config
environment:
- OPENCLAW_AUTH_ENABLED=true
- OPENCLAW_AUTH_TOKEN=${OPENCLAW_AUTH_TOKEN}
- OPENCLAW_LOG_LEVEL=info
read_only: true
tmpfs:
- /tmp:size=100M
security_opt:
- no-new-privileges:true
cap_drop:
- ALL
deploy:
resources:
limits:
memory: 2G
cpus: "2.0"
volumes:
openclaw-data:
openclaw-config:
この設定のポイントを解説します。
| 設定 | 目的 |
|---|---|
user: "1000:1000" | 非rootユーザーで実行し、権限昇格を防止 |
127.0.0.1:18789:18789 | localhostのみにバインドし、外部アクセスを遮断 |
read_only: true | ファイルシステムを読み取り専用にし、書き込みをデータ用ボリュームに限定 |
no-new-privileges | コンテナ内での権限昇格を禁止 |
cap_drop: ALL | すべてのLinux Capabilityを剥奪 |
memory: 2G | メモリ使用量を制限し、リソース枯渇攻撃を防止 |
Step 2: 環境変数ファイルの作成
認証トークンを.envファイルに設定します。
# 安全なランダムトークンを生成
openssl rand -hex 32 > .env.tmp
echo "OPENCLAW_AUTH_TOKEN=$(cat .env.tmp)" > .env
rm .env.tmp
# パーミッションを制限
chmod 600 .env
Step 3: 起動と動作確認
# コンテナの起動
docker compose up -d
# ログの確認
docker compose logs -f openclaw
# 認証なしでアクセスしてみる(拒否されるはず)
curl http://127.0.0.1:18789/api/health
# → 401 Unauthorized
# 認証トークン付きでアクセス
curl -H "Authorization: Bearer $(grep OPENCLAW_AUTH_TOKEN .env | cut -d= -f2)" \
http://127.0.0.1:18789/api/health
# → {"status": "ok"}
認証なしのリクエストが 401 で拒否されることを必ず確認してください。
ハンズオン 2: ネットワーク制御と外部アクセス
自宅やオフィスの外からOpenClawにアクセスしたい場合、ポートを直接開放するのは危険です。Tailscale(WireGuardベースのVPN) を使って安全に接続します。
Step 1: Tailscaleのセットアップ
# macOSの場合
brew install tailscale
# 起動・ログイン
sudo tailscale up
Step 2: Tailscale経由でのみアクセスを許可
docker-compose.yml のポート設定を変更します。
ports:
# localhostのみ → Tailscale経由でアクセス
- "127.0.0.1:18789:18789"
Tailscaleをインストールした端末同士はプライベートIPで通信できるため、http://100.x.x.x:18789 のようにTailscale IPでアクセスする場合は、以下のように設定を変更します。
ports:
# Tailscale IPインターフェースにバインド
- "100.x.x.x:18789:18789"
100.x.x.x はTailscaleが割り当てたIPに置き換えてください(tailscale ip -4 で確認)。
Step 3: ファイアウォールの確認
# macOSの場合:外部からのポート18789へのアクセスをブロック
# (Tailscale経由のアクセスは許可される)
sudo pfctl -e
echo "block in on en0 proto tcp from any to any port 18789" | sudo pfctl -f -
アクセス経路の比較
ハンズオン 3: ClawHubスキルの安全な運用
ClawHavocの事例が示す通り、ClawHubのスキルは信頼性の検証なしにインストールしてはいけません。
Step 1: VirusTotalスキャンの有効化
v2026.2.17以降、OpenClawにはVirusTotal連携機能が追加されています。
OpenClawのダッシュボード(http://127.0.0.1:18789/)から Settings > Security > VirusTotal Integration を開き、VirusTotal APIキーを設定します。APIキーはVirusTotalの公式サイトで無料アカウントを作成すると取得できます。
有効化後、ClawHubからスキルをインストールする際に以下のチェックが自動実行されます。
| チェック | 内容 |
|---|---|
| SHA-256ハッシュ照合 | スキルのハッシュ値をVirusTotalのDB照合 |
| Code Insight分析 | ハッシュがDBにない場合、コード内容を詳細分析 |
| 日次再スキャン | インストール済みスキルを毎日再チェック |
判定結果に応じた動作:
| 判定 | 動作 |
|---|---|
| 良性(benign) | 自動承認 |
| 疑わしい(suspicious) | 警告表示付きで掲載 |
| 悪意あり(malicious) | ダウンロードがブロック |
Step 2: スキルインストール前の手動チェック
VirusTotalスキャンは万能ではありません。巧妙なプロンプトインジェクションペイロードは検出を回避する可能性があります。重要なスキルは手動でもチェックしましょう。
確認すべきポイント:
1. スキルの作者(author)
- GitHubプロフィールが存在するか
- 他にも信頼できるリポジトリを公開しているか
- アカウント作成日が最近すぎないか
2. スキルのソースコード
- 不審な外部URLへの通信がないか
- base64エンコードされた不審な文字列がないか
- シェルコマンドの実行を行っていないか
3. スキルのダウンロード数とレビュー
- ダウンロード数が極端に少ない新規スキルは要注意
- レビューや評価が存在するか
Step 3: スキルの権限を最小化
スキルがアクセスできるリソースを制限します。OpenClawのダッシュボードから各スキルの権限設定を確認し、不要な権限を無効化します。
| 権限 | デフォルト | 推奨設定 |
|---|---|---|
| シェルコマンド実行 | 有効 | 無効(必要な場合のみ許可) |
| ファイルシステムアクセス | 有効 | プロジェクトディレクトリのみ |
| ネットワークアクセス | 有効 | ホワイトリスト制 |
| 環境変数の読み取り | 有効 | 無効 |
セキュリティチェックリスト
OpenClawを運用する際の最低限のチェックリストです。
## 初期セットアップ時
- [ ] 最新バージョン(v2026.2.23以降)にアップデートした
- [ ] Docker環境で実行している(ホスト直接インストールではない)
- [ ] 認証トークンを設定した
- [ ] ポートをlocalhostにバインドした(0.0.0.0ではない)
- [ ] 非rootユーザーで実行している
- [ ] read_onlyファイルシステムを有効にした
## スキル管理
- [ ] VirusTotalスキャンを有効化した
- [ ] インストール済みスキルの権限を見直した
- [ ] 不要なスキルを削除した
- [ ] スキルのソースコードを確認してからインストールした
## 運用
- [ ] APIキーを定期的にローテーションしている
- [ ] OpenClawのログを定期的に確認している
- [ ] セキュリティアップデートを速やかに適用している
- [ ] .envファイルがGitにコミットされていない
侵害発生時の対応手順
万が一、OpenClawインスタンスが侵害された場合の対応手順です。
重要:侵害されたインスタンスを「修復」しようとせず、クリーン環境で再構築してください。 攻撃者がバックドアを残している可能性があります。
まとめ
OpenClawは強力なAIエージェントですが、その強力さゆえにセキュリティリスクも大きくなります。
| リスク | 対策 | 本記事のハンズオン |
|---|---|---|
| ホストマシンへの侵害 | Docker隔離 | ハンズオン 1 |
| 認証なしアクセス | 認証設定 + Tailscale | ハンズオン 2 |
| 悪意あるスキル | VirusTotal + 手動検証 | ハンズオン 3 |
| 脆弱性の放置 | 定期アップデート | チェックリスト |
次のアクションとしておすすめ:
- まずバージョンを確認する — v2026.2.23未満なら即座にアップデート
- Docker環境に移行する — ホスト直接インストールをやめる
- 認証を有効化する — 1つの設定で大半のリスクを排除
- VirusTotalスキャンを有効にする — スキルの自動検証
- チェックリストを定期的に見直す — セキュリティは一度の設定で終わりではない
OpenClawの便利さを享受しながら、リスクを最小限に抑える——その両立が、これからのAIエージェント時代に求められるスキルです。
参考リンク:
- OpenClaw公式サイト
- OpenClaw GitHub
- Kaspersky — OpenClaw脆弱性レポート
- Docker Blog — Run OpenClaw Securely in Docker Sandboxes
- The Hacker News — OpenClaw VirusTotal統合
- Vectra AI — OpenClawセキュリティ分析
関連記事: