パスワードを忘れた? アカウント作成
19623 story

sudoのセキュリティリスクとは? 43

ストーリー by morihide
rootパスワードの共有はやめよう 部門より

Open Tech Pressで「ユーザの実行権限を柔軟に割り当てるsudoのリスクとメリット」という記事が公開されています。sudoの設定方法が記事のメインですが、sudoのセキュリティリスク(主に設定ミスに起因するもの)も紹介されています。

編集子は、たまにデスクトップでLinuxを利用する程度なので「hoge ALL=(ALL)ALL」くらいしか設定したことがありませんが、サーバ管理者の皆さんはsudoの設定をきちんとしていますか?

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

    by Anonymous Coward on 2008年02月14日 16時03分 (#1296990)
    須藤さん「呼びました?」
    • Re:呼びました? (スコア:1, おもしろおかしい)

      by Anonymous Coward on 2008年02月14日 16時11分 (#1296997)
      呼ばれたからってすぐに出て来るな!ちゃんと相手確認しろ!
      親コメント
    • by Anonymous Coward
      >須藤さん「呼びました?」

      首藤「あれ?俺のスペルミスじゃねえの?」

      # ふと思ったんだが、色んなコマンド名を自分好みに変えておけば
      # クラッカー大混乱になるんじゃないかなぁ?
      # まぁ、そのときは自動更新系のツールが使えなくなると思うけど

      # 更に考えると、変更前コマンド名と変更後名のマッピングを
      # 持っておいてアップデート掛けるときはそのマッピングを参照しながら
      # 更新をするようにする。そのマッピングは、暗号化されていて
      # 更新時にパスフレーズを入れて解除して読み取る・・・・・
      # って、手間掛けてもstring 掛けられたりファイルサイズでばれるか・・・
      # もしやっても一部のコマンド群で、それも気休め程度の効果かな・・・
      • by Ryo.F (3896) on 2008年02月14日 16時31分 (#1297007) 日記

        # って、手間掛けてもstring 掛けられたりファイルサイズでばれるか・・・
        そこでrootkitですよ。
        つーか、lsとかfindとかを改名しておけば、ファイルサイズすらばれない気もしますが、確実に自分の方も混乱します。
        親コメント
        • by Anonymous Coward
          >確実に自分の方も混乱します。

          sl [u-tokyo.ac.jp]で混乱させられた人が呼ばれました
          • by Anonymous Coward
            slとlsをひっくり返しておくと意外と快適だったりして
            • むしろ
              [hoge]$ l
              -bash: l: command not found
              [hoge]$ s

              とか lsが分離してしまう事がよくあるのでこれをaliasに・・・

              #なんかsudo関係なくなってきた
              親コメント
              • by Anonymous Coward
                誰かリターン打つとlsを発動するシェルをつくってくれ
              • by Anonymous Coward
                zshで
                function precmd() { ls }

              • by Anonymous Coward
                tcsh では
                    alias precmd 'ls'
                もしくは
                    alias postcmd 'ls'

                bash では
                    PROMPT_COMMAND='ls'

                まぁ,どんなコマンドを入力をしても ls を実行してしまうのが欠点ですが…

              • by Anonymous Coward
                っ alias リターン ls
              • by Ragen (11294) on 2008年02月14日 19時39分 (#1297145) 日記
                > まぁ,どんなコマンドを入力をしても ls を実行してしまうのが欠点ですが…

                でしたら、こんなのはいかが?

                #!/bin/sh
                cd $1 && ls --color .
                親コメント
              • by Anonymous Coward
                tcsh ですが,

                alias postcmd '[ "\!#" = "" ] && ls'
              • by synack (31022) on 2008年02月15日 8時23分 (#1297394)

                #!/bin/sh
                cd $1 && ls --color .
                実はこの子プロセスが終了したら親シェルではcdできてねえよ!っていうネタですか?
                親コメント
            • by Anonymous Coward
              快適さを求めるなら alias sl=ls でいいでしょう?

              sl は「タイプミス 強制 プログラム」なのですよ.

              # あ… 共生 だっけ?
              • by nabetaro (3713) on 2008年02月14日 17時57分 (#1297055)
                タイプミスを矯正するのだと思ってましたが、
                きっとslの魔力に魅入られて、slとしか入力できなくなってしまうのですね。

                ……きっと、空気読めてない
                --
                鍋太郎
                親コメント
              • by Anonymous Coward
                そういえば昔 vz の中で dri を dir (だったかな?) に再定義してるところがあったような。

                # はっ、sudo の話のつもりが雑談になって時間を消費させられるのが sudo のセキュリティ問題???
              • by Anonymous Coward
                矯正と思われ
                ---
                無粋なのでAC
          • by Anonymous Coward
            sl [u-tokyo.ac.jp]を作ってた人に指導されていた人が呼ばれました。

            #呼ばれてないのでAC。
            #豊田さんも准教授になったのか…。
            • by Anonymous Coward
              今でも 「su したいんだけど、、、」とか言う○○がいるので、

              su と打つと「sudo 使え」と言いながら須藤さん(どこの?)が走り回る、強制コマンドを作って欲しい。

              やっぱ、そういうのは先生になっちゃうと無理でしょうかね。

              # sudo su とか、打っちゃう人なので AC
              • sudo が使えるのなら.
                chmod 04700 /bin/su とかしてみるとか...

                # 結果は,自己責任で.
                親コメント
              • sshでrootへの直接ログインを禁止していても、自分のパスワードが漏れたら即root権限も奪われることに恐怖してsudoを止めた私の立場って一体。
                て、それを気にするなら、とっととvmspliceのセキュリティーホール潰しとかなきゃ……
                Ubuntuの、rootへのsu廃止、代わりにsudoという方針に「正気か?」と思っている私は多分何かを勘違いしている。

                # su -c sudo とは打たないのでyoh2
                --
                巧妙に潜伏したバグは心霊現象と区別が付かない。
                親コメント
              • by Anonymous Coward
                >Ubuntuの、rootへのsu廃止、代わりにsudoという方針に「正気か?」と思っている私は多分何かを勘違いしている。

                まあ、基本はsudo su させないことではないかと思います。
                そうすれば必要な権限だけrootを利用するということになりますから。

                # sudoerを真面目に設定しないとsu廃止,sudoにしても同じことでしょう。
              • by Stealth (5277) on 2008年02月15日 19時25分 (#1297736)

                su だけじゃなく、visudo や sudoedit へのアクセスも止めないと意味がないかと。

                # 件の記事、今年 2/7 の記事なのに sudoedit への言及がないのね。

                親コメント
          • by Anonymous Coward
            #1297018 [srad.jp]の人も混乱しているようですね。
      • by Anonymous Coward
        そんな環境、引き継ぎたくない。
    • by Anonymous Coward
      >須藤さん「呼びました?」
      そういうネタは、ここにリンクする [sudo-jam.co.jp]くらいやっておきたい。
    • by Anonymous Coward
      ローカルもlinuxだと、つい
      「あれ~無線おかしいな」
      とか呟きながら
      % sudo ifconfig hoge down
      とか打ってしまうダメ管理者なので、走って手が届かないサーバ達はまじめに設定しています...
      (ほかにもiptables とか危険)

      まぁ、僕が管理しているのはあくまで職場内のなんちゃってサーバなので、その程度で済んでいるんですが、プロの鯖管さんたちはどういうふうにそういうミスを防ぐようにしているのかお聞かせいただければと(sudoに限らず)。
    • by Anonymous Coward
      おれは「suto」だ! って怒られた事が一回ある。
  • by Anonymous Coward on 2008年02月14日 17時12分 (#1297018)
    パートさんにユーザ登録とかさせてますので、その辺の root 権限が必要なスクリプトを動かさせてます。

    また、営業がエンドユーザから「サーバがおかしいぞ」とか文句を言われるので tail や cat/zcat などを使えるようにしてます。

    ということで、職種によってできることを Cmnd_Alias HOGEHOGE=/bin/sl などのように書いてますよん。
    まぁ、別の端末の前に座ることもあるので端末を限定するところまではやっていません。
    • by Anonymous Coward on 2008年02月14日 18時18分 (#1297074)
      # 少しだけストーリーの表題に合わせたコメントをしてみよう.

      うちの環境では,zcat は以下のようなシェルスクリプトになっています.

      #!/bin/bash
      PATH=${GZIP_BINDIR-'/usr/bin'}:$PATH
      exec gzip -cd "$@"
      環境変数 GZIP_BINDIR を上書きすると,任意のコマンドを Runas ユーザの権限で
      実行させることができそうです./etc/sudoers で明示的に env_reset オプション
      を設定しておくといいのかな.

      Defaults    env_reset
      私自身は「sudoers にはできるだけ手を加えない」主義ですが…
      作業中は端末の前を離れることが少ないので,タイムアウトをデフォルトより
      長めにしています.

      Defaults        timestamp_timeout = 20
      親コメント
    • by Ryo.F (3896) on 2008年02月14日 19時16分 (#1297120) 日記

      tail や cat/zcat などを使えるようにしてます。
      root権限で?そりゃいろいろ見えちゃいけないものが見えてマズいんじゃない?/etc/shadowとか、~USER/.ssh/id_dsaとか、/var/mail/*とか。
      削除・改変されなきゃいいって整理なのかな?
      親コメント
      • by Anonymous Coward
        改段落されているので、さすがに root 権限ではないと思うのですが、
        sl を /bin にインストールしておられる勇敢な御仁ですからね…

        特定の人にログの閲覧を許可するだけなら、適当な group を作成して
        chmod 640 しておくので十分な気がする。
  • 最近は自宅で ubuntu しか使っていないので、すっかり慣れました。

    sudo は権限の付与だけでなく、実行したコマンドが syslog に残るので
    重宝する場合があるかもです。(su コマンド比のメリット)

  • rootのパスワード忘れちゃいますよ
  • by Anonymous Coward on 2008年02月14日 17時57分 (#1297054)
    サーバマシンにログインしたときは>sudoじゃなくて>su使うし、デスクトップマシンはセットアップが終わったら常にローカルユーザーで事足りるので、インストール自体してません。サーバマシンはデーモンの設定変えるときくらいしかログインしないし。
    # のでローカルユーザーのシェル履歴には>suと>exitくらいしか残ってない
  • by Anonymous Coward on 2008年02月14日 20時39分 (#1297188)
    ログインアカウントが、いつの間にか第二のスーパーユーザになっていること。

    # サーバプロセスの実行ユーザにnobodyを割り当てすぎる危険性について
  • by Anonymous Coward on 2008年02月14日 21時13分 (#1297206)
    rootになれるんですよね。 許可する必要がでてくるケースは思い浮かびませんけども。 hoge: (タブ)sudo -s などと書いた Makefile で make hoge
  • by Anonymous Coward on 2008年02月15日 1時23分 (#1297334)
    sudo su -

    は基本として

    sudo script hoge.log

    とか

    sudo vi hoge.log
    sudo less hoge.log

    等のエディタからsh実行とか
    ついつい試してしまいます。
typodupeerror

長期的な見通しやビジョンはあえて持たないようにしてる -- Linus Torvalds

読み込み中...