2011-07-29 7 views
0

Perlコードの値は次のとおりex.plのchownルートによってファイルとBYEそれを実行グループ

system("cat /etc/shadow"); 

iはルート(chownをルートex.pl)に上記ファイルをCHOWN。 私の質問は、グループ(例:apache)のユーザーが上記のperlファイルを実行し、その後シャドーファイルが彼に送付されるかどうかです。 ありがとうございました。

答えて

0

いいえ、perlコード(CGIスクリプト?)がApacheユーザーの権限で実行されるためです。しかし、もしあなたが(またはあなたのウェブサーバのユーザ、あるいはあなたのコードを実行しているユーザが、デーモンであれば)sudoファイルにあれば、システム( "sudo cat/etc/shadow")を実行できます。それはうまくいくでしょう。

2

あなた自身で試してください。それが動作しない理由を理解するには、次の

[[email protected] ~]$ ls -l /etc/shadow 
-rw------- 1 root root 316 Jul 20 09:36 /etc/shadow 

あなたのスクリプトを実行すると、setuid を使用している場合を除き、(それを所有している人は問題ないことができます」:

/etc/shadowは通常、このようなアクセス許可を持っていますとにかくスクリプトの場合は)。
誰がそれを実行しているのか?したがって、apacheはスクリプトを実行し、それは「その他」とみなされます。許可はありません。

関連する問題