パスワードを忘れた? アカウント作成
12679456 story
ソフトウェア

「rm -rf /」を実行したらOSどころかマザーボードのファームウェアまで破壊されてしまう問題が発覚 32

ストーリー by hylom
正しい挙動か否か 部門より
あるAnonymous Coward 曰く、

最近ではUEFIを搭載したマザーボードが増えてきているが、とあるLinuxユーザーが「rm -rf --no-preserve-root /」コマンドを実行してルートディレクトリを全消去しようとしたところ、OSどころかUEFIまでもが動作しなくなってしまったという(本の虫)。

systemdのイシュートラッカーにてコメントが投稿されているが、これによるとこの問題はUEFI内に格納されている変数にアクセスするためのefivarfsがデフォルトでは読み書き可能な状態でマウントされているためだという。そのため、ルートディレクトリ以下を削除するとUEFI変数までもが削除されてしまい、UEFIが正しく動作しなくなる可能性があるようだ。

ただ、Hacker Newsに投稿されたコメントによると、efivafsが読み書き可能な状態でマウントされるのはEFIにアクセスするほかのツールが書き込みアクセス許可を必要とするからであり、正常な動作であるという。真の問題は、簡単にUEFI内のデータをアプリケーション側から削除できてしまうと言うUEFI実装側にあるという。

以前ファームウェアの機能でOS上の特定ファイルを削除しても自動的にそれが復活するという話があったが、EFIにはあまり知られてない穴が色々ありそうだ。

この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
  • どこを直すか (スコア:4, おもしろおかしい)

    by Anonymous Coward on 2016年02月05日 16時05分 (#2960160)

    rm -rf --no-preserve-root --no-preserve-efivarfs-yes-i-know-this-can-corrupt-my-device /
    ぐらいのオプションが必要やね(ニッコリ

    • Re:どこを直すか (スコア:4, おもしろおかしい)

      by Anonymous Coward on 2016年02月05日 16時51分 (#2960207)

      rm -rf --no-preserve-root --yes-i-am-insane /

      くらいでいいと思う。

      親コメント
      • by Anonymous Coward

        env INSANE=yes rm -rf --no-preserve-root
        ってできたらいいな〜

        で、そのうち echo "export INSANE=yes" >> .profile

    • rmはあらゆるものを削除できるべきコマンドなので、物理ラップトップを削除できるのは正常な動作です。
      修正の必要はありません。

      /*
      --force-remove-this-world :
              Need to "--force(-f)" option.
              For the "god user".
              Please don't use.
      */

      親コメント
    • by Anonymous Coward

      -barusu!! とか
      This is Captain Jean-Luc Picard. Destruct sequence Alpha-One. とかじゃないの?

  • なんのためのROM……

  • harmwareだった、と。

  • by Anonymous Coward on 2016年02月05日 16時11分 (#2960164)

    root権限で操作している以上、デバイス的に削除可能なファイルが削除できるのはおかしくないような。

    万能権限が存在するのが悪い、もっと緻密な権限分掌が必要だっていう人はSELinux使ってくださいっていう話になるしかない気がする。

    もちろん一般人が使うOSなら対策は必要だろうけど、Linuxは(以下検閲により削除

    • by Anonymous Coward on 2016年02月05日 16時13分 (#2960166)

      systemdを使っていないディストリビューションでは問題ないようなのでsystemdを削除するのが一番良いかと。

      親コメント
      • by Anonymous Coward

        そこはsystemdを使っていないディストリビューションに変更すればと言うのかと思ったら。

        systemdを使っているディストリビューションでsystemdを消すのはそれも自殺行為に等しいのでは。

      • by Anonymous Coward

        さすがはsystemd!
        自壊機能さえも取り込んでいく!

        # そこにしびれるあこがれ。。。ねぇーよっ!

    • by Anonymous Coward

      一般人が使うOSではあるが、rootは一般人が使う権限ではないな。

      # ところで、一般人が使うディストリビューション筆頭のAndroidはSELinuxが標準で有効になりましたね。

    • by Anonymous Coward

      貴方が止めているだけで、みなSELinux使っているよ。

    • by Anonymous Coward

      rootで削除できるはおかしくないが、復活出来るようにしとけよ。

  • by Anonymous Coward on 2016年02月05日 18時04分 (#2960241)

    > 真の問題は、簡単にUEFI内のデータをアプリケーション側から削除できてしまうと言うUEFI実装側にあるという。

    EFIの変数をわざわざ“ファイルシステム”として保護機能なしでアクセスできる実装にしたのはLinuxなので
    この言い訳は無理筋であると思います。

    • by Anonymous Coward on 2016年02月05日 18時21分 (#2960252)

      ちゃんとしたUEFI実装だと、こういうことしても復活可能だそうで、
      復活不可な状況におちいるUEFI実装がダメなんじゃないかって
      話もあるようです。

      親コメント
      • by h-harry (24932) on 2016年02月05日 22時02分 (#2960327) 日記

        バックアップバッテリーが切れた状態で電源コードを抜いてから再起動すると
        C-MOSエラー(チェックサムかCRCエラー)が出てデフォルトをロードするかを
        聞いてきていたので設定自体は、なんらかの改竄チェックが入っていると思っていたけど。

        今回の件は、そんなチェックすらしていなかったのかな?

        親コメント
      • by Anonymous Coward

        それはBIOS設定画面のLoad Defaultみたいな機能ですが、それが呼び出せなくなる
        実装は問題ですがそんな事が必要な状況に簡単になってしまうのも問題でしょう。

        # 実はCMOSクリア(もしくは相当機能)でなんとかなりそうな気がするんですよねぇ・・・

    • by Anonymous Coward

      色々仕込み放題だね!
      つかダメだろこれ。

  • by Anonymous Coward on 2016年02月05日 20時55分 (#2960305)

    また一つ、あらたなrm -rf / 伝説が…

  • by Anonymous Coward on 2016年02月05日 15時46分 (#2960140)

    そのうちCPU内部のマイクロコードまで削除できるようになったりして

    • by Anonymous Coward

      マイクロコードは起動後に書き込めるから問題ないんだよなあ

      • by Anonymous Coward

        CPU内部のマイクロコードが消えてしまったら、そもそも起動しようがなくなるから、
        マイクロコードを書き込むこともできないわけで。。。

        • by Anonymous Coward

          あれって通電から初期化完了までの間には書き込めないの?

        • by Anonymous Coward

          non-volatileじゃないから問題あるめえ

    • by Anonymous Coward

      そのうちCPUそのものが消えたりして。

  • by Anonymous Coward on 2016年02月05日 16時01分 (#2960156)

    ASUSのUSBファームウェアアップデートなら可能かもしれんけど
    立ち上げないとファーム更新かけられない板はアウトってことなのかな

    • by Anonymous Coward

      MSIがUEFIを仕様通りに正しく実装していないのが原因なので普通のPCなら何ら問題ありません。

  • by Anonymous Coward on 2016年02月05日 18時31分 (#2960259)

    マザーボードのファームウェアまで破壊なのか?

  • by Anonymous Coward on 2016年02月07日 0時25分 (#2960772)

    Windows Server系でmsconfig.exeを使ってHALを検出するモードにしておくとWindows Update実行中にハングアップして強制リセットが掛かり、ファイルシステムが行方不明で起動できないという状態に陥る事があります。
    電源を入れなおすと直るのでUEFI上のどこかを書き換えてしまってるんだと思います。

typodupeerror

UNIXはただ死んだだけでなく、本当にひどい臭いを放ち始めている -- あるソフトウェアエンジニア

読み込み中...