数秒前に実行しました。なんとかしました Ctrl - C 自分がやっていることに気づいた途端に。
これまでのところ、このディレクトリが通過するのは/bin
だけです。
私は他に何かすることを恐れています。これまでのところ、もう通常のユーザーとしてsu
を使用できないことに気付きました。
幸い、私はまだ別のrootターミナルを開いています。私は何をしますか?
/ bin /のほとんどすべてはroot:rootが所有する必要があるため、以下を実行すると、これらのファイルの所有権を修正できます。
chown root:root -R /bin/
また、setuidビットが/ bin/suに正しく設定されていることを確認することもできます。これは、次のように修正できます。
chmod 4755 /bin/su
chown 0:0 /bin/rpm && rpm -qa | xargs rpm --setugids
chown 0:0 /bin/* /usr/bin/*
chown daemon:daemon /usr/bin/at
chown 0:utmp /usr/bin/screen
chmod 02755 /usr/bin/screen
chmod u+s /bin/fusermount /bin/mount /bin/su /bin/mount
chmod u+s /usr/bin/Sudo /usr/bin/passwd
screen
画面の実行中に、これを少なくとも2回実行します。
dpkg --get-selections | awk '{ if ($2 == "install") print $1}' \
| xargs apt-get install --reinstall --
支払いvery出力に細心の注意を払ってください。間違った権限を持つ何かについて不平を言った場合は、別の画面ウィンドウで修正する必要があります。
Control+A - command key
Control+A a - emit a control+A
Control+A n - next "screen"
Control+A c - create "screen"
あなたはめちゃくちゃです。
pkgchk -R / -f -a
すべての権限をリセットしますが、setuid-nessは引き続き壊れます。バックアップまたは別のsolarisマシンを使用して、setuid/setgidスクリプトとファイルを探し、手動で修正します。
あなたがそれらを取ることではなく、あなたがそれらを回復することができるということです。
他の人からバックアップを取るようにアドバイスされましたが、テストする必要があることを付け加えておきます。 unixishシステムを使用している場合、理由はまったくありませんがあり、ファイルを定期的に別のマシンにダンプして、すべてが機能することを確認することはできません。
影響を受けるバイナリのset-uidフラグも削除されている可能性があることに注意してください。これはchownのセキュリティ機能です。どのバイナリにset-uidフラグまたはset-gidフラグが設定されているかを他のシステムに確認し、必ずバイナリにも設定してください。
RPMを使用してファイルのアクセス許可をリセットする方法の詳細を説明するつもりでしたが、 詳細 の多いサイトを見つけました。また、Ubuntu/Debian(一般に.debs)がサポートしていないことについても触れています。
しかし、一般的にあなたが探しているオプションは次のようなものです:
rpm --setugids {packagename}
これがdebianシステムの場合、aptitudeはすべてを再インストールします。
すばらしい対応に感謝し、すべてが修正されたようです。
/ bin/suは一度chmodして4755に動作しました(chownがsuidビットを変更した理由がわかりません)
私は気づきませんでしたが、/ homeディレクトリでも機能し始めましたが、それは十分簡単な修正でした(user:groupを各ディレクトリのユーザーに設定するだけです)。
動作するバックアップはありますか?はいの場合は、binフォルダーを復元します。
それ以外の場合は、動作中のインストールで見つかったものと同じバージョンのubuntuとchown
をインストールした他のボックスを確認してください。
これを試してください:/ binディレクトリですべてのwww-dataを見つけます
# find /bin -user www-data
次にwww-dataを元のユーザーに戻します
# find /bin -user www-data -exec chown ORiginalUser {} \;
# then change www-data back to oringal group
# find /bin -group www-data -exec chgrp originaluser {} \;