世界を動かす技術を、日本語で。

オマルキー: どのユーザープロセスでもルート権限に昇格可能

2026年8月31日原文(0xcc.io)

概要

  • Omarchy のデフォルトDocker設定に重大な 権限昇格脆弱性 が存在
  • 4.0.1未満のバージョン が影響対象、早急なアップデートが必要
  • デフォルトユーザーが dockerグループ に含まれていたことが原因
  • 任意のプロセス がroot権限を取得できるリスク
  • Podman への移行推奨

OmarchyのDocker設定における重大なセキュリティ問題

  • Omarchy のデフォルト設定で、通常ユーザーが dockerグループ に自動追加
  • dockerグループ は実質的に root権限 を付与する危険な設定
  • sudo やパスワード入力なしで、任意のプロセスがroot権限取得可能
  • /var/run/docker.sock に対するアクセス権が原因
    • dockerグループのユーザーは、このソケット経由でDockerデーモン(root権限)と通信可能
    • コンテナをrootで起動し、ホストの任意ファイルシステムをマウント・操作可能
  • AIツール、Webブラウザ、エディタ、npmスクリプト など、ほぼ全プロセスでroot権限取得が可能になる危険性

証拠と再現手順

  • /etc/shadow など本来rootのみアクセス可能なファイルに、docker経由でアクセス可能
  • 通常のユーザー権限で
    • $ docker run --rm -v /:/hostroot alpine cat /hostroot/etc/shadow
    • root権限でファイル内容が取得される

影響範囲とバージョン

  • Linux の補助グループ継承仕様により、ユーザーセッション全体が影響
  • AIエージェント、開発ツール、バックグラウンドプロセス など、あらゆるプロセスが攻撃対象
  • 4.0.1未満(例: 3.8.4) の全バージョンが影響
  • 2025年6月1日 にdockerグループ追加、 2026年8月24日 に削除

セキュリティデフォルトとドキュメントの問題

  • この設定は opt-out であり、ユーザーがDockerを使わなくても自動適用
  • セキュリティ上のトレードオフについて、ユーザーへの説明や選択肢がなかった
  • ドキュメントでは「 rootではなく通常ユーザーでDocker利用可」と記載
    • 実際はrootlessではなく、 実質root権限 を付与する危険な内容

広範な影響と背景

  • 開発者向けディストリビューションでの セキュリティ意識の重要性
  • 開発者マシンは高い権限を持つため、攻撃者の標的
  • 利便性優先の設定 (セキュリティガードレール無効化、平文での資格情報保存等)が多い現状
  • Omarchy開発者 の素早い対応は評価
  • しかし、過去にもセキュリティ問題があり、現状の意思決定プロセスに信頼性課題

Podmanへの移行推奨

  • Podmandaemonless で、root権限不要
    • 各コンテナはユーザー権限で実行、root権限不要
    • Dockerワークフローを完全に置き換え可能
  • LinuxでDocker利用時、root権限付与を避けたい場合は Podman推奨

参考情報

Hackerたちの意見

ルートレスのPodmanを使ってみたらどう?2026年だよ、今はPodmanの方がDockerよりずっと使いやすいよ。

それが俺もやってるし、著者も推奨してるよ。

記事ではこれを推奨オプションとして明記してるよ。

そのディストロはセキュリティよりも便利さを重視して、技術的な優位性を売りにしてるからね。これは、ディストロの作者が過去にVPSを高値で売ってた時のやり方で、"ssh vps -- curl somebashscript"っていうスクリプトを提供して基本的なWeb開発タスクをやらせてたから。> セキュリティのトレードオフは彼らのために作られ、デフォルトアカウントに適用されて、ユーザーにはそのトレードオフが説明されなかった。VPS時代と同じだね。結局、便利さが全てなんだ。

最近までDockerを使ってたのは、単に慣れてたからなんだ。実際には、apt install podmanだけで動くことが分かった。PodmanがRed Hatのものとして位置づけられてるせいで、ちょっと時代に取り残されてたかも。

あんまり良くはないけど、これをOmarchy特有の問題として捉えるべきかは疑問だね。普通にユーザーをDockerグループに追加するのはよくある設定だから。

普通にユーザーをDockerグループに追加するのはよくある設定だから。公式の設定として?それとも適当なコピペガイドの中で?前者と後者は全然違うよ。sudoのパスワードを無効にするのは珍しくないけど、もしそれがあるOSのデフォルトだったら、かなりのセキュリティの問題になるよね。

自分のシステムでリスクを取るのと、ユーザーに安全でない、常識外れなデフォルトを提供するのは全然違うからね。

これ、LLMがルートアクセスを与えられないときに自己昇格するためによく使う手法の一つみたいだね。かなり一般的な設定ミスっぽい。

Podmanの代わりにDockerを使うのは最初の間違いだね。それはディストリビューションの決定(またはOmarchyの言葉で言うと「シェフ」の決定)だよ…。

Dockerはrootなしで実行できるんだよ。めっちゃ簡単だし、デスクトップディストロがデフォルトでこれをやらない理由がないよね。だから、主要なLinuxディストロはOmarchyと同じくらいひどいんだよ(MacOSやWindowsもおすすめしないけど、あれはもっとひどいから)。

でも、これをOmarchy特有の問題として捉えるべきかはわからない。デフォルトでユーザーをdockerグループに追加するのはOmarchy特有だよ。編集:もっと正確に言うと、Omarchy特有だったけど、良くないアイデアだと気づいて変更したんだよね。

Hacker Newsで議論の続きを見る