OS X 10.11 El Capitanには新しいセキュリティ機能「rootless」が追加され、rootユーザーでも”/usr”ディレクトリなどにアクセス制限がかけられているもよう。

スポンサーリンク

 OS X 10.11 El Capitanには新しいセキュリティ機能「rootless」が追加されており、カーネルレベルでrootユーザーにもアクセス制限がかけられている様です。詳細は以下から。


El-Capitan-Rootless-Hero


rootlessとは?

 先月末 9to5Macが「OS X 10.11 El CapitanとiOS 9には新しいセキュリティ機能”rootless”がカーネルレベルで搭載され、管理者レベル(root)でもアクセス制限がかかりマルウェアからの脅威を防いでくれます」という趣旨のリーク情報を報じました、

Rootless
Sources within Apple are particularly enthusiastic about a new security system called Rootless, which is being described internally as a “huge,” kernel-level feature for both OS X and iOS. To prevent malware, increase the safety of extensions, and preserve the security of sensitive data, Rootless will prevent even administrative-level users from being able to access certain protected files on Apple devices. Sources say that Rootless will be a heavy blow to the jailbreak community on iOS, though it can supposedly be disabled on OS X. Even with this Rootless feature coming to OS X, sources say that the standard Finder-based file system is not going away this year.

[iOS 9 & OS X 10.11 to bring ‘quality’ focus, smaller apps, Rootless security, legacy iPhone/iPad support – 9to5Mac]

 この”rootless”は実際に存在した様で、MacBookのEFI脆弱性を発見したセキュリティ研究者のPedro Vilaca(@osxreverser)さんによるとEl Capitanには新しい”rootless.plist”が追加されており、


複数の開発者がrootユーザーになっても

  • /usr
  • /sbin
  • /System

などに新しいディレクトリやファイルを作ろうとすると”Operation not permitted”と拒否されてしまうと報告しています。


新常識:(El Capitanでは)rootユーザーであっても自分のFinderのデバッガーが出来ない


対処法

 rootlessは一般的なユーザーやマルウェア対策には有効かもしれませんが、/usrディレクトリ以下を使用する開発者などは迷惑しているようで、AppleがOS X 10.10 YosemiteでTrimやGPUドライバなどのkext変更にも制限を掛けた時[1, 2]と同様にnvramコマンドを使用しこの制限を解除する方法が発見されています。


確認してみた

 rootlessの制限を解除するには以下の1行を打ち込んでroot(管理者)パスワードを入力、その後Macの再起動を行うだけで、


El-Capitan-rootless-flag-0

sudo nvram boot-args=“rootless=0”

 rootユーザーのアクセス制限が解除されます。ただ、Trimの時と同様にOS Xのアップデートでこの制限が元に戻ってしまい不具合が生じる場合があるので注意して下さい。


el-capitan-rootless-before-after

関連リンク:

コメント

  1. Apple7743 より:

    rootじゃないじゃん

  2. Apple7743 より:

    そしてrootlessを回避して書き込めるバグが見つかるんですね、分かります。
    で、そうやって潜り込んだ悪意のあるソフトを消そうにも、rootlessが邪魔して削除出来なくなる、と。
    iOSならともかく、OSXもここまでガチガチにするのは流石にどうなんだろう…

  3. Apple7743 より:

    「病気をうつされるから、お母さんの知らない子と遊んだり、そんな子を家に呼んだりするの禁止!!」っていうのはダメだろ。

  4. Apple7743 より:

    SELinuxみたいな感じかな

  5. Apple7743 より:

    > sudo nvram boot-args=“rootless=0
    の方法はAppleは古いやり方としているので,廃止される可能性があります。
    Cmd+RでリカバリーOSを再起動し,ユーティリティーから
    セキュリティー構成で設定を変更するのが公式に案内されてる方法のようです。

  6. Apple7743 より:

    >>2
    普通に予想できたこと。

  7. Apple7743 より:

    > 一般的なユーザーやマルウェア対策には有効かもしれませんが、/usrディレクトリ以下を使用する開発者
    割合にして99:1くらいじゃないの
    ならこの設定がデフォルトになるべきだし、アップルは99%正しいことになる

  8. Apple7743 より:

    そこまでしてユーザーの権限を制限しなきゃならんということは、Apple製品利用者の大半は頭が極めて残念という事だな。
    root権限の抑制はそれくらい強烈な事だと思うよ。

  9. Apple7743 より:

    POSIX準拠のACLを実装しろや。独自機能でアクセス遮断かよ。
    >7
    >ならこの設定がデフォルトになるべきだし、アップルは99%正しいことになる
    共有ライブラリなどを一般ユーザー権限のディレクトリ以下に置く例が増えそうですが?
    セキュリティ感覚ゼロですなぁ。

  10. Apple7743 より:

    sudoがどれだけ危ないかわからずにパスワード打つ奴が悪い

  11. Apple7743 より:

    いやいや、WindowsでもMacでもコンピュータを使う一般人のほとんどはディレクトリ以下の部分をいじることなんてないだろうしそもそもディレクトリってなに?ぐらいのもんだと思うが…
    と言いつつ自分としては非常に面倒なことになった…まあMac向けマルウェアも増えてきたししょうがないのかな…

  12. Apple7743 より:

    ClamXavのダウンロード版は /usr/local にフォルダを置くから、この変更は困ったことになるな
    App Store版のClamXavを使っているなら問題ないが

  13. Apple7743 より:

    一般的なユーザーな俺としては全く問題なし
    iOSみたいにガチガチにしてマルウェアを徹底的に排除すればいい

  14. Apple7743 より:

    ※12
    /usr/localは,書き込み制限されませんよ?

  15. Apple7743 より:

    分かってないようだけど、iosはhostsファイルも弄らせないから、webとJavaScriptからこんにちわし放題なんだよ。
    俺は一般ユーザーだから関係無い、みたいな奴が、悪い奴の踏み台になる。
    1メーカーだけで全ての問題を解決する事なんかできないのだから、餅は餅屋に任せればいいのに、アポーはそれが
    できない。

  16. Apple7743 より:

    >>13 一般ユーザーが考えたサイキョーのセキュリティとは…